Skip to main content

Environment Variables

Complete reference for Actyze environment variables.

Core Configuration

VariableRequiredDefaultDescription
DATABASE_URLYes-PostgreSQL connection string
Actyze_LICENSE_KEYYes-Your Actyze license key
JWT_SECRETYes-Secret for JWT token signing
PORTNo8080API server port
NODE_ENVNoproductionEnvironment mode

AI Provider Configuration

Actyze uses a unified configuration for all AI providers via LiteLLM.

Common Variables

VariableRequiredDefaultDescription
EXTERNAL_LLM_MODELYes-Model name (e.g., claude-sonnet-4-20250514, gpt-4o)
EXTERNAL_LLM_ENABLEDNotrueEnable external LLM (enabled by default)
EXTERNAL_LLM_MODENoautoMode: auto, standard, or openai-compatible
EXTERNAL_LLM_MAX_TOKENSNo4096Maximum tokens in response
EXTERNAL_LLM_TEMPERATURENo0.1Temperature (0.0-1.0)

Provider-Specific API Keys

Set ONE of these based on your provider:

ProviderVariableExample Model
AnthropicANTHROPIC_API_KEYclaude-sonnet-4-20250514
OpenAIOPENAI_API_KEYgpt-4o
Google GeminiGEMINI_API_KEYgemini/gemini-pro
GroqGROQ_API_KEYgroq/llama-3.3-70b-versatile
PerplexityPERPLEXITY_API_KEYperplexity/sonar-reasoning-pro
AWS BedrockAWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEYbedrock/anthropic.claude-v2

Enterprise Gateway (Optional)

For custom AI gateways or proxies:

VariableRequiredDescription
EXTERNAL_LLM_MODEYesSet to openai-compatible
EXTERNAL_LLM_BASE_URLYesGateway URL
EXTERNAL_LLM_API_KEYYesGateway auth token
EXTERNAL_LLM_AUTH_TYPENoAuth type (bearer or x-api-key)
EXTERNAL_LLM_EXTRA_HEADERSNoAdditional headers (JSON string)

License Server

VariableRequiredDefaultDescription
Actyze_LICENSE_SERVERNohttps://license.actyze.comLicense validation server
LICENSE_CHECK_INTERVALNo24hHow often to validate

Trino Configuration

VariableRequiredDefaultDescription
TRINO_HOSTYeslocalhostTrino server hostname
TRINO_PORTNo8080Trino server port
TRINO_USERYesadminTrino username
TRINO_PASSWORDNo-Trino password (for authenticated instances)
TRINO_CATALOGNo-Default catalog
TRINO_SCHEMANo-Default schema
TRINO_SSLNofalseEnable SSL/TLS connection
TRINO_SSL_VERIFYNotrueVerify SSL certificates (set to false for self-signed)
TRINO_QUERY_TIMEOUT_SECONDSNo300Hard upper limit on Trino query execution time (seconds)
EXCLUDED_CATALOGSNo-Comma-separated list of catalogs to exclude

Timeout Configuration

VariableDefaultDescription
EXECUTE_TIMEOUT_SECONDS120Primary timeout variable. Controls both the Trino SQL execution timeout and the frontend HTTP request timeout (set to this value + 30s). Increase for slow enterprise Trino clusters.
DEFAULT_TIMEOUT_SECONDS120Overall NL→SQL pipeline timeout covering schema recommendations and LLM generation.
EXTERNAL_LLM_TIMEOUT120LLM API call timeout (Bedrock, Anthropic, OpenAI, etc.).

Why does EXECUTE_TIMEOUT_SECONDS affect the frontend?
The browser's Axios HTTP timeout is EXECUTE_TIMEOUT_SECONDS + 30 seconds. This prevents the UI from reporting a network error when a Trino query takes longer than the browser's default 30s timeout but the backend is still processing it successfully.

External Trino with Problematic Catalogs

When using external Trino instances, some catalogs may have backend connectivity issues. Use EXCLUDED_CATALOGS to skip these catalogs:

# Exclude catalogs with connection problems
EXCLUDED_CATALOGS=och,problematic_catalog

This prevents the schema service from crashing when external catalogs have issues you cannot control.

Database

VariableDescriptionDefault
DB_MAX_CONNECTIONSMax pool size20
DB_IDLE_TIMEOUTIdle timeout10m
QUERY_TIMEOUTQuery timeout30s

Security

VariableDescription
TLS_ENABLEDEnable TLS
CORS_ORIGINSAllowed CORS origins
RATE_LIMIT_REQUESTSRequests per window
RATE_LIMIT_WINDOWTime window

Logging

VariableOptionsDefault
LOG_LEVELdebug, info, warn, errorinfo
LOG_FORMATjson, textjson