ApikeeApikeeDocs
Getting started

Platform configuration

Configure the Apikee platform with environment variables for databases, storage, authentication, email, and AI integrations.

The platform reads configuration from two places. Values saved in the admin settings UI win over environment variables, so an operator can change SMTP or swap AI providers without a redeploy. Environment variables are the fallback, and the right place for values you want baked into a deployment.

APIKEE_SECRET is the only variable that is genuinely required.

Core

VariableDefaultNotes
APIKEE_SECRET—Required. 32-byte hex (openssl rand -hex 32). Signs every key.
APP_URL—Public HTTPS address. OAuth callbacks and emailed links are built from it.
APP_NAMEApikeeShown in the UI and in emails.
PORT4321Host port published by Compose.
NODE_ENVproduction
LOG_LEVELinfo
APIKEE_IMAGEghcr.io/apikee-dev/platform:latestImage used by Compose.

Data stores

VariableNotes
DATABASE_URLPostgreSQL. Projects, clients, keys, endpoints.
MONGO_URLMongoDB. Request logs.
POSTGRES_PASSWORD / MONGO_PASSWORDUsed by the bundled Compose services.
MINIO_ENDPOINTDefaults to http://localhost:9000.
MINIO_ACCESS_KEY / MINIO_SECRET_KEYObject storage for generated OpenAPI documents.

Pool tuning

Optional. Defaults shown.

VariableDefaultNotes
DATABASE_POOL_MAX10Connections per instance. Keep instances × pool under max_connections.
DATABASE_STATEMENT_TIMEOUT_MS30000Aborts a query so one slow statement cannot pin a connection.
DATABASE_CONNECT_TIMEOUT_MS10000
DATABASE_IDLE_TIMEOUT_MS30000
DATABASE_IDLE_TX_TIMEOUT_MS60000

First run and access

VariableNotes
ADMIN_EMAIL / ADMIN_PASSWORDSeeds the first admin account.
SETUP_COMPLETESet once the setup wizard has run.
ALLOW_SIGNUPSfalse by default — an open instance is rarely what you want.

Email

Needed for invitations, one-time codes and notifications. See Authentication.

VariableDefault
SMTP_HOST—
SMTP_PORT587
SMTP_USER / SMTP_PASS—
SMTP_FROM—

Sign-in providers

VariableNotes
GITHUB_CLIENT_ID / GITHUB_CLIENT_SECRETGitHub OAuth.
GOOGLE_CLIENT_ID / GOOGLE_CLIENT_SECRETGoogle OAuth.
OIDC_ISSUER, OIDC_CLIENT_ID, OIDC_CLIENT_SECRETGeneric OIDC / SSO.
OIDC_SCOPESDefault openid email profile.
OIDC_BUTTON_LABELText on the sign-in button.

Callback URLs are {APP_URL}/api/auth/callback/{provider}.

AI assistant

Optional and free. Full detail in AI assistant.

VariableNotes
AI_ENABLEDtrue to turn the assistant on.
AI_PROVIDERPreset id, e.g. ollama, openai, custom.
AI_BASE_URLOpenAI-compatible API root, usually ending /v1.
AI_MODELModel id as your endpoint names it.
AI_API_KEYOmit for local runtimes.
AI_REDACTIONstrict, standard (default) or off.
AI_MAX_TOKENS / AI_TEMPERATURE / AI_TIMEOUT_MSDefaults 1024 / 0.2 / 60000.
AI_ALLOW_METADATA_ENDPOINTEscape hatch for the link-local guard. Leave unset.

Licensing

VariableNotes
APIKEE_PREMIUMOptional licence key. Sets plan limits and seat counts.

A licence affects resource limits and support, not features. The AI assistant, the developer portal, OpenAPI generation and the REST API are all open source and available on every instance.

SDK variables

Read by the SDKs in your services, not by the platform.

VariableNotes
APIKEE_SECRETSigning secret. Must match the issuing service.
APIKEE_BASE_URLYour instance's API root, e.g. https://apikee.example.com/api/v1.
APIKEE_SERVER_KEYKey the SDK authenticates to the platform with.
APIKEE_PROJECT_ENVWhich environment to report into, e.g. payments-api-production.

.NET reads its secret as Apikee__Secret through standard configuration binding; the other three variables are shared across all SDKs.

On this page