Get the environments available to a project
GET/api/admin/environments/project/:projectId
Gets the environments that are available for this project. An environment is available for a project if enabled in the project configuration
Request
Path Parameters
Responses
- 200
- 401
- 403
- 404
environmentsProjectSchema
- application/json
- Schema
- Example (from schema)
Schema
Array [
Array [
]
Array [
]
]
Version of the environments schema
1environments
object[]
required
List of environments
The name of the environment
developmenttrue if the environment is enabled for the project, otherwise false
truetrue if the environment is protected, otherwise false. A protected environment can not be deleted.
falsePriority of the environment in a list of environments, the lower the value, the higher up in the list the environment will appear
1The number of client and front-end API tokens that have access to this project
5The number of features enabled in this environment for this project
7defaultStrategy
object
The strategy configuration to add when enabling a feature environment by default
The name of the strategy type
flexibleRolloutA descriptive title for the strategy
Gradual Rollout 25-ProdA toggle to disable the strategy. defaults to false. Disabled strategies are not evaluated or returned to the SDKs
falseThe order of the strategy in the list
9999constraints
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.
appNameThe 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]
INWhether the operator should be case sensitive or not. Defaults to false (being case sensitive).
falseWhether the result should be negated or not. If true, will turn a true result into a false result and vice versa.
falseThe 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-appvariants
object[]
Strategy level variants
The variant name. Must be unique for this feature flag
blue_groupThe 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]
fixThe 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.fieldpayload
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]{
"version": 1,
"environments": [
{
"name": "development",
"type": "production",
"enabled": true,
"protected": false,
"sortOrder": 1,
"projectApiTokenCount": 5,
"projectEnabledToggleCount": 7,
"defaultStrategy": {
"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
]
}
}
]
}
Authorization information is missing or invalid. Provide a valid API token as the authorization header, e.g. authorization:*.*.my-admin-token.
- application/json
- Schema
- Example (from schema)
Schema
The ID of the error instance
9c40958a-daac-400e-98fb-3bb438567008The name of the error kind
AuthenticationRequiredA description of what went wrong.
You must log in to use Unleash. Your request had no authorization header, so we could not authorize you. Try logging in at /auth/simple/login.{
"id": "9c40958a-daac-400e-98fb-3bb438567008",
"name": "AuthenticationRequired",
"message": "You must log in to use Unleash. Your request had no authorization header, so we could not authorize you. Try logging in at /auth/simple/login."
}
The provided user credentials are valid, but the user does not have the necessary permissions to perform this operation
- application/json
- Schema
- Example (from schema)
Schema
The ID of the error instance
9c40958a-daac-400e-98fb-3bb438567008The name of the error kind
NoAccessErrorA description of what went wrong.
You need the "UPDATE_ADDON" permission to perform this action in the "development" environment.{
"id": "9c40958a-daac-400e-98fb-3bb438567008",
"name": "NoAccessError",
"message": "You need the \"UPDATE_ADDON\" permission to perform this action in the \"development\" environment."
}
The requested resource was not found.
- application/json
- Schema
- Example (from schema)
Schema
The ID of the error instance
9c40958a-daac-400e-98fb-3bb438567008The name of the error kind
NotFoundErrorA description of what went wrong.
Could not find the addon with ID "12345".{
"id": "9c40958a-daac-400e-98fb-3bb438567008",
"name": "NotFoundError",
"message": "Could not find the addon with ID \"12345\"."
}