Skip to content

Configuration Parameters

This table lists all configurable parameters of Katalogue, and where they can be set. Secrets can be set both as environment variables (unsafe!) and as Docker Secrets (recommended!).

ParameterCategorySubcategoryConfig FileEnvironment VariableDB TableDefault ValueDatatypeDescription
API_ENDPOINT_BASE_URLxxstringHostname of the Katalogue Backend API. Used to set the “issuer” property of the authentication tokens issued by Katalogue.
API_ENDPOINT_PATHxx/apistringPath, relative to API_ENDPOINT_BASE_URL, where the api endpoints are hosted.
COOKIE_NAME_PREFIXxxkataloguestringName prefix of all cookies issued by Katalogue.
CORS_ORIGINxxarray/stringCORS Origin whitelist. An array with URLs (or single string) that are allowed to connect to the Katalogue backend API. Normally, this should only contain the URL to the Katalogue frontend app.
ENCRYPTION_KEYxx (Docker Secrets)stringEncryption key used by Katalogue to hash user passwords (local users only) and encrypt config secrets like repository password and connection passwords. This should be a long, random string. Keep it safe, it is not possible to decrypt secrets or authenticate local users if it is lost.
PORTxx8080stringPort that the Nodejs Express API (i.e. the Katalogue backend application) listens on.
TRUST_PROXYxxFALSEbooleanFlag to tell if Katalogue should trust requests from a reverse proxy server or not. Set this to TRUE if Katalogue is hosted behind a reverse proxy server.
DATA_FILES_DIRECTORYxx<install_directory>/datastringFull path to folder on the server where datasource files from e.g. manually uploaded dbt manifests will be stored.
ACCESS_TOKEN_EXPIRATION_TIMEauthenticationx60mstringTime that an access token is valid
LOCAL_IS_ENABLEDauthenticationxxxTRUEbooleanFlag to tell if Local authentication is enabled
OIDC_IS_ENABLEDauthenticationxxxFALSEbooleanFlag to tell if Azure OpenID Connect authentication is enabled
REFRESH_TOKEN_EXPIRATION_TIMEauthenticationx30dstringTime that a refresh token is valid
OIDC_APPLICATION_IDauthenticationoidcxxxNULLstringMicrosoft Azure Application (client) ID, i.e. ID of the Enterprise Application registered in Microsoft Entra ID
OIDC_AUTHORIZE_ENDPOINTauthenticationoidcxx/oauth2/v2.0/authorizestringEndpoint for OAuth2 authorization requests
OIDC_CLIENT_SECRETauthenticationoidcxx (Docker Secrets)xNULLstringMicrosoft Azure Client Secret
OIDC_DIRECTORY_IDauthenticationoidcxxxNULLstringMicrosoft Azure Directory (tenant) ID
OIDC_ENDPOINT_BASE_URLauthenticationoidcxxhttps://login.microsoftonline.comstringBase URL of the OAuth2 endpoint
OIDC_JWKS_ENDPOINTauthenticationoidcxx/discovery/v2.0/keysstringEndpoint to retrieve public keys
OIDC_LOGOUT_ENDPOINTauthenticationoidcxx/oauth2/v2.0/logoutstringEndpoint for OAuth2 logout requests
OIDC_REDIRECT_URIauthenticationoidcxxxNULLstringURI that Microsoft Azure should redirect to after completed authentication
OIDC_SCOPEauthenticationoidcxxxprofile user.read offline_access openidstringScope that the configured enterprise application need access to
OIDC_TOKEN_ENDPOINTauthenticationoidcxx/oauth2/v2.0/tokenstringEndpoint for OAuth2 token requests
OIDC_USER_SOURCE_IDauthenticationoidcxxoidstringName of the user unique Id property in the OpenID Connect Id token
OIDC_USER_USERNAMEauthenticationoidcxxupnstringName of the user Username property in the OpenID Connect Id token
DATABRICKS_BASE_ENDPOINTconnectorsdatabricksxx/api/2.1/unity-catalogstringUnity Catalog API Base URL, excluding hostname
DATABRICKS_CATALOG_ENDPOINTconnectorsdatabricksxx/catalogstringUnity Catalog API catalog endpoint, relative to the base URL
DATABRICKS_SCHEMA_ENDPOINTconnectorsdatabricksxx/schemastringUnity Catalog API schema endpoint, relative to the base URL
DATABRICKS_TABLE_ENDPOINTconnectorsdatabricksxx/tablestringUnity Catalog API table endpoint, relative to the base URL
DATABRICKS_IS_ENABLEDconnectorsdatabricksxxTRUEbooleanFlag to enable or disable this connector. If a connector is disabled, it cannot be used in the GUI and all connector-specific nodejs dependencies/librariers are excluded on startup. This means that the the dependency does not have to be installed if the conncetor is disabled.
DBT_DEFAULT_MANIFEST_FILENAMEconnectorsdbtxxmanifest.jsonstringFilename for the Dbt manifest json file that is used as the datasource for the Dbt connector. This property will only be used if no filename is specified in the connection URL
DBT_IS_ENABLEDconnectorsdbtxxTRUEbooleanFlag to enable or disable this connector. If a connector is disabled, it cannot be used in the GUI and all connector-specific nodejs dependencies/librariers are excluded on startup. This means that the the dependency does not have to be installed if the conncetor is disabled.
IBMDB2_CODEPAGEconnectorsibmdb2xxNULLintegerIBM DB2 database codepage, i.e. database encoding. Specify this if data imported from IBM DB2 databases display incorrectly. Note that this setting affects all IBM DB2 connectors in Katalogue, specifying a codepage per datasource is currently not supported.
IBMDB2_IS_ENABLEDconnectorsibmdb2xxTRUEbooleanFlag to enable or disable this connector. If a connector is disabled, it cannot be used in the GUI and all connector-specific nodejs dependencies/librariers are excluded on startup. This means that the the dependency does not have to be installed if the conncetor is disabled.
MSSQL_IS_ENABLEDconnectorsmssqlxxTRUEbooleanFlag to enable or disable this connector. If a connector is disabled, it cannot be used in the GUI and all connector-specific nodejs dependencies/librariers are excluded on startup. This means that the the dependency does not have to be installed if the conncetor is disabled.
ODBC_IS_ENABLEDconnectorsodbcxxTRUEbooleanFlag to enable or disable this connector. If a connector is disabled, it cannot be used in the GUI and all connector-specific nodejs dependencies/librariers are excluded on startup. This means that the the dependency does not have to be installed if the conncetor is disabled.
ORACLE_IS_ENABLEDconnectorsoraclexxTRUEbooleanFlag to enable or disable this connector. If a connector is disabled, it cannot be used in the GUI and all connector-specific nodejs dependencies/librariers are excluded on startup. This means that the the dependency does not have to be installed if the conncetor is disabled.
ORACLE_INSTANT_CLIENT_PATHconnectorsoraclexxstringOracle Instant Client path, if not the default path. See the “oracledb” nodejs package docs for more info.
POSTGRES_ENABLEDconnectorspostgresxxTRUEbooleanFlag to enable or disable this connector. If a connector is disabled, it cannot be used in the GUI and all connector-specific nodejs dependencies/librariers are excluded on startup. This means that the the dependency does not have to be installed if the conncetor is disabled.
SNOWFLAKE_IS_ENABLEDconnectorssnowflakexxTRUEbooleanFlag to enable or disable this connector. If a connector is disabled, it cannot be used in the GUI and all connector-specific nodejs dependencies/librariers are excluded on startup. This means that the the dependency does not have to be installed if the conncetor is disabled.
COOKIE_HTTP_ONLYcookieHeadersxxTRUEbooleanValue of the cookie HTTPOnly attribute. Set to true in production.
COOKIE_PATHcookieHeadersxx/apistringValue of the cookie Path attribute. Set to the base api endpoint path of the Katalogue backend API.
COOKIE_SAME_SITEcookieHeadersxxTRUEboolean/stringValue of the cookie SameSite attribute. Set to “None” in production.
COOKIE_SECUREcookieHeadersxxFALSEbooleanValue of the cookie Secure attribute. Set to false in production.
HTTP_LOGGING_IS_ENABLEDloggingxxxFALSEbooleanFlag to tell if all HTTP requests and their execution time to the backend API should be logged or not. WARNING! Enabling this will reduce performance and quickly fill the http_request log table.
LOG_LEVELloggingxxxinfostringDetermines the granularity of logging for the backend API service. Available levels are “critical”, “error”, “warning”, “info” and “debug”. The latter two can be set through the GUI, the others must be set in the repository database.
AUDIT_FILENAMEloggingxxlogs/audit.jsonstringAudit filename path. See the “winston” nodejs package docs for more info.
LOG_DIRNAMEloggingxxlogsstringLog file directory path. See the “winston” nodejs package docs for more info.
LOG_FILENAMEloggingxxapplication_%DATE%.logstringFilename pattern for log files. See the “winston” nodejs package docs for more info.
LOG_FILENAME_DATEPATTERNloggingxxYYYY-MM-DDstringDate format for the date part of the logfile name
LOG_MAXFILESloggingxx14dstringDetermines how many days old logfiles should be retained before getting deleted by the log rotation functionality.
LOG_TO_CONSOLE_IN_PRODloggingxxTRUEbooleanFlag to tell if logging should be done to console or not. Note that logging to file is always enabled and not affected by this setting. Set this to true when using managed servers, Docker etc with external monitoring tools to let them pick up the logs.
LOG_USE_UTCloggingxxFALSEbooleanFlag to tell if the log file dates should be in UTC format or the server´s timezone.
MAIL_FROMmailxxxNULLstringEmail address that all emails will be sent from. If Email Server Type is Azure, this must be the email address of a real user account with a license that provides the account with a mailbox
MAIL_FRONTEND_URLmailxxNULLstringFull URL to the Katalogue frontend, used to create relevant links in all emails. Example: https://katalogue.your-company.com
MAIL_HOSTmailxxxNULLstringHostname of the SMTP mail server
MAIL_IS_ENABLEDmailxxxFALSEbooleanFlag to tell if the application should send emails or not
MAIL_IS_SECUREmailxxxFALSEbooleanFlag to tell if a secure connection should be used to the SMTP mail server or not. If true the connection will use TLS when connecting to server. If false (the default) then TLS is used if server supports the STARTTLS extension.
MAIL_PASSWORDmailxx (Docker Secrets)xNULLstringPassword to authenticate against the SMTP mail server
MAIL_PORTmailxxxNULLstringPort of the SMTP mail server
MAIL_SEND_WELCOME_EMAILSmailxxTRUEbooleanSend a welcome email with login instructions to new users when they are added to Katalogue for the first time
MAIL_SERVER_TYPEmailxxxmsgraphstringUse Azure Microsoft Graph API or custom SMTP configuration for sending emails. Allowed values are “smtp” or “msgraph”.
MAIL_SUPPORT_EMAILmailxxNULLstringEmail address to the Katalogue support team, used in the footer in all emails
MAIL_SUPPORT_NAMEmailxxNULLstringName of the Katalogue support team, used in the footer in all emails
MAIL_SYSTEM_EMAILS_TOmailxxNULLstringList of email addresses, separated by a comma, that will receive system emails such as task failure notifications. These emails are typically sent to Katalogue administrators or other IT admins.
MAIL_USERNAMEmailxxxNULLstringUsername to authenticate against the SMTP mail server
AZURE_KEY_VAULT_IS_ENABLEDpasswordManagersazureKeyVaultxxFALSEbooleanFlag to tell if Microsoft Azure Key Vault is enabled
AZURE_KEY_VAULT_NAMEpasswordManagersazureKeyVaultxxNULLstringMicrosoft Azure Key vault name. Can be extracted from the Vault URI like so: “https://<KEY-VAULT-NAME>.vault.azure.net”
REPOSITORY_BATCH_INSERT_CHUNK_SIZErepositoryxx1000integerNumber of rows that is inserted in each batch when doing batch inserts. Batch inserts are performed by some endpoints. Change this only if there are performance issues related to batch inserts.
REPOSITORY_BATCH_UPDATE_CHUNK_SIZErepositoryxx10000integerNumber of rows that is updated in each batch when doing batch updates. Batch updates are performed by some endpoints. Change this only if there are performance issues related to batch inserts.
REPOSITORY_DATABASErepositoryxxkataloguestringDatabase of the Katalogue PostgreSQL repository database
REPOSITORY_HOSTNAMErepositoryxxlocalhoststringHostname of the Katalogue PostgreSQL repository database
REPOSITORY_PASSWORDrepositoryxx (Docker Secrets)stringPassword of the Katalogue repository database service account.
REPOSITORY_PORTrepositoryxx5432stringPort of the Katalogue PostgreSQL repository database
REPOSITORY_USE_SSLrepositoryxxFALSEbooleanFlag to enable SSL for the Katalogue PostgreSQL repository database connection.
REPOSITORY_USERNAMErepositoryxxkatalogue_superuserstringUsername of the Katalogue repository database service account.
REPOSITORY_POOL_MAXrepositoryrepositoryPoolxx300integerMaximum number of connections in the connection pool for the Katalogue PostgreSQL repository database connection.
REPOSITORY_POOL_MINrepositoryrepositoryPoolxx2integerMinimum number of connections in the connection pool for the Katalogue PostgreSQL repository database connection.
SYNC_NESTED_USER_GROUPSuserProvisioningxxTRUEbooleanFlag to tell if the Microsoft Entra ID user group sync includes users in nested user groups or only direct members
GROUP_DESCRIPTIONuserProvisioninggroupAttributeMappingxxdescriptionstringName of the user group Description property in the user provisioning system
GROUP_EMAILuserProvisioninggroupAttributeMappingxxmailstringName of the user group Email name property in the user provisioning system
GROUP_NAMEuserProvisioninggroupAttributeMappingxxdisplayNamestringName of the user group Name property in the user provisioning system
GROUP_SOURCE_IDuserProvisioninggroupAttributeMappingxxidstringName of the user group unique Id property in the user provisioning system
MSGRAPH_ENDPOINT_BASE_URLuserProvisioningmsgraphxxhttps://graph.microsoft.com/v1.0stringBase URL of the Microsoft Graph API
MSGRAPH_GROUP_BASE_FILTERuserProvisioningmsgraphxxNULLstringFilter expression used in the Microsoft Graph GET request to get user groups
MSGRAPH_SCOPEuserProvisioningmsgraphxxhttps://graph.microsoft.com/.defaultstringScope that the configured enterprise application need access to
MSGRAPH_USER_BASE_FILTERuserProvisioningmsgraphxxuserType eq ”Member” and surName ge ” ” and accountEnabled eq truestringFilter expression used in the Microsoft Graph GET request to get users
USER_DEPARTMENTuserProvisioninguserAttributeMappingxxdepartmentstringName of the user Department property in the user provisioning system
USER_EMAILuserProvisioninguserAttributeMappingxxmailstringName of the user Email property in the user provisioning system
USER_FULLNAMEuserProvisioninguserAttributeMappingxxdisplayNamestringName of the user Full name property in the user provisioning system
USER_SOURCE_IDuserProvisioninguserAttributeMappingxxidstringName of the user unique Id property in the user provisioning system
USER_TITLEuserProvisioninguserAttributeMappingxxjobTitlestringName of the user Title property in the user provisioning system
USER_USERNAMEuserProvisioninguserAttributeMappingxxuserPrincipalNamestringName of the user Username property in the user provisioning system
REST_API_IS_ENABLEDrestApixxxFALSEbooleanFlag to enable the REST API service
REST_API_OIDC_PATHrestApixxx/oidcstringPath, relative to API_ENDPOINT_BASE_URL, where the REST API authentication endpoints /token, /jwks etc should be hosted.
REST_API_DOCS_PATHrestApixxx/swaggerstringPath, relative to API_ENDPOINT_BASE_URL, where the REST API documentation (swagger / OpenAPI Specification) should be hosted.
REST_API_ACCESS_TOKEN_TTL_IN_MINUTESrestApixxx5integerDuration in minutes that an access token is valid. This resolves to the “exp” attribute of the access token.
REST_API_OIDC_SIGNING_KEYrestApixx (Docker Secrets)xNULLstringPrivate key used to sign access tokens for the REST API authentication endpoint. This is automatically generated if no external key (through environment variable or config file) is provided.
The easiest way to generate externally provided keys is with the services/api/utils/initialize.js utility tool. The value of this parameter must be a key that is a stringified JSON object.
REST_API_CLIENT_SECRET_TTL_IN_DAYSrestApixxx365integerDuration in days that a client secret is valid. Expired client secrets cannot be used to retrieve access tokens from the token endpoint. Set this to null to never expire client secrets.
ParameterCategoryConfig FileEnvironment VariableDefault ValueDatatypeDescription
API_URLapixxhttp://localhost:8080/apistringURL to the Katalogue Backend API. Used to connect the frontend service to the backend.