Search and filter features
GET <your-unleash-url>/api/admin/search/features
Authorization
name: Authorizationtype: apiKeyin: headerdescription: API key needed to access this API
Search and filter by selected fields.
Request
Query Parameters
- query string
The search query for the feature name or tag
- project string
Possible values: Value must match regular expression
^(IS|IS_NOT|IS_ANY_OF|IS_NONE_OF):(.*?)(,([a-zA-Z0-9_]+))*$
Id of the project where search and filter is performed. The project id can be specified with an operator. The supported operators are IS, IS_NOT, IS_ANY_OF, IS_NONE_OF.
- state string
Possible values: Value must match regular expression
^(IS|IS_NOT|IS_ANY_OF|IS_NONE_OF):(.*?)(,([a-zA-Z0-9_]+))*$
The state of the feature active/stale. The state can be specified with an operator. The supported operators are IS, IS_NOT, IS_ANY_OF, IS_NONE_OF.
- type string
Possible values: Value must match regular expression
^(IS|IS_NOT|IS_ANY_OF|IS_NONE_OF):(.*?)(,([a-zA-Z0-9_]+))*$
The feature flag type to filter by. The type can be specified with an operator. The supported operators are IS, IS_NOT, IS_ANY_OF, IS_NONE_OF.
- createdBy string
Possible values: Value must match regular expression
^(IS|IS_NOT|IS_ANY_OF|IS_NONE_OF):(.*?)(,([a-zA-Z0-9_]+))*$
The feature flag creator to filter by. The creators can be specified with an operator. The supported operators are IS, IS_NOT, IS_ANY_OF, IS_NONE_OF.
- tag string
Possible values: Value must match regular expression
^(INCLUDE|DO_NOT_INCLUDE|INCLUDE_ALL_OF|INCLUDE_ANY_OF|EXCLUDE_IF_ANY_OF|EXCLUDE_ALL):(?:\s*[^,:]+:[^,:]+\s*)(?:,\s*[^,:]+:[^,:]+\s*)*$
The list of feature tags to filter by. Feature tag has to specify a type and a value joined with a colon.
- segment string
Possible values: Value must match regular expression
^(INCLUDE|DO_NOT_INCLUDE|INCLUDE_ALL_OF|INCLUDE_ANY_OF|EXCLUDE_IF_ANY_OF|EXCLUDE_ALL):(.*?)(,([a-zA-Z0-9_]+))*$
The list of segments with operators to filter by. The segment valid operators are INCLUDE, DO_NOT_INCLUDE, INCLUDE_ALL_OF, INCLUDE_ANY_OF, EXCLUDE_IF_ANY_OF, EXCLUDE_ALL.
- status string[]
The list of feature environment status to filter by. Feature environment has to specify a name and a status joined with a colon.
- offset string
The number of features to skip when returning a page. By default it is set to 0.
- limit string
The number of feature environments to return in a page. By default it is set to 50.
- sortBy string
The field to sort the results by. By default it is set to "createdAt".
- sortOrder string
Possible values: [
asc
,desc
]The sort order for the sortBy. By default it is det to "asc".
- favoritesFirst string
The flag to indicate if the favorite features should be returned first. By default it is set to false.
- createdAt string
Possible values: Value must match regular expression
^(IS_BEFORE|IS_ON_OR_AFTER):\d{4}-\d{2}-\d{2}$
The date the feature was created. The date can be specified with an operator. The supported operators are IS_BEFORE, IS_ON_OR_AFTER.
- 200
- 401
- 403
- 404
searchFeaturesSchema
- application/json
- Schema
- Example (from schema)
Schema
features object[]required
- total number
Total count of the features matching search and filter criteria
{
"features": [
{
"name": "disable-comments",
"type": "kill-switch",
"description": "Controls disabling of the comments section in case of an incident",
"dependencyType": "parent",
"archived": true,
"project": "dx-squad",
"stale": false,
"favorite": true,
"impressionData": false,
"createdAt": "2023-01-28T15:21:39.975Z",
"archivedAt": "2023-01-29T15:21:39.975Z",
"environments": [
{
"name": "my-dev-env",
"featureName": "disable-comments",
"environment": "development",
"type": "development",
"enabled": true,
"sortOrder": 3,
"variantCount": 0,
"strategies": [
{
"id": "6b5157cb-343a-41e7-bfa3-7b4ec3044840",
"name": "flexibleRollout",
"title": "Gradual Rollout 25-Prod",
"disabled": false,
"featureName": "myAwesomeFeature",
"sortOrder": 9999,
"segments": [
1,
2
],
"constraints": [
{
"contextName": "appName",
"operator": "IN",
"caseInsensitive": false,
"inverted": false,
"values": [
"my-app",
"my-other-app"
],
"value": "my-app"
}
],
"variants": [
{
"name": "blue_group",
"weight": 0,
"weightType": "fix",
"stickiness": "custom.context.field",
"payload": {
"type": "json",
"value": "{\"color\": \"red\"}"
}
}
],
"parameters": {}
}
],
"variants": [
{
"name": "blue_group",
"weight": 0,
"weightType": "variable",
"stickiness": "custom.context.field",
"payload": {
"type": "json",
"value": "{\"color\": \"red\"}"
},
"overrides": [
{
"contextName": "userId",
"values": [
"red",
"blue"
]
}
]
}
],
"lastSeenAt": "2023-01-28T16:21:39.975Z",
"hasStrategies": true,
"hasEnabledStrategies": true,
"yes": 974,
"no": 50
}
],
"segments": [
"pro-users",
"main-segment"
],
"tags": [
{
"value": "a-tag-value",
"type": "simple"
}
],
"lifecycle": {
"stage": "initial",
"status": "kept",
"enteredStageAt": "2023-01-28T15:21:39.975Z"
},
"createdBy": {
"id": 123,
"name": "User",
"imageUrl": "https://example.com/242x200.png"
}
}
],
"total": 10
}
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
- id string
The ID of the error instance
- name string
The name of the error kind
- message string
A description of what went wrong.
{
"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
- id string
The ID of the error instance
- name string
The name of the error kind
- message string
A description of what went wrong.
{
"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
- id string
The ID of the error instance
- name string
The name of the error kind
- message string
A description of what went wrong.
{
"id": "9c40958a-daac-400e-98fb-3bb438567008",
"name": "NotFoundError",
"message": "Could not find the addon with ID \"12345\"."
}
Authorization
name: Authorizationtype: apiKeyin: headerdescription: API key needed to access this API
Request
Request
curl -L -X GET '<your-unleash-url>/api/admin/search/features' \
-H 'Accept: application/json' \
-H 'Authorization: <API_KEY_VALUE>'
curl -L -X GET '<your-unleash-url>/api/admin/search/features' \
-H 'Accept: application/json' \
-H 'Authorization: <API_KEY_VALUE>'
curl -L -X GET '<your-unleash-url>/api/admin/search/features' \
-H 'Accept: application/json' \
-H 'Authorization: <API_KEY_VALUE>'
curl -L -X GET '<your-unleash-url>/api/admin/search/features' \
-H 'Accept: application/json' \
-H 'Authorization: <API_KEY_VALUE>'
curl -L -X GET '<your-unleash-url>/api/admin/search/features' \
-H 'Accept: application/json' \
-H 'Authorization: <API_KEY_VALUE>'
curl -L -X GET '<your-unleash-url>/api/admin/search/features' \
-H 'Accept: application/json' \
-H 'Authorization: <API_KEY_VALUE>'
curl -L -X GET '<your-unleash-url>/api/admin/search/features' \
-H 'Accept: application/json' \
-H 'Authorization: <API_KEY_VALUE>'
curl -L -X GET '<your-unleash-url>/api/admin/search/features' \
-H 'Accept: application/json' \
-H 'Authorization: <API_KEY_VALUE>'
curl -L -X GET '<your-unleash-url>/api/admin/search/features' \
-H 'Accept: application/json' \
-H 'Authorization: <API_KEY_VALUE>'