Environment variable configuration detail

May 13, 2026 ยท View on GitHub

NameExample ValueMeaning
APIAPP_MODEDOCKERCan be DEVELOPER or DOCKER. If it is set to DEVELOPER then the application will emmit Access-Control-Allow-* headers to allow for testing API's when called from browsers. This should never be set in production enviroments.
APIAPP_VERSION0.0.9Read in from launch file to allow the code version to be stored by the application. Output in webserver info service call
APIAPP_FRONTENDURL the user uses to access the frontend application. This is required so internal url's in the apidocs are pointed correctly. This should not be terminated with a slash.
APIAPP_APIURLURL the frontend applicaton application needs to access the API. Output in webserver info service call. This should not be terminated with a slash.
APIAPP_APIDOCSURLURL the user can use to access the Swagger UI API documentation. Output in webserver info service call. This should not be terminated with a slash.
APIAPP_APIACCESSSECURITYMust be valid JSON. Holds information the frontend needs to access the API. E.g. basic-auth means it will prompt the user for username and password and provide that in a header whenever it calls the API. Output in webserver info service call
APIAPP_FRONTENDURLURL the users access to view the frontend. This isn't used apart from for setting redirect url when the frontend is called without a slash. This is an optional paramater but if it isn't set redirects are sent to http://UNKNOWN.com/abc/frontend which is broken. This should not be terminated with a slash.

Environment Variables Conventions

Environment variables requested by the app should start APIAPP_* If the app finds them it uses them If the app finds a variable with the same start but ending with FILE the app will read from the file and use that string value If the app finds a variable with the same start but ending with VAULT the app will assume it's getting a vault path:param style reference and use the looked up string

Apps that use vault must supply: APIAPP_VAULT_URL APIAPP_VAULT_ROLE_ID APIAPP_VAULT_SECRET_ID (These can also have FILE at the end, but not VAULT)