Skip to main content
Version: v0.1.4-beta.2

Environment Variables

Use the EASY_BPM_<APP>_<VARIABLE> naming standard for customer-facing configuration. Infrastructure-specific variables, such as managed database or broker settings, keep the names required by those services.

Backend API​

VariableDefault
EASY_BPM_SERVER_PORT8080
EASY_BPM_SERVER_DATASOURCE_URLjdbc:postgresql://localhost:5432/easybpm
EASY_BPM_SERVER_DATASOURCE_USERNAMEmeu_usuario
EASY_BPM_SERVER_DATASOURCE_PASSWORDminha_senha
EASY_BPM_SERVER_RABBITMQ_HOSTlocalhost
EASY_BPM_SERVER_RABBITMQ_PORT5672
EASY_BPM_SERVER_RABBITMQ_USERNAMEeasybpm
EASY_BPM_SERVER_RABBITMQ_PASSWORDeasybpm
EASY_BPM_SERVER_MANAGEMENT_ENDPOINTS_WEB_EXPOSURE_INCLUDEhealth,metrics,prometheus
EASY_BPM_SERVER_MANAGEMENT_HEALTH_SHOW_DETAILSalways
EASY_BPM_SERVER_LOGGING_LEVEL_ROOTINFO
EASY_BPM_SERVER_LOGGING_LEVEL_APPDEBUG
EASY_BPM_SERVER_LOGGING_LEVEL_HIBERNATEWARN
EASY_BPM_SERVER_AI_ENCRYPTION_KEYdefault-dev-key-change-in-prod-1234
EASY_BPM_SERVER_TEST_DATA_ENABLEDfalse
EASY_BPM_SERVER_RETENTION_ENABLEDfalse
EASY_BPM_SERVER_RETENTION_COMPLETED_PROCESS_RETENTION_DAYS90
EASY_BPM_SERVER_RETENTION_COMPLETED_TASK_RETENTION_DAYS90
EASY_BPM_SERVER_RETENTION_BATCH_SIZE500
EASY_BPM_SERVER_RETENTION_CRON0 0 3 * * *

EASY_BPM_SERVER_TEST_DATA_ENABLED=true seeds demo/test process definitions, instances, tasks, and variables at backend startup. Keep it disabled in production.

Retention defaults seed the first saved maintenance policy record. After the Admin Console saves retention settings, those values become the runtime source for scheduled cleanup until changed again.

Agentic orchestration and AI providers​

Agent Process execution can use a credential stored in the Easy BPM credential vault or an environment variable reference. Environment references must include the leading $ in the deployed model, for example:

{
"provider": {
"providerId": "gemini",
"modelName": "gemini-3.5-flash",
"credentialRef": "$GEMINI_API_KEY"
}
}

In that example, the backend process must have GEMINI_API_KEY configured in its runtime environment. When credentialRef does not start with $, the backend treats it as a stored credential ID.

VariablePurpose
OPENAI_API_KEYOpenAI API key used when an Agent Process or AI task references "$OPENAI_API_KEY".
GEMINI_API_KEYGoogle Gemini API key used when an Agent Process or AI task references "$GEMINI_API_KEY".
AZURE_OPENAI_API_KEYAzure OpenAI API key used when an Agent Process or AI task references "$AZURE_OPENAI_API_KEY".
EASY_BPM_SERVER_AI_ENCRYPTION_KEYKey used to encrypt credentials stored in the Easy BPM credential vault. Use a unique production value.

Local Ollama testing does not require a credential by default. Use providerId: "ollama" with model llama3.2. When no endpoint is supplied, the backend uses http://localhost:11434/api/generate.

PowerShell local example:

$env:GEMINI_API_KEY="AIza..."
$env:AZURE_OPENAI_API_KEY="azure-openai-key"
$env:EASY_BPM_SERVER_AI_ENCRYPTION_KEY="replace-with-a-production-secret"

For local agentic orchestration testing, keep API keys in your shell environment or an untracked .env file.

Worker​

VariableDefault
EASY_BPM_WORKER_PORT0
EASY_BPM_WORKER_DATASOURCE_URLjdbc:postgresql://localhost:5432/easybpm
EASY_BPM_WORKER_DATASOURCE_USERNAMEmeu_usuario
EASY_BPM_WORKER_DATASOURCE_PASSWORDminha_senha
EASY_BPM_WORKER_RABBITMQ_HOSTlocalhost
EASY_BPM_WORKER_RABBITMQ_PORT5672
EASY_BPM_WORKER_RABBITMQ_USERNAMEeasybpm
EASY_BPM_WORKER_RABBITMQ_PASSWORDeasybpm
EASY_BPM_WORKER_LOGGING_LEVEL_APPINFO

Security bootstrap​

VariableDefault
EASY_BPM_SERVER_SECURITY_ENABLEDtrue
EASY_BPM_SERVER_SECURITY_JWT_SECRETdevelopment-only default
EASY_BPM_SERVER_SECURITY_JWT_EXPIRATION_MS3600000
EASY_BPM_SERVER_SECURITY_BOOTSTRAP_ADMIN_USERNAMEadmin
EASY_BPM_SERVER_SECURITY_BOOTSTRAP_ADMIN_PASSWORDadmin
EASY_BPM_SERVER_SECURITY_BOOTSTRAP_ADMIN_GROUP_CODEADMIN
EASY_BPM_SERVER_SECURITY_BOOTSTRAP_ADMIN_GROUP_NAMEAdministrators

Keycloak and OIDC​

VariablePurpose
EASYBPM_AUTHENTICATION_PROVIDERSet to keycloak or oidc to validate external OIDC tokens. Defaults to local.
EASYBPM_OIDC_ISSUER_URIOIDC issuer URL. Required when OIDC is enabled.
EASYBPM_OIDC_JWK_SET_URIOptional internal JWK endpoint; useful when the backend reaches Keycloak over a Docker network.
EASYBPM_OIDC_CLIENT_IDOIDC client ID. Defaults to easybpm.
EASYBPM_OIDC_AUDIENCERequired audience claim. Leave unset to disable audience validation.
EASYBPM_OIDC_GROUP_CLAIMToken claim containing groups. Defaults to groups.
EASYBPM_OIDC_USERNAME_CLAIMToken claim used as the Easy BPM username. Defaults to preferred_username.

Web apps​

VariablePurpose
EASY_BPM_ADMIN_API_BASE_URLBackend API URL used by the Admin Console.
EASY_BPM_MODELER_API_BASE_URLBackend API URL used by the Modeler.
EASY_BPM_MODELER_AGENTIC_ORCHESTRATIONEnables the feature-flagged Agent Process resource in the Modeler when set to true, 1, yes, on, or enabled. Defaults to disabled.
EASY_BPM_MODELER_DEFAULT_AI_PROVIDERDefault provider selected by the Agent Process editor.
EASY_BPM_MODELER_DEFAULT_AI_MODELDefault model selected by the Agent Process editor.
EASY_BPM_MODELER_DEFAULT_AI_CREDENTIAL_REFDefault credential reference selected by the Agent Process editor.
EASY_BPM_TASK_PORTAL_API_BASE_URLBackend API URL used by the Task Portal.

Run the feature-flagged modeler locally with:

$env:EASY_BPM_MODELER_AGENTIC_ORCHESTRATION="true"
npm run dev