Skip to main content

Here is the table with the environment variables sorted in alphabetical order:

Environment Variables

The following environment variables can be used to configure Identus Cloud Agent (in alphabetical order):

Variable NameDescriptionTypeDefault
ADMIN_TOKENAdmin token for the admin API key authentication method.Stringadmin
AGENT_DB_APP_PASSWORDAgent database application user password for login.Stringpassword
AGENT_DB_APP_USERAgent database application user for login.Stringagent-application-user
AGENT_DB_AWAIT_CONNECTION_THREADSNumber of threads to wait for database connection.Int4
AGENT_DB_HOSTHostname of the server where the Cloud Agent database is running.Stringlocalhost
AGENT_DB_NAMEDatabase name where the agent database will store data.Stringagent
AGENT_DB_PASSWORDAgent database password for login.Stringpostgres
AGENT_DB_PORTPort of the Cloud Agent database.Int5432
AGENT_DB_USERAgent database username for login.Stringpostgres
AGENT_DIDCOMM_PORTPort on which DIDComm service runs.Int8090
AGENT_HTTP_CLIENT_CONNECTION_POOL_SIZESize of the HTTP client connection pool.Int0
AGENT_HTTP_CLIENT_CONNECTION_TIMEOUTHTTP client connection timeout duration.String5 seconds
AGENT_HTTP_CLIENT_IDLE_TIMEOUTHTTP client idle timeout duration.String5 seconds
AGENT_HTTP_PORTPort on which Cloud Agent runs.Int8085
API_KEY_AUTHENTICATE_AS_DEFAULT_USERWhether or not to authenticate all API keys as the default user.Booleantrue
API_KEY_AUTO_PROVISIONINGWhether or not to enable auto-provisioning for API keys and register the owner of the api-key automatically.Booleanfalse
API_KEY_ENABLEDWhether or not to enable API key authentication.Booleanfalse
API_KEY_SALTSalt used to hash the API key.StringJLXTS4J2qkMOgfO8
CONNECT_BG_JOB_RECURRENCE_DELAYInterval at which the background job will try to process connection records.String2 seconds
CONNECT_BG_JOB_RECORDS_LIMITMaximum number of connection records the background job will try to process at the same time.Int25
CONNECT_DB_APP_PASSWORDConnect database application user password for login.Stringpassword
CONNECT_DB_APP_USERConnect database application user for login.Stringconnect-application-user
CONNECT_DB_AWAIT_CONNECTION_THREADSNumber of threads to wait for database connection.Int4
CONNECT_DB_HOSTHostname of the server where the Connect database is running.Stringlocalhost
CONNECT_DB_NAMEDatabase name where the Connect database will store data.Stringconnect
CONNECT_DB_PASSWORDConnect database password for login.Stringpostgres
CONNECT_DB_PORTPort of the Connect database.Int5432
CONNECT_DB_USERConnect database username for login.Stringpostgres
CONNECT_INVITATION_EXPIRYThe connect invitation expiry duration e.g 300 seconds. After which the OOB Connect Invitation will expire.String300 seconds
CREDENTIAL_LEEWAYTime leeway when verifying credential dates; if the time difference is less than the leeway, the credential will still be considered valid.String0 seconds
CREDENTIAL_SD_JWT_EXPIRYExpiry duration for SD-JWT credentials.String30 days
CREDENTIAL_VERIFY_DATESWhether or not to verify credential dates (expiration).Booleanfalse
CREDENTIAL_VERIFY_SIGNATUREWhether or not to verify a credential signature.Booleantrue
DEFAULT_JWT_VC_OFFER_DOMAINDefault domain for JWT VC offers. Must be set to the value of the Cloud Agent endpoint.Stringdefault-domain
DEFAULT_KAFKA_ENABLEDWhether or not to enable Kafka integration.Booleanfalse
DEFAULT_WALLET_AUTH_API_KEYThe authentication API key to be used for default entity that uses default wallet.Stringdefault
DEFAULT_WALLET_ENABLEDWhether or not to initialize the default wallet.Booleantrue
DEFAULT_WALLET_SEEDThe BIP32 wallet seed to be used for default wallet represented by a hexadecimal string.StringNull
DEFAULT_WALLET_WEBHOOK_API_KEYThe optional API key (bearer token) to use as the Authorization header for the default wallet webhook.StringNull
DEFAULT_WALLET_WEBHOOK_URLThe default wallet webhook endpoint URL to which notifications will be sent.StringNull
DID_STATE_SYNC_TRIGGER_RECURRENCE_DELAYTriggering DID state sync delay in Hocon duration format.String30 seconds
DIDCOMM_SERVICE_URLURL of the DIDComm server that also runs for this agent.Stringhttp://localhost:8090
ENABLE_ANONCREDEnable support for the AnonCred credential type via API and DIDComm.Booleanfalse
GLOBAL_WEBHOOK_API_KEYThe optional API key (bearer token) to use as the Authorization header for the global wallet webhook.StringNull
GLOBAL_WEBHOOK_URLThe global webhook endpoint URL to which notifications will be sent.StringNull
ISSUANCE_INVITATION_EXPIRYThe issuance invitation expiry duration e.g 300 seconds. After which the OOB Credential Offer will expire.String300 seconds
KEYCLOAK_CLIENT_IDThe Keycloak client ID.Stringprism-agent
KEYCLOAK_CLIENT_SECRETThe Keycloak client secret.Stringprism-agent-demo-secret
KEYCLOAK_ENABLEDWhether or not to enable Keycloak authentication and authorisation.Booleanfalse
KEYCLOAK_REALMThe Keycloak realm name.Stringatala-demo
KEYCLOAK_URLThe Keycloak server URL.Stringhttp://localhost:9980
KEYCLOAK_UMA_AUTO_UPGRADE_RPTWhether or not to enable automatic upgrade of RPT tokens. If disabled, accessToken must be RPT and include the permission claims.Booleantrue
KEYCLOAK_ROLES_CLAIM_PATHThe json path to the roles claim in the JWT payload. Used for role-based authorization (e.g. admin or tenant).Stringresource_access.<KEYCLOAK_CLIENT_ID>.roles
LOG_LEVELCloud Agent log level. The default log level is INFO. Possible values: TRACE, DEBUG, INFO, WARN, ERROR, OFF. Values are case-insensitive.StringINFO
NEOPRISM_BASE_URLBase URL of the NeoPRISM service for DID resolution. Only required when NODE_BACKEND is set to neoprism.Stringhttp://localhost:8080
NODE_BACKENDDID node backend implementation to use. Use prism-node for the legacy PRISM Node or neoprism for NeoPRISM service.Enum(prism-node, neoprism)prism-node
POLLUX_DB_APP_PASSWORDPollux database application user password for login.Stringpassword
POLLUX_DB_APP_USERPollux database application user for login.Stringpollux-application-user
POLLUX_DB_AWAIT_CONNECTION_THREADSNumber of threads to wait for database connection.Int4
POLLUX_DB_HOSTHostname of the server where the Pollux database is running.Stringlocalhost
POLLUX_DB_NAMEDatabase name where the Pollux database will store data.Stringpollux
POLLUX_DB_PASSWORDPollux database password for login.Stringpostgres
POLLUX_DB_PORTPort of the Pollux database.Int5432
POLLUX_DB_USERPollux database username for login.Stringpostgres
POLLUX_STATUS_LIST_REGISTRY_PUBLIC_URLURL of the status list registry used to verify the revocation of JWT credentials.Stringhttp://localhost:8085
PRESENTATION_INVITATION_EXPIRYThe presentation invitation expiry duration e.g 300 seconds. After which the OOB Request Presentation will expire.String300 seconds
PRESENTATION_LEEWAYTime leeway when verifying challenge dates.String0 seconds
PRESENTATION_VERIFY_DATESWhether or not to verify challenge dates during presentation.Booleanfalse
PRESENTATION_VERIFY_HOLDER_BINDINGWhether or not to verify holder binding when verifying presentations (ensures the presenter is the holder).Booleanfalse
PRESENTATION_VERIFY_SIGNATUREWhether or not to verify the signature of a challenge used during credential presentation.Booleantrue
PRISM_NODE_HOSTHostname of the server where the PRISM Node is running.Stringlocalhost
PRISM_NODE_PORTPort of the PRISM Node.Int50053
PRISM_NODE_USE_PLAIN_TEXTWhether or not to use plain text for PRISM Node communication gRPC protocol.Booleantrue
REST_SERVICE_URLURL of the REST service.Stringhttps://host.docker.internal:8080/cloud-agent
SECRET_STORAGE_BACKENDSecret storage backend for keys and credentials. If Vault is used, the Vault server must be running; otherwise, a database can be used for development purposes only.Enum(vault, postgres)vault
STATUS_LIST_SYNC_TRIGGER_RECURRENCE_DELAYTriggering status list revocation sync for revoked credentials delay in Hocon duration format.String30 seconds
VAULT_ADDRURL of the vault service for Cloud Agent to use for secret management.Stringhttp://localhost:8200
VAULT_APPROLE_ROLE_IDThe role_id for HashiCorp Vault authentication with AppRoleStringNull
VAULT_APPROLE_SECRET_IDThe secret_id for HashiCorp Vault authentication with AppRoleStringNull
VAULT_TOKENVault service auth token.StringNull
VAULT_USE_SEMANTIC_PATHEnable full path convention for vault secret path.Booleantrue
VDR_DATABASE_DRIVER_ENABLEDWhether or not to enable the database VDR driver.Booleanfalse
VDR_DEFAULT_KEY_IDDefault VDR key ID used for signing VDR operations when no specific key is provided.Stringvdr-1
VDR_MAX_DID_SCANMaximum number of DIDs to scan when searching for a VDR signing key in the current wallet.Int200
VDR_MEMORY_DRIVER_ENABLEDWhether or not to enable the in-memory VDR driver.Booleanfalse
VDR_NEOPRISM_DRIVER_ENABLEDWhether or not to enable the NeoPrism VDR driver. Requires NEOPRISM_BASE_URL to be configured.Booleanfalse
VDR_PRISM_NODE_DRIVER_ENABLEDWhether or not to enable the PRISM Node VDR driver. Uses the PRISM Node connection configured via PRISM_NODE_HOST and PRISM_NODE_PORT.Booleanfalse
VDR_PRISM_DRIVER_BLOCKFROST_API_KEYBlockfrost API key for public Blockfrost service. Mutually exclusive with private network configuration.StringNull
VDR_PRISM_DRIVER_DID_PRISMDID that will own the data. The DID should have an active VDR key.StringNull
VDR_PRISM_DRIVER_ENABLEDWhether or not to enable the Prism VDR driver. Corresponding Prism driver configuration must be set if this driver is enabled.Booleanfalse
VDR_PRISM_DRIVER_INDEX_INTERVAL_SECONDIndexer polling interval in seconds for the Prism VDR driver.Int60
VDR_PRISM_DRIVER_PRIVATE_NETWORK_PROTOCOL_MAGICProtocol magic number for private network Blockfrost instance. Must not be present if Blockfrost API key is provided.IntNull
VDR_PRISM_DRIVER_PRIVATE_NETWORK_URLPrivate network URL for local/private Blockfrost instance. Must not be present if Blockfrost API key is provided.StringNull
VDR_PRISM_DRIVER_VDR_PRIVATE_KEYVDR private key for the Prism driver. Must not be present if Blockfrost API key is provided.StringNull
VDR_PRISM_DRIVER_VDR_STATE_DIRState directory path for the VDR indexer.StringNull
VDR_PRISM_DRIVER_WALLET_MNEMONICWallet mnemonic phrase for DID configuration in the Prism driver. Must not be present if Blockfrost API key is provided.StringNull
WEBHOOK_PARALLELISMMaximum number of events that will be retrieved in a single iteration from the event queue by the webhook publisher.IntNull

Hocon duration format​

Hocon duration format is a string that represents a duration of time. It is used in the configuration file to specify the duration of time in seconds, minutes, hours, etc.

Null default value​

Null default value means that the variable is not set by default and must be set by the user based on the environment configuration.