Skip to content

Configuration variable reference

The following is a list of all available configuration variables used by the SerenityGPT application, including their data type, validation criteria, and corresponding environment variable.

Tip

Before reading this document, read the SerenityGPT Configuration Reference to familiarise yourself with how the SerenityGPT configuration system works.

Database settings

These settings configure the app's database connection. They're compulsory for the application to function.

Variable Type Description Validation Environment Variable
database.name str Name of the postgres database to be used by SerenityGPT DB_NAME
database.user str Name of the postgres user to connect with DB_USER
database.password str Password for the postgres user DB_PASSWORD
database.host str Hostname of the postgres server to connect to Must be a valid hostname DB_HOST
database.port int Port of the postgres server Must be a number between 1 and 65535 DB_PORT

Validation of special variable types

The SerenityGPT application supports a number of special variable types:

  • For all URL fields, the validation ensures that the variable is a properly formatted URL.
  • For hostname fields, the validation ensures that the variable is a valid hostname format.
  • For port numbers, the validation ensures that the variable is within the valid range of 1-65535.

Relevant section from config.yaml

# Database settings
database:
  # name of the postgres database
  name: serenitydb
  # name of the postgres user to connect with
  user: your_db_user
  # password for the postgres user
  password: your_db_password
  # hostname of the postgres server
  host: your_db_host
  # port of the postgres server
  port: 5432

General settings

These settings configure the app's general behavior.

Variable Type Description Validation Environment Variable
debug bool Enables debug mode N/A SERENITY_DEBUG
debug_allowed_hosts List[str] Allowed hosts when in debug mode Each host must be a valid hostname or IP address N/A (set in config.yaml)
cors_allowed_origins List[str] Allowed origins for CORS Each origin must be a valid URL N/A (set in config.yaml)
log_level str Logging level Must be one of: DEBUG, INFO, WARNING, ERROR, CRITICAL N/A (set in config.yaml)
csrf_trusted_origins List[str] Trusted origins for CSRF protection Each origin must be a valid URL N/A (set in config.yaml)
allowed_hosts List[str] Allowed hosts for the Django application Each host must be a valid hostname or IP address N/A (set in config.yaml)

Relevant section from config.yaml

# Debug mode (enables detailed error pages and logging)
debug: false

# List of hosts allowed when debug is True
debug_allowed_hosts:
  - localhost
  - 127.0.0.1

# List of allowed origins for Cross-Origin Resource Sharing (CORS)
cors_allowed_origins:
  - http://localhost:3000
  - http://client.example.com:3000

# Logging level (DEBUG, INFO, WARNING, ERROR, CRITICAL)
log_level: INFO

# List of trusted origins for Cross-Site Request Forgery (CSRF) protection
csrf_trusted_origins:
  - https://*.serenitygpt.com

# List of allowed hosts for the Django application
allowed_hosts:
  - .serenitygpt.com

YAML formats

Note that the following format is also valid YAML. It is more compact, but less readable, especially in version control systems and diffing tools.

debug: true
debug_allowed_hosts: ["localhost", "127.0.0.1"]
cors_allowed_origins: ["http://localhost:3000", "http://client.example.com:3000"]
log_level: DEBUG
csrf_trusted_origins: ["http://localhost:3000", "http://127.0.0.1:3000"]
allowed_hosts: ["localhost", "127.0.0.1"]

Azure Entra ID settings

These settings configure the way the app authenticates users with Azure Entra ID. See Azure Entra ID documentation for more information.

Variable Type Description Validation Environment Variable
aad.tenant_id str Azure tenant ID AAD_TENANT_ID
aad.client_id str Entra Client ID AAD_CLIENT_ID
aad.client_secret str Entra Client secret AAD_CLIENT_SECRET
aad.redirect_uri str Entra Redirect URI Must be a valid URI AAD_REDIRECT_URI
aad.tenant_claim_path str JSON path to the department claim within the configured IDToken Defaults to "groups" AAD_TENANT_CLAIM_PATH

OpenAI settings

These settings are specific to the optional OpenAI module.

Variable Type Description Validation Environment Variable
openai.api_version str OpenAI API version N/A OPENAI_API_VERSION
openai.model str OpenAI model to use N/A MODEL
openai.api_type str OpenAI API type N/A OPENAI_API_TYPE
openai.deployment str OpenAI deployment name N/A AZURE_OPENAI_DEPLOYMENT
openai.endpoint HttpUrl OpenAI API endpoint Must be a valid URL AZURE_OPENAI_ENDPOINT
openai.api_key str OpenAI API key N/A AZURE_OPENAI_API_KEY
openai.embedding_deployment str OpenAI embedding deployment name N/A AZURE_OPENAI_EMBEDDING_DEPLOYMENT

Freshdesk settings

These settings are specific to the optional Freshdesk module.

