Set environment-default strategy
POST/api/admin/projects/:projectId/environments/:environment/default-strategy
Sets a default strategy for this environment. Unleash will use this strategy by default when enabling a toggle. Use the wild card "*" for :environment
to add to all environments.
Request
Path Parameters
- application/json
Body
required
createFeatureStrategySchema
Array [
]
Array [
]
The name of the strategy type
flexibleRollout
A descriptive title for the strategy
Gradual Rollout 25-Prod
A toggle to disable the strategy. defaults to false. Disabled strategies are not evaluated or returned to the SDKs
false
The order of the strategy in the list
9999
constraints
object[]
A list of the constraints attached to the strategy. See https://docs.getunleash.io/reference/strategy-constraints
The name of the context field that this constraint should apply to.
appName
The operator to use when evaluating this constraint. For more information about the various operators, refer to the strategy constraint operator documentation.
Possible values: [NOT_IN
, IN
, STR_ENDS_WITH
, STR_STARTS_WITH
, STR_CONTAINS
, NUM_EQ
, NUM_GT
, NUM_GTE
, NUM_LT
, NUM_LTE
, DATE_AFTER
, DATE_BEFORE
, SEMVER_EQ
, SEMVER_GT
, SEMVER_LT
]
IN
Whether the operator should be case sensitive or not. Defaults to false
(being case sensitive).
false
Whether the result should be negated or not. If true
, will turn a true
result into a false
result and vice versa.
false
The context values that should be used for constraint evaluation. Use this property instead of value
for properties that accept multiple values.
["my-app","my-other-app"]
The context value that should be used for constraint evaluation. Use this property instead of values
for properties that only accept single values.
my-app
variants
object[]
Strategy level variants
The variant name. Must be unique for this feature flag
blue_group
The weight is the likelihood of any one user getting this variant. It is an integer between 0 and 1000. See the section on variant weights for more information
Possible values: <= 1000
Set to fix
if this variant must have exactly the weight allocated to it. If the type is variable
, the weight will adjust so that the total weight of all variants adds up to 1000. Refer to the variant weight documentation.
Possible values: [variable
, fix
]
fix
The stickiness to use for distribution of this variant. Stickiness is how Unleash guarantees that the same user gets the same variant every time
custom.context.field
payload
object
Extra data configured for this variant
The type of the value. Commonly used types are string, number, json and csv.
Possible values: [json
, csv
, string
, number
]
The actual value of payload
parameters
object
A list of parameters for a strategy
Ids of segments to use for this strategy
[1,2]
Responses
- 200
- 400
createFeatureStrategySchema
- application/json
- Schema
- Example (from schema)
Schema
Array [
]
Array [
]
The name of the strategy type
flexibleRollout
A descriptive title for the strategy
Gradual Rollout 25-Prod
A toggle to disable the strategy. defaults to false. Disabled strategies are not evaluated or returned to the SDKs
false
The order of the strategy in the list
9999
constraints
object[]
A list of the constraints attached to the strategy. See https://docs.getunleash.io/reference/strategy-constraints
The name of the context field that this constraint should apply to.
appName
The operator to use when evaluating this constraint. For more information about the various operators, refer to the strategy constraint operator documentation.
Possible values: [NOT_IN
, IN
, STR_ENDS_WITH
, STR_STARTS_WITH
, STR_CONTAINS
, NUM_EQ
, NUM_GT
, NUM_GTE
, NUM_LT
, NUM_LTE
, DATE_AFTER
, DATE_BEFORE
, SEMVER_EQ
, SEMVER_GT
, SEMVER_LT
]
IN
Whether the operator should be case sensitive or not. Defaults to false
(being case sensitive).
false
Whether the result should be negated or not. If true
, will turn a true
result into a false
result and vice versa.
false
The context values that should be used for constraint evaluation. Use this property instead of value
for properties that accept multiple values.
["my-app","my-other-app"]
The context value that should be used for constraint evaluation. Use this property instead of values
for properties that only accept single values.
my-app
variants
object[]
Strategy level variants
The variant name. Must be unique for this feature flag
blue_group
The weight is the likelihood of any one user getting this variant. It is an integer between 0 and 1000. See the section on variant weights for more information
Possible values: <= 1000
Set to fix
if this variant must have exactly the weight allocated to it. If the type is variable
, the weight will adjust so that the total weight of all variants adds up to 1000. Refer to the variant weight documentation.
Possible values: [variable
, fix
]
fix
The stickiness to use for distribution of this variant. Stickiness is how Unleash guarantees that the same user gets the same variant every time
custom.context.field
payload
object
Extra data configured for this variant
The type of the value. Commonly used types are string, number, json and csv.
Possible values: [json
, csv
, string
, number
]
The actual value of payload
parameters
object
A list of parameters for a strategy
Ids of segments to use for this strategy
[1,2]
{
"name": "flexibleRollout",
"title": "Gradual Rollout 25-Prod",
"disabled": false,
"sortOrder": 9999,
"constraints": [
{
"values": [
"1",
"2"
],
"inverted": false,
"operator": "IN",
"contextName": "appName",
"caseInsensitive": false
}
],
"variants": [
{
"name": "blue_group",
"weight": 0,
"weightType": "fix",
"stickiness": "custom.context.field",
"payload": {
"type": "json",
"value": "{\"color\": \"red\"}"
}
}
],
"parameters": {
"groupId": "some_new",
"rollout": "25",
"stickiness": "sessionId"
},
"segments": [
1,
2
]
}
The request data does not match what we expect.
- application/json
- Schema
- Example (from schema)
Schema
The ID of the error instance
9c40958a-daac-400e-98fb-3bb438567008
The name of the error kind
ValidationError
A description of what went wrong.
The request payload you provided doesn't conform to the schema. The .parameters property should be object. You sent [].
{
"id": "9c40958a-daac-400e-98fb-3bb438567008",
"name": "ValidationError",
"message": "The request payload you provided doesn't conform to the schema. The .parameters property should be object. You sent []."
}