Configuration parameters
Configuration parameters allow applications to be dynamic, flexible, and environment-specific. They enable managing variables and values that change across deployment environments (e.g., Development, QA, Production), without requiring hardcoded updates. This feature is particularly valuable for managing sensitive information, environment-specific settings, and configurations for integrations.
Configuration Parameters are defined per application version, ensuring consistency across builds while allowing for environment-specific overrides. These parameters can be used across various components, such as business rules, UI elements, integration designer, and gateways.
Default and override values
- Default Value: Defined during parameter creation and included in the application build. It serves as the fallback value when no environment-specific override is set.
- Override Value: A value defined post-deployment for a specific environment. Overrides take precedence during runtime.
For details on configuring runtime overrides, see:
Configuration Parameters Overrides
Types of configuration parameters
Configuration parameters are defined as key-value pairs and support the following types:
Value
A static value directly used by the application. Suitable for settings that do not change across environments.
-
Use Cases:
- Feature flags to toggle functionality (e.g., enabling/disabling insurance sales in a customer dashboard).
- Email addresses for notification recipients.
- Homebank redirect URLs for specific processes.
-
Example:
- Key:
officeEmail
- Type:
value
- Value:
officeEmail@office.com
- Key:
Environment variable
References an external variable set by the DevOps team. These variables are defined per environment and referenced using a name convention.
-
Use Cases:
- Environment-specific API base URLs.
- Dynamic configuration of services or integrations.
-
Example:
- Key:
baseUrl
- Type:
environment variable
- Value:
BASE_URL
(name convention pointing to an externally defined value)
- Key:
Configuration details:
Key | Type | Value | Description |
---|---|---|---|
baseUrl | environment variable | BASE_URL | A reference to the base URL configured externally by DevOps. |
Example values for different environments
Environment | External Variable Name | Actual Value |
---|---|---|
Development | BASE_URL | https://dev.example.com/api |
QA | BASE_URL | https://qa.example.com/api |
Production | BASE_URL | https://api.example.com |
Secret environment variable
Used for sensitive data like passwords, API keys, or credentials. These values are securely managed by DevOps and referenced using a name convention.
-
Use Cases:
- Passwords or tokens for integrations.
- Secure configuration of external services in the integration designer.
-
Example:
- Key:
dbPassword
- Type:
secret environment variable
- Value:
DB_PASSWORD
- Key:
Use cases for configuration parameters
Configuration parameters simplify the management of environment-specific or dynamic settings across multiple application components:
- Business Rules:
- Define dynamic logic based on parameters such as feature toggles or environment-specific conditions.
- UI Elements:
- Configure content dynamically based on the environment (e.g., URLs for redirects, conditional features).
- Integration Designer:
- Reference the token parameter.
- Gateways:
- Dynamically manage routing and decision-making logic using environment-specific parameters.
Adding a configuration parameter
To add a new configuration parameter:
- Navigate to Your Application → Configuration Parameters.
- Click New Parameter and provide the following:
- Key: Name of the parameter.
- Type: Select
value
,environment variable
, orsecret environment variable
. - Value:
- For
value
: Enter the static value. - For
environment variable
orsecret environment variable
: Enter the agreed name convention.
- For
- Click Save to include the parameter in the application build.
Technical notes and best practices
Security
- Sensitive Values (ENV_SECRET):
- Store and manage securely.
- Do not display in the frontend or expose via public APIs.
- Avoid logging sensitive information.
Environment-specific updates
- Environment variable updates (
ENV
/ENV_SECRET
) are managed by DevOps. - Updates may require service restarts unless a caching or real-time mechanism (e.g., change streams) is implemented.
Reserved keys
- Certain keys are reserved for system use (e.g.,
processInstanceId
). Avoid using reserved keys for custom configurations.
Was this page helpful?