Variable Type Description Validation Environment Variable
freshdesk.api_key Optional[str] Freshdesk API key N/A FRESHDESK_API_KEY
freshdesk.domain Optional[str] Freshdesk domain N/A FRESHDESK_DOMAIN
freshdesk.integration_serenity_company_id Optional[int] Serenity company ID for Freshdesk integration N/A FRESHDESK_INTEGRATION_SERENITY_COMPANY_ID
freshdesk.integration_serenity_token Optional[str] Serenity token for Freshdesk integration N/A FRESHDESK_INTEGRATION_SERENITY_TOKEN
freshdesk.bot_user_id Optional[int] Freshdesk bot user ID N/A FRESHDESK_BOT_USER_ID

Jira settings

These settings are specific to the optional Jira module.

Variable Type Description Validation Environment Variable
jira.api_key Optional[str] Jira API key N/A JIRA_API_KEY
jira.api_token Optional[str] Jira API token N/A JIRA_API_TOKEN
jira.domain Optional[str] Jira domain N/A JIRA_DOMAIN
jira.integration_serenity_company_id Optional[int] Serenity company ID for Jira integration N/A JIRA_INTEGRATION_SERENITY_COMPANY_ID
jira.integration_serenity_token Optional[str] Serenity token for Jira integration N/A JIRA_INTEGRATION_SERENITY_TOKEN
jira.username Optional[str] Jira username N/A JIRA_USERNAME
jira.project Optional[str] Jira project key N/A JIRA_PROJECT

Salesforce settings

These settings are specific to the optional Salesforce module. They are used for customer-specific Salesforce integrations.

Variable Type Description Validation Environment Variable
[customerid].integration_serenity_token Optional[str] Serenity token for customer integration N/A [customerid]_INTEGRATION_SERENITY_TOKEN
[customerid].integration_serenity_company_id Optional[int] Serenity company ID for customer integration N/A [customerid]_INTEGRATION_SERENITY_COMPANY_ID
[customerid].salesforce_client_id Optional[str] Salesforce client ID for customer integration N/A [customerid]_SALESFORCE_CLIENT_ID
[customerid].salesforce_client_secret Optional[str] Salesforce client secret for customer integration N/A [customerid]_SALESFORCE_CLIENT_SECRET

Helpshift settings

Please contact SerenityGPT support team.

Zendesk settings

Please contact SerenityGPT support team.

Other ticketing platforms including in-house builds

Please contact SerenityGPT support team.

InterSystems IRIS settings

These settings are reserved for the optional InterSystems IRIS Vector database integration.

Variable Type Description Validation Environment Variable
iris.username Optional[str] IRIS username N/A IRIS_USERNAME
iris.password Optional[str] IRIS password N/A IRIS_PASSWORD
iris.port Optional[int] IRIS port N/A IRIS_PORT
iris.namespace Optional[str] IRIS namespace N/A IRIS_NAMESPACE

Confluence settings

Variable Type Description Validation Environment Variable
confluence.[customerid]_user Optional[str] Custom Confluence user N/A CONFLUENCE_DELPHIX_USER
confluence.[customerid]_url Optional[HttpUrl] Custom Confluence URL Must be a valid URL CONFLUENCE_DELPHIX_URL
confluence.[customerid]_api_token Optional[str] Custom Confluence API token N/A CONFLUENCE_DELPHIX_API_TOKEN

Azure settings

These settings are specific to the optional Azure crawler and indexer module.

Variable Type Description Validation Environment Variable
azure.tenant_id Optional[str] Azure tenant ID N/A AZURE_TENANT_ID
azure.application_id Optional[str] Azure application ID N/A AZURE_APPLICATION_ID
azure.certificate_path Optional[str] Path to Azure certificate N/A AZURE_CERTIFICATE_PATH
azure.certificate_pass Optional[str] Azure certificate password N/A AZURE_CERTIFICATE_PASS
azure.account_url Optional[HttpUrl] Azure account URL Must be a valid URL AZURE_ACCOUNT_URL

Monitoring settings

These settings are reserved for the various custom monitoring integrations supported by the SerenityGPT application.

Variable Type Description Validation Environment Variable
monitoring.intersystems_username str InterSystems monitoring username N/A MONITOR_INTERSYSTEMS_USERNAME
monitoring.intersystems_password str InterSystems monitoring password N/A MONITOR_INTERSYSTEMS_PASSWORD
monitoring.other_username str Secondary monitoring username N/A MONITOR_OTHER_USERNAME
monitoring.other_password str Secondary monitoring password N/A MONITOR_OTHER_PASSWORD
monitoring.username str General monitoring username N/A MONITORING_USERNAME
monitoring.password str General monitoring password N/A MONITORING_PASSWORD
monitoring.host HttpUrl Monitoring host URL Must be a valid URL MONITORING_HOST

SerenityGPT specific settings

These settings are internal settings and overrides for the SerenityGPT application. Do not change these settings unless you know what you're doing or have been instructed to do so by SerenityGPT support.

Variable Type Description Validation Environment Variable
serenity_ui_url HttpUrl Serenity UI URL Must be a valid URL SERENITY_UI_URL
serenity_token str Serenity token N/A SERENITY_TOKEN
serenity_api_host HttpUrl Serenity API host URL Must be a valid URL SERENITY_API_HOST
serenity_company_id int Serenity company ID N/A SERENITY_COMPANY_ID