Skip to main content

Environment variables

Both the ToolJet server and client requires some environment variables to start running.

ToolJet server

ToolJet host ( required )

variabledescription
TOOLJET_HOSTthe public URL of ToolJet client ( eg: https://app.tooljet.com )

Lockbox configuration ( required )

ToolJet server uses lockbox to encrypt datasource credentials. You should set the environment variable LOCKBOX_MASTER_KEY with a 32 byte hexadecimal string.

Application Secret ( required )

ToolJet server uses a secure 64 byte hexadecimal string to encrypt session cookies. You should set the environment variable SECRET_KEY_BASE.

tip

If you have openssl installed, you can run the following commands to generate the value for LOCKBOX_MASTER_KEY and SECRET_KEY_BASE.

For LOCKBOX_MASTER_KEY use openssl rand -hex 32 For SECRET_KEY_BASE use openssl rand -hex 64

Database configuration ( required )

ToolJet server uses PostgreSQL as the database.

variabledescription
PG_HOSTpostgres database host
PG_DBname of the database
PG_USERusername
PG_PASSpassword
tip

If you are using docker-compose setup, you can set PG_HOST as postgres which will be DNS resolved by docker

Check for updates ( optional )

Self-hosted version of ToolJet pings our server to fetch the latest product updates every 24 hours. You can disable this by setting the value of CHECK_FOR_UPDATES environment variable to 0. This feature is enabled by default.

Comment feature enable ( optional )

Use this environment variable to enable/disable the feature that allows you to add comments on the canvas.

variablevalue
COMMENT_FEATURE_ENABLEtrue or false

Multiplayer feature enable ( optional )

Use this environment variable to enable/disable the feature that allows users to collaboratively work on the canvas.

variablevalue
ENABLE_MULTIPLAYER_EDITINGtrue or false

Server Host ( optional )

You can specify a different server for backend if it is hosted on another server.

variablevalue
SERVER_HOSTConfigure a hostname for the server as a proxy pass. If no value is set, it defaults to server.

Disable Multi-Workspace ( optional )

If you want to disable Multi-Workspace feature, set the environment variable DISABLE_MULTI_WORKSPACE to true.

Disabling signups ( optional )

Sign up is enabled only if Multi-Workspace is enabled. If you want to restrict the signups and allow new users only by invitations, set the environment variable DISABLE_SIGNUPS to true.

tip

You will still be able to see the signup page but won't be able to successfully submit the form.

Serve client as a server end-point ( optional )

By default, the SERVE_CLIENT variable will be set to false and the server won't serve the client at its / end-point. You can set SERVE_CLIENT to true and the server will attempt to serve the client at its root end-point (/).

SMTP configuration ( optional )

ToolJet uses SMTP services to send emails ( Eg: invitation email when you add new users to your workspace ).

variabledescription
DEFAULT_FROM_EMAILfrom email for the email fired by ToolJet
SMTP_USERNAMEusername
SMTP_PASSWORDpassword
SMTP_DOMAINdomain or host
SMTP_PORTport

Slack configuration ( optional )

If your ToolJet installation requires Slack as a data source, you need to create a Slack app and set the following environment variables:

variabledescription
SLACK_CLIENT_IDclient id of the slack app
SLACK_CLIENT_SECRETclient secret of the slack app

Google OAuth ( optional )

If your ToolJet installation needs access to data sources such as Google sheets, you need to create OAuth credentials from Google Cloud Console.

variabledescription
GOOGLE_CLIENT_IDclient id
GOOGLE_CLIENT_SECRETclient secret

Google maps configuration ( optional )

If your ToolJet installation requires Maps widget, you need to create an API key for Google Maps API.

variabledescription
GOOGLE_MAPS_API_KEYGoogle maps API key

APM VENDOR ( optional )

Specify application monitoring vendor. Currently supported values - sentry.

variabledescription
APM_VENDORApplication performance monitoring vendor

SENTRY DNS ( optional )

variabledescription
SENTRY_DNSDSN tells a Sentry SDK where to send events so the events are associated with the correct project

SENTRY DEBUG ( optional )

Prints logs for sentry.

variabledescription
SENTRY_DEBUGtrue or false. Default value is false

Server URL ( optional)

This is used to set up for CSP headers and put trace info to be used with APM vendors.

variabledescription
TOOLJET_SERVER_URLthe URL of ToolJet server ( eg: https://server.tooljet.com )

RELEASE VERSION ( optional)

Once set any APM provider that supports segregation with releases will track it.

NODE_EXTRA_CA_CERTS (optional)

Tooljet needs to be configured for custom CA certificate to be able to trust and establish connection over https. This requires you to configure an additional env var NODE_EXTRA_CA_CERTS to have absolute path to your CA certificates. This file named cert.pem needs to be in PEM format and can have more than one certificates.

variabledescription
NODE_EXTRA_CA_CERTSabsolute path to certifcate PEM file ( eg: /ToolJet/ca/cert.pem )

Disable telemetry ( optional )

Pings our server to update the total user count every 24 hours. You can disable this by setting the value of DISABLE_TOOLJET_TELEMETRY environment variable to true. This feature is enabled by default.

ToolJet client

Server URL ( optionally required )

This is required when client is built separately.

variabledescription
TOOLJET_SERVER_URLthe URL of ToolJet server ( eg: https://server.tooljet.com )

Server Port ( optional)

This could be used to for local development, it will set the server url like so: http://localhost:<TOOLJET_SERVER_PORT>

variabledescription
TOOLJET_SERVER_PORTthe port of ToolJet server ( eg: 3000 )

Asset path ( optionally required )

This is required when the assets for the client are to be loaded from elsewhere (eg: CDN). This can be an absolute path, or relative to main HTML file.

variabledescription
ASSET_PATHthe asset path for the website ( eg: https://app.tooljet.com/)