Skip to main content

Configuration File

Edit docker/web-api/.web.env before starting the service.

Required Variables

VariableDefaultDescription
SECRETrpd_pksJWT signing secret — must be identical across all services
POSTGRES__HOSTpostgresPostgreSQL host
POSTGRES__DB_NAMEweb_dbDatabase name
POSTGRES__AUTH__USERrapida_userDatabase user
POSTGRES__AUTH__PASSWORDDatabase password
REDIS__HOSTredisRedis host
INTEGRATION_HOSTintegration-api:9004integration-api gRPC address
ENDPOINT_HOSTendpoint-api:9005endpoint-api gRPC address
ASSISTANT_HOSTassistant-api:9007assistant-api gRPC address
DOCUMENT_HOSThttp://document-api:9010document-api HTTP address
SECRET is used for both JWT signing and credential vault encryption. All services must share the same value. Changing it in production will invalidate all active sessions and make stored vault credentials unreadable. Rotate carefully.

Service Identity

VariableDefaultDescription
SERVICE_NAMEweb-apiInternal service label
HOST0.0.0.0Bind address
PORT9001HTTP / gRPC / gRPC-web port
LOG_LEVELdebugdebug · info · warn · error
ENVdevelopmentdevelopment · staging · production

PostgreSQL

VariableDefaultDescription
POSTGRES__HOSTpostgresHost (localhost for local dev)
POSTGRES__PORT5432Port
POSTGRES__DB_NAMEweb_dbDatabase name
POSTGRES__AUTH__USERrapida_userUser
POSTGRES__AUTH__PASSWORDrapida_db_passwordPassword
POSTGRES__MAX_OPEN_CONNECTION10Connection pool size
POSTGRES__MAX_IDEAL_CONNECTION10Idle connections
POSTGRES__SSL_MODEdisabledisable · require · verify-full
POSTGRES__SLC_CACHE__HOSTredisRedis host for second-level GORM cache
POSTGRES__SLC_CACHE__PORT6379Redis port for GORM cache
POSTGRES__SLC_CACHE__DB1Redis DB index for GORM cache
POSTGRES__SLC_CACHE__MAX_CONNECTION10Redis pool size

Redis

VariableDefaultDescription
REDIS__HOSTredisRedis host (localhost for local dev)
REDIS__PORT6379Redis port
REDIS__MAX_CONNECTION5Connection pool size

Asset Storage

VariableDefaultDescription
ASSET_STORE__STORAGE_TYPElocallocal · s3 · azure
ASSET_STORE__STORAGE_PATH_PREFIX/app/rapida-data/assets/webPath for local storage

Internal Service Addresses

VariableDefaultDescription
INTEGRATION_HOSTintegration-api:9004integration-api gRPC (localhost:9004 for local dev)
ENDPOINT_HOSTendpoint-api:9005endpoint-api gRPC (localhost:9005 for local dev)
ASSISTANT_HOSTassistant-api:9007assistant-api gRPC (localhost:9007 for local dev)
WEB_HOSTweb-api:9001Self-reference for intra-service gRPC
DOCUMENT_HOSThttp://document-api:9010document-api HTTP (http://localhost:9010 for local dev)
UI_HOSThttps://localhost:3000Dashboard UI origin (used for OAuth redirect validation)

Full Environment File

# ── Service identity ──────────────────────────────────────────────
SERVICE_NAME=web-api
HOST=0.0.0.0
PORT=9001
LOG_LEVEL=debug
SECRET=rpd_pks
ENV=development

# ── PostgreSQL ────────────────────────────────────────────────────
POSTGRES__HOST=postgres
POSTGRES__PORT=5432
POSTGRES__DB_NAME=web_db
POSTGRES__AUTH__USER=rapida_user
POSTGRES__AUTH__PASSWORD=rapida_db_password
POSTGRES__MAX_OPEN_CONNECTION=10
POSTGRES__MAX_IDEAL_CONNECTION=10
POSTGRES__SSL_MODE=disable

# ── Redis (second-level GORM cache) ───────────────────────────────
POSTGRES__SLC_CACHE__HOST=redis
POSTGRES__SLC_CACHE__PORT=6379
POSTGRES__SLC_CACHE__DB=1
POSTGRES__SLC_CACHE__MAX_CONNECTION=10

# ── Redis ─────────────────────────────────────────────────────────
REDIS__HOST=redis
REDIS__PORT=6379
REDIS__MAX_CONNECTION=5

# ── Asset storage ─────────────────────────────────────────────────
ASSET_STORE__STORAGE_TYPE=local
ASSET_STORE__STORAGE_PATH_PREFIX=/app/rapida-data/assets/web

# ── Internal service addresses ────────────────────────────────────
INTEGRATION_HOST=integration-api:9004
ENDPOINT_HOST=endpoint-api:9005
ASSISTANT_HOST=assistant-api:9007
WEB_HOST=web-api:9001
DOCUMENT_HOST=http://document-api:9010
UI_HOST=https://localhost:3000

Next Steps