Skip to main content

Validate feature import data

POST /api/admin/features-batch/validate

Validates a feature flag data set. Checks whether the data can be imported into the specified project and environment. The returned value is an object that contains errors, warnings, and permissions required to perform the import, as described in the import documentation.

Request

Body

required

importTogglesSchema

  • project string required

    The exported project

  • environment string required

    The exported environment

  • data objectrequired

    The result of the export operation, providing you with the feature flag definitions, strategy definitions and the rest of the elements relevant to the features (tags, environments etc.)

  • features object[]required

    All the exported features.

  • Array [
  • name string required

    Unique feature name

  • type string

    Type of the flag e.g. experiment, kill-switch, release, operational, permission

  • description string nullable

    Detailed description of the feature

  • archived boolean

    true if the feature is archived

  • project string

    Name of the project the feature belongs to

  • enabled boolean

    true if the feature is enabled, otherwise false.

  • stale boolean

    true if the feature is stale based on the age and feature type, otherwise false.

  • favorite boolean

    true if the feature was favorited, otherwise false.

  • impressionData boolean

    true if 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 was deprecated in v5, 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

    true if 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 true result into a false result and vice versa.

  • values string[]

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

  • value string

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

  • ]
  • variants object[]

    Strategy level variants

  • Array [
  • name string required

    The variant name. Must be unique for this feature flag

  • 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 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.

  • 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 flag

  • 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 flag

  • 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 was deprecated in v5 and will be removed in a future major version

  • tags object[]nullable

    The list of feature tags

  • Array [
  • value string required

    Possible values: >= 2 characters and <= 50 characters

    The value of the tag.

  • type string required

    Possible values: >= 2 characters and <= 50 characters

    The type 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 features list.

  • 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 true result into a false result and vice versa.

  • values string[]

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

  • value string

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

  • ]
  • variants object[]

    Strategy level variants

  • Array [
  • name string required

    The variant name. Must be unique for this feature flag

  • 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 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.

  • 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 features list. 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

    true if 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 true result into a false result and vice versa.

  • values string[]

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

  • value string

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

  • ]
  • variants object[]

    Strategy level variants

  • Array [
  • name string required

    The variant name. Must be unique for this feature flag

  • 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 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.

  • 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 flag

  • 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 featureStrategies list.

  • 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 features list.

  • 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 tagType property.

  • 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 tagValue property.

  • 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 featureStrategies list.

  • Array [
  • id number required
  • name string required
  • ]
  • tagTypes object[]required

    A list of all of the tag types that are used in the featureTags list.

  • 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 features list.

  • 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 false variants are ignored. true by default.

  • variants string[]

    The list of variants the parent feature should resolve to. Leave empty when you only want to check the enabled status.

  • ]
  • ]
Responses

importTogglesValidateSchema

Schema
  • errors object[]required

    A list of errors that prevent the provided data from being successfully imported.

  • Array [
  • message string required

    The validation error message

  • affectedItems string[] required

    The items affected by this error message

  • ]
  • warnings object[]required

    A list of warnings related to the provided data.

  • Array [
  • message string required

    The validation error message

  • affectedItems string[] required

    The items affected by this error message

  • ]
  • permissions object[]

    Any additional permissions required to import the data. If the list is empty, you require no additional permissions beyond what your user already has.

  • Array [
  • message string required

    The validation error message

  • affectedItems string[] required

    The items affected by this error message

  • ]
Loading...