Skip to main content

Clone a feature toggle

POST /api/admin/projects/:projectId/features/:featureName/clone

Creates a copy of the specified feature toggle. The copy can be created in any project.

Request

Path Parameters

  • projectId string required
  • featureName string required

Body

required

cloneFeatureSchema

  • name string required

    The name of the new feature

  • replaceGroupId boolean

    Whether to use the new feature name as its group ID or not. Group ID is used for calculating stickiness. Defaults to true.

Responses

featureSchema

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

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

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

  • type string required

    Default value: simple

    The type of the tag

  • ]
  • children string[]

    The list of child feature names. This is an experimental field and may change.

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

  • ]
Loading...