Update a feature flag configuration for a specific environment
PATCH/feature-flags/:siteCode/:featureKey/:environmentKey
Updates the configuration of a feature flag using a JSON Merge Patch for the specified site code, feature key, and environment key. Note: If you need to modify an element within an array, the entire array — including all its fields — must be provided, as partial updates to array elements are not supported.
Request
Path Parameters
Possible values: >= 10 characters and <= 10 characters
Possible values: non-empty
Possible values: non-empty
- application/json
Body
required
- BucketingKeyCustomDataDto
- BucketingKeyVisitorCodeDto
Array [
]
Array [
]
Array [
- ExperimentationRuleRequest
- ProgressiveRuleRequest
- TargetedRuleRequest
Array [
]
Array [
]
Array [
]
- CustomRampUpRollout
- ProgressiveExposure
Array [
]
Array [
]
]
Array [
]
Array [
Array [
]
]
Attribution window in milliseconds
bucketingKey
object
oneOf
Possible values: [VISITOR_CODE, CUSTOM_DATA]
Possible values: [VISITOR_CODE, CUSTOM_DATA]
The default variation key to serve in this environment
Possible values: <= 255 characters
Description of the feature flag
Possible values: <= 5000 characters
Indicates if the feature flag is enabled in this environment
Key used to identify the feature flag
Possible values: non-empty and <= 255 characters
integrations
object
required
Integrations associated with the feature flag environment
deliveryRules
object[]
List of integrations enabled for delivery rules
experimentRules
object[]
List of integrations enabled for experimentation rules
Flag indicating if the feature flag is archived
Name of the feature flag
Possible values: non-empty and <= 100 characters
Primary goal associated with the feature flag
rolloutRules
object[]
required
The rollout rules for this environment
oneOf
Represents an experimentation rule configuration
ID of the rule
Name of the rule
Possible values: <= 100 characters
Order index of the rule execution
Perform traffic reallocation
release
object
Defines the release period for the rule
Rule being applied from this date
Rule being applied to this date
Timezone regarding the release of this rule
Europe/ParisrollbackConditions
object[]
Conditions under which the rule will be rolled back
The rollback condition comparison operator
Possible values: [GREATER_THAN, LESS_THAN]
The rollback condition criteria
Possible values: [UPLIFT, DOWNLIFT, CONVERSION_RATE]
The rollback condition goal ID
The rollback condition ID
The rollback condition match value (0.0001 to 100)
Possible values: >= 0.0001 and <= 100
List of emails of recipients who will be notified when conditions are triggered
The rollback condition target
Possible values: [RULE, ENVIRONMENT]
The rollback condition visitors
Possible values: >= 1
ID of the segment targeted by this rule
Wished state of the rule
Possible values: [ACTIVE, PAUSED]
Type of the rule
Possible values: [PROGRESSIVE_DELIVERY, TARGETED_DELIVERY, EXPERIMENTATION]
Key of the control variation for this rule
Percentage of the traffic exposed to this rule
Possible values: <= 100
Enable dynamic allocation for this rule (Multi-Armed Bandit)
Defines how traffic is distributed in the SDK
Possible values: [CONTEXTUAL_BANDIT, MANUAL, MULTI_ARMED_BANDIT]
trafficAllocations
object[]
Traffic allocation settings for the rule
Represents a progressive delivery rule configuration
ID of the rule
Name of the rule
Possible values: <= 100 characters
Order index of the rule execution
Perform traffic reallocation
release
object
Defines the release period for the rule
Rule being applied from this date
Rule being applied to this date
Timezone regarding the release of this rule
Europe/ParisrollbackConditions
object[]
Conditions under which the rule will be rolled back
The rollback condition comparison operator
Possible values: [GREATER_THAN, LESS_THAN]
The rollback condition criteria
Possible values: [UPLIFT, DOWNLIFT, CONVERSION_RATE]
The rollback condition goal ID
The rollback condition ID
The rollback condition match value (0.0001 to 100)
Possible values: >= 0.0001 and <= 100
List of emails of recipients who will be notified when conditions are triggered
The rollback condition target
Possible values: [RULE, ENVIRONMENT]
The rollback condition visitors
Possible values: >= 1
ID of the segment targeted by this rule
Wished state of the rule
Possible values: [ACTIVE, PAUSED]
Type of the rule
Possible values: [PROGRESSIVE_DELIVERY, TARGETED_DELIVERY, EXPERIMENTATION]
rolloutConfiguration
object
Configuration for the progressive rollout
oneOf
Custom Ramp-Up rollout configuration
Type of the feature rollout
Possible values: [PROGRESSIVE_EXPOSURE, CUSTOM_RAMP_UP]
steps
object[]
required
List of rollout steps
Possible values: >= 1
Date time of the step
2025-06-01T00:00:00Exposure of the step
Progressive exposure rollout configuration
Type of the feature rollout
Possible values: [PROGRESSIVE_EXPOSURE, CUSTOM_RAMP_UP]
frequency
object
Frequency of the progressive rollout
Unit
Possible values: [Nanos, Micros, Millis, Seconds, Minutes, Hours, HalfDays, Days, Weeks, Months, Years, Decades, Centuries, Millennia, Eras, Forever]
Value
Possible values: >= 1
Increment value in percentage
Possible values: >= 1 and <= 100
percentageRange
object
required
Percentage range of the rollout
Percentage starts at
Possible values: <= 100
Percentage stops at
Possible values: <= 100
Release date time
Variation key used as control in experiments
Possible values: <= 255 characters
Represents a targeted delivery rule configuration
ID of the rule
Name of the rule
Possible values: <= 100 characters
Order index of the rule execution
Perform traffic reallocation
release
object
Defines the release period for the rule
Rule being applied from this date
Rule being applied to this date
Timezone regarding the release of this rule
Europe/ParisrollbackConditions
object[]
Conditions under which the rule will be rolled back
The rollback condition comparison operator
Possible values: [GREATER_THAN, LESS_THAN]
The rollback condition criteria
Possible values: [UPLIFT, DOWNLIFT, CONVERSION_RATE]
The rollback condition goal ID
The rollback condition ID
The rollback condition match value (0.0001 to 100)
Possible values: >= 0.0001 and <= 100
List of emails of recipients who will be notified when conditions are triggered
The rollback condition target
Possible values: [RULE, ENVIRONMENT]
The rollback condition visitors
Possible values: >= 1
ID of the segment targeted by this rule
Wished state of the rule
Possible values: [ACTIVE, PAUSED]
Type of the rule
Possible values: [PROGRESSIVE_DELIVERY, TARGETED_DELIVERY, EXPERIMENTATION]
Percentage of the traffic exposed to this rule. Required if creating, can be omitted on update for no change.
Possible values: <= 100
Variation key used as control in experiments
Possible values: <= 255 characters
Secondary goals associated with the feature flag
List of tags associated with the feature flag
variables
object[]
required
Variables associated with the feature flag
Key to identify the variable
Possible values: <= 255 characters
Type of the variable
Possible values: [BOOLEAN, NUMBER, STRING, JSON, JS, CSS]
Value of the variable
Possible values: non-empty
variations
object[]
required
Variations associated with the feature flag
Key of the variation
Possible values: <= 255 characters
Name of the variation
Possible values: <= 255 characters
variables
object[]
Set of variables implemented by the variation
Key to identify the variable
Possible values: <= 255 characters
Value of the variable
Possible values: non-empty
Responses
- 200
- 400
- 403
- 404
- 423
- 500
OK
- application/json
- Schema
- Example (from schema)
Schema
- BucketingKeyCustomDataDto
- BucketingKeyVisitorCodeDto
Array [
Array [
]
Array [
]
Array [
- ExperimentationRuleResponse
- FeatureRolloutTargetedRule
- ProgressiveRuleResponse
Array [
]
Array [
]
Array [
]
Array [
]
Array [
]
Array [
]
- CustomRampUpRollout
- ProgressiveExposure
Array [
]
]
]
Array [
]
Array [
Array [
]
]
Attribution window
bucketingKey
object
Bucketing key used for the feature flag
oneOf
Possible values: [VISITOR_CODE, CUSTOM_DATA]
Possible values: [VISITOR_CODE, CUSTOM_DATA]
Date and time when the feature flag configuration content was last modified
Date and time when the feature flag configuration was created
Date and time when the feature flag configuration was last modified
Description of the feature
Possible values: <= 5000 characters
environmentConfigurations
object[]
Environment-specific configurations for the feature flag
The date when this environment configuration was last modified
Default variation key to serve in this environment
Environment key of this configuration
Indicates if the feature flag is enabled in this environment
integrations
object
Integrations associated with the feature flag environment
deliveryRules
object[]
List of integrations enabled for delivery rules
experimentRules
object[]
List of integrations enabled for experimentation rules
rolloutRules
object[]
Rollout rules for this environment
oneOf
Rule which can specify a segment of visitors to be exposed to an experimentation
ID of the experiment linked to this rule
Unique identifier of the rule
Name of the rule
release
object
Release date information about this rule
Rule being applied from this date
2025-06-01T00:00:00Rule being applied to this date
2025-06-01T23:59:00Timezone regarding the release of this rule
Europe/ParisrollbackConditions
object[]
Conditions for defining rollback
The rollback condition comparison operator
Possible values: [GREATER_THAN, LESS_THAN]
The rollback condition criteria
Possible values: [UPLIFT, DOWNLIFT, CONVERSION_RATE]
The rollback condition goal ID
The rollback condition ID
The rollback condition match value
Possible values: >= 0.0001 and <= 100
50List of emails of recipients who will be notified when conditions are triggered
The rollback condition target
Possible values: [RULE, ENVIRONMENT]
The rollback condition visitors
Possible values: >= 1
1000ID of the segment linked to this rule
Status of the rule
Possible values: [ACTIVE, PAUSED, PLANNED]
trafficAllocations
object[]
Traffic allocation settings for the rule
Type of the rule
Possible values: [TARGETED_DELIVERY, PROGRESSIVE_DELIVERY, EXPERIMENTATION]
Percentage of the traffic exposed to this rule
Possible values: <= 100
(Deprecated, use trafficAllocationMethod instead) Enable dynamic allocation for this rule (Multi-Armed Bandit)
Defines how traffic is distributed in the SDK
Possible values: [CONTEXTUAL_BANDIT, MANUAL, MULTI_ARMED_BANDIT]
Rule which can specify a segment of visitors to expose
ID of the experiment linked to this rule
Unique identifier of the rule
Name of the rule
release
object
Release date information about this rule
Rule being applied from this date
2025-06-01T00:00:00Rule being applied to this date
2025-06-01T23:59:00Timezone regarding the release of this rule
Europe/ParisrollbackConditions
object[]
Conditions for defining rollback
The rollback condition comparison operator
Possible values: [GREATER_THAN, LESS_THAN]
The rollback condition criteria
Possible values: [UPLIFT, DOWNLIFT, CONVERSION_RATE]
The rollback condition goal ID
The rollback condition ID
The rollback condition match value
Possible values: >= 0.0001 and <= 100
50List of emails of recipients who will be notified when conditions are triggered
The rollback condition target
Possible values: [RULE, ENVIRONMENT]
The rollback condition visitors
Possible values: >= 1
1000ID of the segment linked to this rule
Status of the rule
Possible values: [ACTIVE, PAUSED, PLANNED]
trafficAllocations
object[]
Traffic allocation settings for the rule
Type of the rule
Possible values: [TARGETED_DELIVERY, PROGRESSIVE_DELIVERY, EXPERIMENTATION]
Percentage of the traffic exposed to this rule
Possible values: <= 100
Key of the variation to serve to visitors matching this rule
Rule which can specify a segment of visitors to expose progressively
ID of the experiment linked to this rule
Unique identifier of the rule
Name of the rule
release
object
Release date information about this rule
Rule being applied from this date
2025-06-01T00:00:00Rule being applied to this date
2025-06-01T23:59:00Timezone regarding the release of this rule
Europe/ParisrollbackConditions
object[]
Conditions for defining rollback
The rollback condition comparison operator
Possible values: [GREATER_THAN, LESS_THAN]
The rollback condition criteria
Possible values: [UPLIFT, DOWNLIFT, CONVERSION_RATE]
The rollback condition goal ID
The rollback condition ID
The rollback condition match value
Possible values: >= 0.0001 and <= 100
50List of emails of recipients who will be notified when conditions are triggered
The rollback condition target
Possible values: [RULE, ENVIRONMENT]
The rollback condition visitors
Possible values: >= 1
1000ID of the segment linked to this rule
Status of the rule
Possible values: [ACTIVE, PAUSED, PLANNED]
trafficAllocations
object[]
Traffic allocation settings for the rule
Type of the rule
Possible values: [TARGETED_DELIVERY, PROGRESSIVE_DELIVERY, EXPERIMENTATION]
rolloutConfiguration
object
oneOf
Custom Ramp-Up rollout configuration
Type of the feature rollout
Possible values: [PROGRESSIVE_EXPOSURE, CUSTOM_RAMP_UP]
steps
object[]
required
List of rollout steps
Possible values: >= 1
Date time of the step
2025-06-01T00:00:00Exposure of the step
Progressive exposure rollout configuration
Type of the feature rollout
Possible values: [PROGRESSIVE_EXPOSURE, CUSTOM_RAMP_UP]
frequency
object
Frequency of the progressive rollout
Unit
Possible values: [Nanos, Micros, Millis, Seconds, Minutes, Hours, HalfDays, Days, Weeks, Months, Years, Decades, Centuries, Millennia, Eras, Forever]
Value
Possible values: >= 1
Increment value in percentage
Possible values: >= 1 and <= 100
percentageRange
object
required
Percentage range of the rollout
Percentage starts at
Possible values: <= 100
Percentage stops at
Possible values: <= 100
Release date time
Key of the variation to serve to visitors matching this rule
Key used to identify the feature flag
Possible values: non-empty and <= 255 characters
Health of the feature flag (for temporary ones)
Possible values: [PERMANENT, HEALTHY, STALE, SMELLY]
System-generated unique string of integers to identify a feature flag
Name of the feature flag
Possible values: non-empty and <= 100 characters
Primary goal of the feature flag
Secondary goals associated with the feature flag
Unique Id for the project in the Kameleoon app. This is an optional field to be included as query parameters
Possible values: non-empty and <= 10 characters
List of tags associated with the feature flag. This is an optional field to be included as query parameters
variables
object[]
Variables associated with the feature flag
Key to identify the variable
Possible values: <= 255
Type of the variable
Possible values: [BOOLEAN, NUMBER, STRING, JSON, JS, CSS]
Value of the variable
variations
object[]
Variations associated with the feature flag
Key of the variation
Possible values: <= 255
Name of the variation
Possible values: <= 255
variables
object[]
Set of variables implemented by the variation
Key to identify the variable
Possible values: <= 255
Type of the variable
Possible values: [BOOLEAN, NUMBER, STRING, JSON, JS, CSS]
Value of the variable
{
"archived": true,
"attributionWindow": 0,
"dateContentModified": "2024-07-29T15:51:28.071Z",
"dateCreated": "2024-07-29T15:51:28.071Z",
"dateModified": "2024-07-29T15:51:28.071Z",
"description": "string",
"environmentConfigurations": [
{
"dateModified": "2024-07-29T15:51:28.071Z",
"defaultVariationKey": "string",
"environmentKey": "string",
"featureEnabled": true,
"integrations": {
"deliveryRules": [
{}
],
"experimentRules": [
{}
]
},
"rolloutRules": [
null,
null,
null
]
}
],
"featureKey": "string",
"health": "PERMANENT",
"id": 0,
"name": "string",
"primaryGoalId": 0,
"secondaryGoalIds": [
0
],
"siteCode": "string",
"tags": [
"string"
],
"variables": [
{
"key": "string",
"type": "BOOLEAN",
"value": "string"
}
],
"variations": [
{
"key": "string",
"name": "string",
"variables": [
{
"key": "string",
"type": "BOOLEAN",
"value": "string"
}
]
}
]
}
Bad Request
- application/json
- Schema
- Example (from schema)
Schema
{
"message": "string",
"serviceName": "string",
"status": "string",
"time": 0
}
Forbidden
- application/json
- Schema
- Example (from schema)
Schema
{
"message": "string",
"serviceName": "string",
"status": "string",
"time": 0
}
Feature flag for provided site code and feature key not found
- application/json
- Schema
- Example (from schema)
Schema
{
"message": "string",
"serviceName": "string",
"status": "string",
"time": 0
}
Resource Locked
- application/json
- Schema
- Example (from schema)
Schema
{
"message": "string",
"serviceName": "string",
"status": "string",
"time": 0
}
Internal Server Error
- application/json
- Schema
- Example (from schema)
Schema
{
"message": "string",
"serviceName": "string",
"status": "string",
"time": 0
}