Skip to main content

Set environment-default strategy

POST 

<your-unleash-url>/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 feature flag. Use the wild card "*" for :environment to add to all environments.

Request

Path Parameters

    projectId stringrequired
    environment stringrequired

Bodyrequired

createFeatureStrategySchema

    namestringrequired

    The name of the strategy type

    Example: flexibleRollout
    titlestringnullable

    A descriptive title for the strategy

    Example: Gradual Rollout 25-Prod
    disabledbooleannullable

    A toggle to disable the strategy. defaults to false. Disabled strategies are not evaluated or returned to the SDKs

    Example: false
    sortOrdernumber

    The order of the strategy in the list

    Example: 9999
    constraints object[]

    A list of the constraints attached to the strategy. See https://docs.getunleash.io/reference/activation-strategies#constraints

  • Array [
  • contextNamestringrequired

    The name of the context field that this constraint should apply to.

    Example: appName
    operatorstringrequired

    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]

    Example: IN
    caseInsensitiveboolean

    Whether the operator should be case sensitive or not. Defaults to false (being case sensitive).

    Default value: false
    invertedboolean

    Whether the result should be negated or not. If true, will turn a true result into a false result and vice versa.

    Default value: false
    valuesstring[]

    The context values that should be used for constraint evaluation. Use this property instead of value for properties that accept multiple values.

    Example: ["my-app","my-other-app"]
    valuestring

    The context value that should be used for constraint evaluation. Use this property instead of values for properties that only accept single values.

    Example: my-app
  • ]
  • variants object[]

    Strategy level variants

  • Array [
  • namestringrequired

    The variant name. Must be unique for this feature flag

    Example: blue_group
    weightintegerrequired

    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

    weightTypestringrequired

    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]

    Example: fix
    stickinessstringrequired

    The stickiness to use for distribution of this variant. Stickiness is how Unleash guarantees that the same user gets the same variant every time

    Example: custom.context.field
    payload object

    Extra data configured for this variant

    typestringrequired

    The type of the value. Commonly used types are string, number, json and csv.

    Possible values: [json, csv, string, number]

    valuestringrequired

    The actual value of payload

  • ]
  • parameters object

    A list of parameters for a strategy

    property name*string
    segmentsnumber[]

    Ids of segments to use for this strategy

    Example: [1,2]

Responses

createFeatureStrategySchema

Schema
    namestringrequired

    The name of the strategy type

    Example: flexibleRollout
    titlestringnullable

    A descriptive title for the strategy

    Example: Gradual Rollout 25-Prod
    disabledbooleannullable

    A toggle to disable the strategy. defaults to false. Disabled strategies are not evaluated or returned to the SDKs

    Example: false
    sortOrdernumber

    The order of the strategy in the list

    Example: 9999
    constraints object[]

    A list of the constraints attached to the strategy. See https://docs.getunleash.io/reference/activation-strategies#constraints

  • Array [
  • contextNamestringrequired

    The name of the context field that this constraint should apply to.

    Example: appName
    operatorstringrequired

    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]

    Example: IN
    caseInsensitiveboolean

    Whether the operator should be case sensitive or not. Defaults to false (being case sensitive).

    Default value: false
    invertedboolean

    Whether the result should be negated or not. If true, will turn a true result into a false result and vice versa.

    Default value: false
    valuesstring[]

    The context values that should be used for constraint evaluation. Use this property instead of value for properties that accept multiple values.

    Example: ["my-app","my-other-app"]
    valuestring

    The context value that should be used for constraint evaluation. Use this property instead of values for properties that only accept single values.

    Example: my-app
  • ]
  • variants object[]

    Strategy level variants

  • Array [
  • namestringrequired

    The variant name. Must be unique for this feature flag

    Example: blue_group
    weightintegerrequired

    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

    weightTypestringrequired

    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]

    Example: fix
    stickinessstringrequired

    The stickiness to use for distribution of this variant. Stickiness is how Unleash guarantees that the same user gets the same variant every time

    Example: custom.context.field
    payload object

    Extra data configured for this variant

    typestringrequired

    The type of the value. Commonly used types are string, number, json and csv.

    Possible values: [json, csv, string, number]

    valuestringrequired

    The actual value of payload

  • ]
  • parameters object

    A list of parameters for a strategy

    property name*string
    segmentsnumber[]

    Ids of segments to use for this strategy

    Example: [1,2]

Authorization: Authorization

name: Authorizationtype: apiKeyin: headerdescription: API key needed to access this API

Request Collapse all
Base URL
<your-unleash-url>
Auth
Parameters
— pathrequired
— pathrequired
Body required
{
  "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
  ]
}
ResponseClear

Click the Send API Request button above and see the response here!