Export feature toggles from an environment
POST /api/admin/features-batch/export
Exports all features listed in the features property from the environment specified in the request body. If set to true, the downloadFile property will let you download a file with the exported data. Otherwise, the export data is returned directly as JSON. Refer to the documentation for more information about Unleash's export functionality.
Request
- application/json
Body
required
exportQuerySchema
- MOD1
- MOD2
- MOD3
- environment string requiredThe environment to export from 
- downloadFile booleanWhether to return a downloadable file 
- features string[] requiredPossible values: non-emptySelects features to export by name. If the list is empty all features are returned. 
- environment string requiredThe environment to export from 
- downloadFile booleanWhether to return a downloadable file 
- tag string requiredSelects features to export by tag. 
- environment string requiredThe environment to export from 
- downloadFile booleanWhether to return a downloadable file 
- project string requiredSelects project to export the features from. Used when no tags or features are provided. 
- 200
- 404
exportResultSchema
- application/json
- Schema
- Example (from schema)
Schema
- features object[]required- All the exported features. Array [name string required- Unique feature name type string- Type of the toggle e.g. experiment, kill-switch, release, operational, permission description string nullable- Detailed description of the feature archived boolean- trueif the feature is archivedproject string- Name of the project the feature belongs to enabled boolean- trueif the feature is enabled, otherwise- false.stale boolean- trueif the feature is stale based on the age and feature type, otherwise- false.favorite boolean- trueif the feature was favorited, otherwise- false.impressionData boolean- trueif the impression data collection is enabled for the feature, otherwise- false.createdAt date-time nullable- The date the feature was created archivedAt date-time nullable- The date the feature was archived lastSeenAt date-time nullable deprecated- The date when metrics where last collected for the feature. This field is deprecated, use the one in featureEnvironmentSchema - environments object[]- The list of environments where the feature can be used Array [name string required- The name of the environment featureName string- The name of the feature environment string- The name of the environment type string- The type of the environment enabled boolean required- trueif the feature is enabled for the environment, otherwise- false.sortOrder number- The sort order of the feature environment in the feature environments list variantCount number- The number of defined variants - strategies object[]- A list of activation strategies for the feature environment Array [id string- A uuid for the feature strategy name string required- The name or type of strategy title string nullable- A descriptive title for the strategy disabled boolean nullable- A toggle to disable the strategy. defaults to false. Disabled strategies are not evaluated or returned to the SDKs featureName string- The name or feature the strategy is attached to sortOrder number- The order of the strategy in the list segments number[]- A list of segment ids attached to the strategy - constraints object[]- A list of the constraints attached to the strategy. See https://docs.getunleash.io/reference/strategy-constraints Array [contextName string required- The name of the context field that this constraint should apply to. operator string required- 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]- The operator to use when evaluating this constraint. For more information about the various operators, refer to the strategy constraint operator documentation. caseInsensitive boolean- Default value: - false- Whether the operator should be case sensitive or not. Defaults to - false(being case sensitive).inverted boolean- Default value: - false- Whether the result should be negated or not. If - true, will turn a- trueresult into a- falseresult and vice versa.values string[]- The context values that should be used for constraint evaluation. Use this property instead of - valuefor properties that accept multiple values.value string- The context value that should be used for constraint evaluation. Use this property instead of - valuesfor properties that only accept single values.]- variants object[]- Strategy level variants Array [name string required- The variant name. Must be unique for this feature toggle weight integer required- Possible values: - <= 1000- 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 weightType string required- Possible values: [ - variable,- fix]- Set to - fixif 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.stickiness string required- The stickiness to use for distribution of this variant. Stickiness is how Unleash guarantees that the same user gets the same variant every time - payload object- Extra data configured for this variant type string required- Possible values: [ - json,- csv,- string,- number]- The type of the value. Commonly used types are string, number, json and csv. value string required- The actual value of payload ]- parameters object- A list of parameters for a strategy property name* string]- variants object[]- A list of variants for the feature environment Array [name string required- The variants name. Is unique for this feature toggle weight number required- Possible values: - <= 1000- The weight is the likelihood of any one user getting this variant. It is a number between 0 and 1000. See the section on variant weights for more information weightType string- Possible values: [ - variable,- fix]- 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 stickiness string- Stickiness is how Unleash guarantees that the same user gets the same variant every time - payload object- Extra data configured for this variant type string required- Possible values: [ - json,- csv,- string,- number]- The type of the value. Commonly used types are string, number, json and csv. value string required- The actual value of payload - overrides object[]- Overrides assigning specific variants to specific users. The weighting system automatically assigns users to specific groups for you, but any overrides in this list will take precedence. Array [contextName string required- The name of the context field used to determine overrides values string[] required- Which values that should be overriden ]]lastSeenAt date-time nullable- The date when metrics where last collected for the feature environment hasStrategies boolean- Whether the feature has any strategies defined. hasEnabledStrategies boolean- Whether the feature has any enabled strategies defined. ]- variants object[]deprecated- The list of feature variants Array [name string required- The variants name. Is unique for this feature toggle weight number required- Possible values: - <= 1000- The weight is the likelihood of any one user getting this variant. It is a number between 0 and 1000. See the section on variant weights for more information weightType string- Possible values: [ - variable,- fix]- 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 stickiness string- Stickiness is how Unleash guarantees that the same user gets the same variant every time - payload object- Extra data configured for this variant type string required- Possible values: [ - json,- csv,- string,- number]- The type of the value. Commonly used types are string, number, json and csv. value string required- The actual value of payload - overrides object[]- Overrides assigning specific variants to specific users. The weighting system automatically assigns users to specific groups for you, but any overrides in this list will take precedence. Array [contextName string required- The name of the context field used to determine overrides values string[] required- Which values that should be overriden ]]strategies object[] deprecated- This is a legacy field that will be deprecated - tags object[]nullable- The list of feature tags Array [value string required- The value of the tag ]children string[]- The list of child feature names. This is an experimental field and may change. - lifecycle object- Current lifecycle stage of the feature stage string required- Possible values: [ - initial,- pre-live,- live,- completed,- archived]- The name of the current lifecycle stage enteredStageAt date-time required- When the feature entered this stage - dependencies object[]- The list of parent dependencies. This is an experimental field and may change. Array [feature string required- The name of the parent feature enabled boolean- Whether the parent feature is enabled or not variants string[]- The list of variants the parent feature should resolve to. Only valid when feature is enabled. ]]
- featureStrategies object[]required- All strategy instances that are used by the exported features in the - featureslist.Array [id string- A uuid for the feature strategy name string required- The name or type of strategy title string nullable- A descriptive title for the strategy disabled boolean nullable- A toggle to disable the strategy. defaults to false. Disabled strategies are not evaluated or returned to the SDKs featureName string- The name or feature the strategy is attached to sortOrder number- The order of the strategy in the list segments number[]- A list of segment ids attached to the strategy - constraints object[]- A list of the constraints attached to the strategy. See https://docs.getunleash.io/reference/strategy-constraints Array [contextName string required- The name of the context field that this constraint should apply to. operator string required- 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]- The operator to use when evaluating this constraint. For more information about the various operators, refer to the strategy constraint operator documentation. caseInsensitive boolean- Default value: - false- Whether the operator should be case sensitive or not. Defaults to - false(being case sensitive).inverted boolean- Default value: - false- Whether the result should be negated or not. If - true, will turn a- trueresult into a- falseresult and vice versa.values string[]- The context values that should be used for constraint evaluation. Use this property instead of - valuefor properties that accept multiple values.value string- The context value that should be used for constraint evaluation. Use this property instead of - valuesfor properties that only accept single values.]- variants object[]- Strategy level variants Array [name string required- The variant name. Must be unique for this feature toggle weight integer required- Possible values: - <= 1000- 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 weightType string required- Possible values: [ - variable,- fix]- Set to - fixif 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.stickiness string required- The stickiness to use for distribution of this variant. Stickiness is how Unleash guarantees that the same user gets the same variant every time - payload object- Extra data configured for this variant type string required- Possible values: [ - json,- csv,- string,- number]- The type of the value. Commonly used types are string, number, json and csv. value string required- The actual value of payload ]- parameters object- A list of parameters for a strategy property name* string]
- featureEnvironments object[]- Environment-specific configuration for all the features in the - featureslist. Includes data such as whether the feature is enabled in the selected export environment, whether there are any variants assigned, etc.Array [name string required- The name of the environment featureName string- The name of the feature environment string- The name of the environment type string- The type of the environment enabled boolean required- trueif the feature is enabled for the environment, otherwise- false.sortOrder number- The sort order of the feature environment in the feature environments list variantCount number- The number of defined variants - strategies object[]- A list of activation strategies for the feature environment Array [id string- A uuid for the feature strategy name string required- The name or type of strategy title string nullable- A descriptive title for the strategy disabled boolean nullable- A toggle to disable the strategy. defaults to false. Disabled strategies are not evaluated or returned to the SDKs featureName string- The name or feature the strategy is attached to sortOrder number- The order of the strategy in the list segments number[]- A list of segment ids attached to the strategy - constraints object[]- A list of the constraints attached to the strategy. See https://docs.getunleash.io/reference/strategy-constraints Array [contextName string required- The name of the context field that this constraint should apply to. operator string required- 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]- The operator to use when evaluating this constraint. For more information about the various operators, refer to the strategy constraint operator documentation. caseInsensitive boolean- Default value: - false- Whether the operator should be case sensitive or not. Defaults to - false(being case sensitive).inverted boolean- Default value: - false- Whether the result should be negated or not. If - true, will turn a- trueresult into a- falseresult and vice versa.values string[]- The context values that should be used for constraint evaluation. Use this property instead of - valuefor properties that accept multiple values.value string- The context value that should be used for constraint evaluation. Use this property instead of - valuesfor properties that only accept single values.]- variants object[]- Strategy level variants Array [name string required- The variant name. Must be unique for this feature toggle weight integer required- Possible values: - <= 1000- 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 weightType string required- Possible values: [ - variable,- fix]- Set to - fixif 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.stickiness string required- The stickiness to use for distribution of this variant. Stickiness is how Unleash guarantees that the same user gets the same variant every time - payload object- Extra data configured for this variant type string required- Possible values: [ - json,- csv,- string,- number]- The type of the value. Commonly used types are string, number, json and csv. value string required- The actual value of payload ]- parameters object- A list of parameters for a strategy property name* string]- variants object[]- A list of variants for the feature environment Array [name string required- The variants name. Is unique for this feature toggle weight number required- Possible values: - <= 1000- The weight is the likelihood of any one user getting this variant. It is a number between 0 and 1000. See the section on variant weights for more information weightType string- Possible values: [ - variable,- fix]- 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 stickiness string- Stickiness is how Unleash guarantees that the same user gets the same variant every time - payload object- Extra data configured for this variant type string required- Possible values: [ - json,- csv,- string,- number]- The type of the value. Commonly used types are string, number, json and csv. value string required- The actual value of payload - overrides object[]- Overrides assigning specific variants to specific users. The weighting system automatically assigns users to specific groups for you, but any overrides in this list will take precedence. Array [contextName string required- The name of the context field used to determine overrides values string[] required- Which values that should be overriden ]]lastSeenAt date-time nullable- The date when metrics where last collected for the feature environment hasStrategies boolean- Whether the feature has any strategies defined. hasEnabledStrategies boolean- Whether the feature has any enabled strategies defined. ]
- contextFields object[]- A list of all the context fields that are in use by any of the strategies in the - featureStrategieslist.Array [name string required- The name of the context field description string nullable- The description of the context field. stickiness boolean- Does this context field support being used for stickiness calculations sortOrder integer- Used when sorting a list of context fields. Is also used as a tiebreaker if a list of context fields is sorted alphabetically. createdAt date-time nullable- When this context field was created usedInFeatures integer nullable- Number of projects where this context field is used in usedInProjects integer nullable- Number of projects where this context field is used in - legalValues object[]- Allowed values for this context field schema. Can be used to narrow down accepted input Array [value string required- The valid value description string- Describes this specific legal value ]]
- featureTags object[]- A list of all the tags that have been applied to any of the features in the - featureslist.Array [featureName string required- The name of the feature this tag is applied to tagType string- The [type](https://docs.getunleash.io/reference/tags#tag-types tag types) of the tag tagValue string required- The value of the tag type string deprecated- The [type](https://docs.getunleash.io/reference/tags#tag-types tag types) of the tag. This property is deprecated and will be removed in a future version of Unleash. Superseded by the - tagTypeproperty.value string deprecated- The value of the tag. This property is deprecated and will be removed in a future version of Unleash. Superseded by the - tagValueproperty.createdByUserId number nullable- The id of the user who created this tag ]
- segments object[]- A list of all the segments that are used by the strategies in the - featureStrategieslist.Array [id number requiredname string required]
- tagTypes object[]required- A list of all of the tag types that are used in the - featureTagslist.Array [name string required- The name of the tag type. description string- The description of the tag type. icon string nullable- The icon of the tag type. ]
- dependencies object[]- A list of all the dependencies for features in - featureslist.Array [feature string required- The name of the child feature. - dependencies object[]required- List of parent features for the child feature Array [feature string required- The name of the feature we depend on. enabled boolean- Whether the parent feature should be enabled. When - falsevariants are ignored.- trueby default.variants string[]- The list of variants the parent feature should resolve to. Leave empty when you only want to check the - enabledstatus.]]
{
  "features": [
    {
      "name": "my-feature",
      "description": "best feature ever",
      "type": "release",
      "project": "default",
      "stale": false,
      "impressionData": false,
      "archived": false
    }
  ],
  "featureStrategies": [
    {
      "name": "flexibleRollout",
      "id": "924974d7-8003-43ee-87eb-c5f887c06fd1",
      "featureName": "my-feature",
      "title": "Rollout 50%",
      "parameters": {
        "groupId": "default",
        "rollout": "50",
        "stickiness": "random"
      },
      "constraints": [],
      "disabled": false,
      "segments": [
        1
      ]
    }
  ],
  "featureEnvironments": [
    {
      "enabled": true,
      "featureName": "my-feature",
      "environment": "development",
      "variants": [
        {
          "name": "a",
          "weight": 500,
          "overrides": [],
          "stickiness": "random",
          "weightType": "variable"
        },
        {
          "name": "b",
          "weight": 500,
          "overrides": [],
          "stickiness": "random",
          "weightType": "variable"
        }
      ],
      "name": "variant-testing"
    }
  ],
  "contextFields": [
    {
      "name": "appName",
      "description": "Allows you to constrain on application name",
      "stickiness": false,
      "sortOrder": 2,
      "legalValues": []
    }
  ],
  "featureTags": [
    {
      "featureName": "my-feature",
      "tagType": "simple",
      "tagValue": "user-facing"
    }
  ],
  "segments": [
    {
      "id": 1,
      "name": "new-segment-name"
    }
  ],
  "tagTypes": [
    {
      "name": "simple",
      "description": "Used to simplify filtering of features",
      "icon": "#"
    }
  ],
  "dependencies": [
    {
      "feature": "child_feature",
      "dependencies": [
        {
          "feature": "parent_feature",
          "enabled": false,
          "variants": [
            "variantA",
            "variantB"
          ]
        }
      ]
    }
  ]
}
The requested resource was not found.
- application/json
- Schema
- Example (from schema)
Schema
- id stringThe ID of the error instance 
- name stringThe name of the error kind 
- message stringA description of what went wrong. 
{
  "id": "9c40958a-daac-400e-98fb-3bb438567008",
  "name": "NotFoundError",
  "message": "Could not find the addon with ID \"12345\"."
}