Search and filter features
GET<your-unleash-url>/api/admin/search/features
Search and filter by selected fields.
Request
Query Parameters
The search query for the feature name or tag
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.
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.
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.
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.
Possible values: Value must match regular expression ^(INCLUDE|DO_NOT_INCLUDE|INCLUDE_ALL_OF|INCLUDE_ANY_OF|EXCLUDE_IF_ANY_OF|EXCLUDE_ALL):([^:,]+:.+?)(,\s*[^:,]+:.+?)*$
The list of feature tags to filter by. Feature tag has to specify a type and a value joined with a colon.
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.
The list of feature environment status to filter by. Feature environment has to specify a name and a status joined with a colon.
The number of features to skip when returning a page. By default it is set to 0.
The number of feature environments to return in a page. By default it is set to 50.
The field to sort the results by. By default it is set to "createdAt".
Possible values: [asc
, desc
]
The sort order for the sortBy. By default it is det to "asc".
The flag to indicate if the favorite features should be returned first. By default it is set to false.
Whether to get results for archived feature flags or active feature flags. If true
, Unleash will return only archived flags. If false
, it will return only active flags.
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.
Responses
- 200
- 401
- 403
- 404
searchFeaturesSchema
- application/json
- Schema
- Example (auto)
Schema
features object[]required
Total count of the features matching search and filter criteria
10
{
"features": [
{
"name": "disable-comments",
"type": "kill-switch",
"description": "Controls disabling of the comments section in case of an incident",
"dependencyType": "parent",
"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 (auto)
Schema
The ID of the error instance
9c40958a-daac-400e-98fb-3bb438567008
The name of the error kind
AuthenticationRequired
A 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 (auto)
Schema
The ID of the error instance
9c40958a-daac-400e-98fb-3bb438567008
The name of the error kind
NoAccessError
A 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 (auto)
Schema
The ID of the error instance
9c40958a-daac-400e-98fb-3bb438567008
The name of the error kind
NotFoundError
A 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\"."
}
Authorization: Authorization
name: Authorizationtype: apiKeyin: headerdescription: API key needed to access this API
- curl
- python
- go
- nodejs
- ruby
- csharp
- php
- java
- powershell
- CURL
curl -L '<your-unleash-url>/api/admin/search/features' \
-H 'Accept: application/json' \
-H 'Authorization: <Authorization>'