Parameter | Default | Description |
---|---|---|
DATABASE_URL * | The database URL | |
ENCRYPTION_SECRET * | A 256-bit key used to encrypt sensitive data. It is strongly recommended to generate a new one. The secret should be the same between builder and viewer. | |
NEXTAUTH_URL * | The builder base URL. Should be the publicly accessible URL (i.e. https://typebot.domain.com ) | |
NEXT_PUBLIC_VIEWER_URL * | The viewer base URL. Should be the publicly accessible URL (i.e. https://bot.domain.com ) | |
ADMIN_EMAIL | The email that will get an UNLIMITED plan on user creation. The associated user will be able to bypass database rules. You can provide multiple emails separated by a comma without spaces. | |
DEFAULT_WORKSPACE_PLAN | FREE | Default workspace plan on user creation or when a user creates a new workspace. Possible values are FREE , STARTER , PRO , LIFETIME , UNLIMITED . The default plan for admin user is UNLIMITED |
DISABLE_SIGNUP | false | Disable new user sign ups. Invited users are still able to sign up. |
NEXT_PUBLIC_ONBOARDING_TYPEBOT_ID | Typebot ID used for the onboarding. Onboarding page is skipped if not provided. | |
DEBUG | false | If enabled, the server will print valuable logs to debug config issues. |
NEXT_PUBLIC_BOT_FILE_UPLOAD_MAX_SIZE | Limits the size of each file that can be uploaded in the bots (i.e. Set 10 to limit the file upload to 10MB) | |
CHAT_API_TIMEOUT | The chat API execution timeout (in ms). It limits the chat API exection time. Useful to avoid getting stuck into an unwanted infinite loop. Note that it does not apply to known long-running blocks like OpenAI or else. |
Parameter | Default | Description |
---|---|---|
SMTP_USERNAME | SMTP username | |
SMTP_PASSWORD | SMTP password | |
SMTP_HOST | SMTP host. (i.e. smtp.host.com ) | |
SMTP_PORT | 25 | SMTP port |
NEXT_PUBLIC_SMTP_FROM | From name and email (i.e. 'Typebot Notifications' <[email protected]> ) | |
SMTP_SECURE | false | 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. In most cases set this value to true if you are connecting to port 465. For port 587 or 25 keep it false |
SMTP_IGNORE_TLS | undefined | If true and SMTP_SECURE is false then TLS is not used while connecting to server even if server supports STARTTLS extension. |
SMTP_AUTH_DISABLED | false | To disable the authentication by email but still use the provided config for notifications |
Requirements
GOOGLE_AUTH_CLIENT_ID
and GOOGLE_AUTH_CLIENT_SECRET
Make sure to set the following scopes: userinfo.email
The “Authorized redirect URIs” used when creating the credentials must include your full domain and end in the callback path:
Parameter | Default | Description |
---|---|---|
GOOGLE_AUTH_CLIENT_ID | The Client ID from the Google API Console | |
GOOGLE_AUTH_CLIENT_SECRET | The Client secret from the Google API Console |
Requirements
NEXT_PUBLIC_GOOGLE_SHEETS_API_KEY
GOOGLE_SHEETS_CLIENT_ID
and GOOGLE_SHEETS_CLIENT_SECRET
Make sure to set the following scopes located in your OAuth Consent Screen: spreadsheets
, drive.file
https://developers.google.com/identity/protocols/oauth2/scopes
The “Authorized redirect URIs” used when creating the credentials must include your full domain and end in the callback path:
Parameter | Default | Description |
---|---|---|
GOOGLE_SHEETS_CLIENT_ID | The Client ID from the Google API Console | |
GOOGLE_SHEETS_CLIENT_SECRET | The Client secret from the Google API Console | |
NEXT_PUBLIC_GOOGLE_SHEETS_API_KEY | The API Key from the Google API Console |
Requirements
GMAIL_CLIENT_ID
and GMAIL_CLIENT_SECRET
Make sure to set the following scopes located in your OAuth Consent Screen: gmail.send
, gmail.labels
, userinfo.profile
, userinfo.email
https://developers.google.com/identity/protocols/oauth2/scopes
The “Authorized redirect URIs” used when creating the credentials must include your full domain and end in the callback path:
Parameter | Default | Description |
---|---|---|
GMAIL_CLIENT_ID | The Client ID from the Google API Console | |
GMAIL_CLIENT_SECRET | The Client secret from the Google API Console |
Requirements
NEXT_PUBLIC_GOOGLE_FONTS_API_KEY
Parameter | Default | Description |
---|---|---|
NEXT_PUBLIC_GOOGLE_FONTS_API_KEY | The API Key from the Google API Console |
$NEXTAUTH_URL/api/auth/callback/github
Parameter | Default | Description |
---|---|---|
GITHUB_CLIENT_ID | Application client ID. Also used to check if it is enabled in the front-end | |
GITHUB_CLIENT_SECRET | Application secret |
$NEXTAUTH_URL/api/auth/callback/gitlab
Parameter | Default | Description |
---|---|---|
GITLAB_CLIENT_ID | Application client ID. Also used to check if it is enabled in the front-end | |
GITLAB_CLIENT_SECRET | Application secret | |
GITLAB_BASE_URL | https://gitlab.com | Base URL of the GitLab instance |
GITLAB_REQUIRED_GROUPS | Comma-separated list of groups the user has to be a direct member of, e.g. foo,bar | |
GITLAB_NAME | GitLab | Name of the GitLab instance, used for the SSO Login Button |
$NEXTAUTH_URL/api/auth/callback/facebook
Parameter | Default | Description |
---|---|---|
FACEBOOK_CLIENT_ID | Application client ID. Also used to check if it is enabled in the front-end | |
FACEBOOK_CLIENT_SECRET | Application secret |
$NEXTAUTH_URL/api/auth/callback/azure-ad
Parameter | Default | Description |
---|---|---|
AZURE_AD_CLIENT_ID | Application client ID | |
AZURE_AD_CLIENT_SECRET | Application client secret. Can be obtained from Azure Portal. | |
AZURE_AD_TENANT_ID | Azure Tenant ID |
Parameter | Default | Description |
---|---|---|
KEYCLOAK_CLIENT_ID | Application client ID. | |
KEYCLOAK_CLIENT_SECRET | Application secret | |
KEYCLOAK_REALM | Your Keycloak Realm | |
KEYCLOAK_BASE_URL | Base URL of the Keycloak instance |
Parameter | Default | Description |
---|---|---|
CUSTOM_OAUTH_CLIENT_ID * | OAuth client ID. | |
CUSTOM_OAUTH_CLIENT_SECRET * | OAuth client secret. | |
CUSTOM_OAUTH_ISSUER * | OAuth issuer URL (i.e. https://auth.domain.com/openid ) | |
CUSTOM_OAUTH_NAME | Custom OAuth | Provider name. Will be displayed in the sign in form. |
CUSTOM_OAUTH_WELL_KNOWN_URL | CUSTOM_OAUTH_ISSUER /.well-known/openid-configuration | Provider .well-known URL |
CUSTOM_OAUTH_USER_ID_PATH | id | Used to map the id from the user info object |
CUSTOM_OAUTH_USER_NAME_PATH | name | Used to map the name from the user info object |
CUSTOM_OAUTH_USER_EMAIL_PATH | Used to map the email from the user info object | |
CUSTOM_OAUTH_USER_IMAGE_PATH | image | Used to map the image from the user info object |
CUSTOM_OAUTH_SCOPE | openid profile email | OAuth scope |
*_PATH
parameters, you can use dot notation to access nested properties (i.e. account.name
).
The Authorization callback URL should be: $NEXTAUTH_URL/api/auth/callback/custom-oauth
Parameter | Default | Description |
---|---|---|
S3_ACCESS_KEY | S3 access key. Also used to check if upload feature is enabled | |
S3_SECRET_KEY | S3 secret key. | |
S3_BUCKET | typebot | Name of the bucket where assets will be uploaded in. |
S3_PORT | S3 Host port number | |
S3_ENDPOINT | S3 endpoint (i.e. s3.domain.com ). | |
S3_SSL | true | Use SSL when establishing the connection. |
S3_REGION | S3 region. | |
S3_PUBLIC_CUSTOM_DOMAIN | If the final URL that is used to read public files is different from S3_ENDPOINT |
s3.<S3_REGION>.amazonaws.com
In order to function properly, your S3 bucket must be configured. Make sure to read through the S3 configuration doc.
Parameter | Default | Description |
---|---|---|
NEXT_PUBLIC_GIPHY_API_KEY | Giphy API key |
Parameter | Default | Description |
---|---|---|
NEXT_PUBLIC_UNSPLASH_APP_NAME | Unsplash App name | |
NEXT_PUBLIC_UNSPLASH_ACCESS_KEY | Unsplash API key |
Parameter | Default | Description |
---|---|---|
NEXT_PUBLIC_PEXELS_API_KEY | Pexels API key |
Parameter | Default | Description |
---|---|---|
NEXT_PUBLIC_TOLGEE_API_KEY | Your Tolgee API key | |
NEXT_PUBLIC_TOLGEE_API_URL | https://tolgee.server.baptistearno.com | The Tolgee API base URL |
Requirements
Never
whatsapp_business_messaging
, whatsapp_business_management
META_SYSTEM_USER_TOKEN
in your viewer configuration.Add assets
. Under Apps
, look for your app, select it and check Manage app
Add phone number
button.
From
dropdown list and you will see right below the associated Phone number ID
This will be used as WHATSAPP_PREVIEW_FROM_PHONE_NUMBER_ID
in your viewer configuration.
Quickstart > Configuration
. Edit the webhook URL to $NEXTAUTH_URL/api/v1/whatsapp/preview/webhook
. Set the Verify token to $ENCRYPTION_SECRET
and click on Verify and save
.messages
webhook field.Messaging > Message Templates
and click on Create Template
Utility
categoryWHATSAPP_PREVIEW_TEMPLATE_NAME
configuration.WHATSAPP_PREVIEW_TEMPLATE_LANG
configuration.Parameter | Default | Description |
---|---|---|
META_SYSTEM_USER_TOKEN | The system user token used to send WhatsApp messages | |
WHATSAPP_PREVIEW_FROM_PHONE_NUMBER_ID | The phone number ID from which the message will be sent | |
WHATSAPP_PREVIEW_TEMPLATE_NAME | The preview start template message name | |
WHATSAPP_PREVIEW_TEMPLATE_LANG | en_US | The preview start template message name |
WHATSAPP_CLOUD_API_URL | https://graph.facebook.com | The WhatsApp Cloud API base URL |
WHATSAPP_INTERACTIVE_GROUP_SIZE | 3 | The array size of items to send to API on choice input. You can’t choose a number higher than 3 if you are using the official cloud API URL. |
Parameter | Default | Description |
---|---|---|
REDIS_URL | The database URL. i.e. redis://<username>:<password>@<host>:<port> |
packages/partykit
folder. You can deploy the server into production using bun deploy
. You can find more information about PartyKit deployment in their official documentation.
Parameter | Default | Description |
---|---|---|
NEXT_PUBLIC_PARTYKIT_HOST | PartyKit host. i.e. partykit.typebot.io |
Vercel (custom domains)
Parameter | Default | Description |
---|---|---|
VERCEL_TOKEN | Vercel API token | |
NEXT_PUBLIC_VERCEL_VIEWER_PROJECT_NAME | The name of the viewer project in Vercel | |
VERCEL_TEAM_ID | Vercel team ID that contains the viewer project |
Telemetry
Parameter | Default | Description |
---|---|---|
MESSAGE_WEBHOOK_URL | Webhook URL called to receive important system messages | |
USER_CREATED_WEBHOOK_URL | Webhook URL called whenever a new user is created |
PostHog
Parameter | Default | Description |
---|---|---|
NEXT_PUBLIC_POSTHOG_KEY | PostHog API Key | |
POSTHOG_API_HOST | https://eu.posthog.com | PostHog API Host |
POSTHOG_PERSONAL_API_KEY | PostHog personal API Key | |
POSTHOG_PROJECT_ID | PostHog project ID |
System labels
Parameter | Default | Description |
---|---|---|
NEXT_PUBLIC_VIEWER_404_TITLE | 404 | |
NEXT_PUBLIC_VIEWER_404_SUBTITLE | The bot you’re looking for doesn’t exist |