Get an overview of a project.
GET /api/admin/projects/:projectId/overview
This endpoint returns an overview of the specified projects stats, project health, number of members, which environments are configured, and the features types in the project.
Request
Path Parameters
- projectId string required
- 200
- 401
- 403
- 404
projectOverviewSchema
- application/json
- Schema
- Example (from schema)
Schema
stats object
Project statistics
avgTimeToProdCurrentWindow number requiredThe average time from when a feature was created to when it was enabled in the "production" environment during the current window
createdCurrentWindow number requiredThe number of feature flags created during the current window
createdPastWindow number requiredThe number of feature flags created during the previous window
archivedCurrentWindow number requiredThe number of feature flags that were archived during the current window
archivedPastWindow number requiredThe number of feature flags that were archived during the previous window
projectActivityCurrentWindow number requiredThe number of project events that occurred during the current window
projectActivityPastWindow number requiredThe number of project events that occurred during the previous window
projectMembersAddedCurrentWindow number requiredThe number of members that were added to the project during the current window
- version integer required
The schema version used to describe the project overview
- name string required
The name of this project
- description string nullable
Additional information about the project
- defaultStickiness string
A default stickiness for the project affecting the default stickiness value for variants and Gradual Rollout strategy
- mode string
Possible values: [
open
,protected
,private
]The project's collaboration mode. Determines whether non-project members can submit change requests or not.
- featureLimit number nullable
A limit on the number of features allowed in the project. Null if no limit.
featureNaming object
Create a feature naming pattern
pattern string nullable requiredA JavaScript regular expression pattern, without the start and end delimiters. Optional flags are not allowed.
example string nullableAn example of a feature name that matches the pattern. Must itself match the pattern supplied.
description string nullableA description of the pattern in a human-readable format. Will be shown to users when they create a new feature flag.
- members number
The number of members this project has
- health number
An indicator of the project's health on a scale from 0 to 100
environments object[]
The environments that are enabled for this project
Array [environment string requiredThe environment to add to the project
changeRequestsEnabled booleanWhether change requests should be enabled or for this environment on the project or not
defaultStrategy object
A default strategy to create for this environment on the project.
name string requiredThe name of the strategy type
title string nullableA descriptive title for the strategy
disabled boolean nullableA toggle to disable the strategy. defaults to false. Disabled strategies are not evaluated or returned to the SDKs
sortOrder numberThe order of the strategy in the list
constraints object[]
A list of the constraints attached to the strategy. See https://docs.getunleash.io/reference/strategy-constraints
Array [contextName string requiredThe name of the context field that this constraint should apply to.
operator string requiredPossible 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 booleanDefault value:
false
Whether the operator should be case sensitive or not. Defaults to
false
(being case sensitive).inverted booleanDefault value:
false
Whether the result should be negated or not. If
true
, will turn atrue
result into afalse
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 stringThe 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 requiredThe variant name. Must be unique for this feature flag
weight integer requiredPossible 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 requiredPossible values: [
variable
,fix
]Set to
fix
if this variant must have exactly the weight allocated to it. If the type isvariable
, the weight will adjust so that the total weight of all variants adds up to 1000. Refer to the variant weight documentation.stickiness string requiredThe 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 requiredPossible values: [
json
,csv
,string
,number
]The type of the value. Commonly used types are string, number, json and csv.
value string requiredThe actual value of payload
]parameters object
A list of parameters for a strategy
property name* stringsegments number[]Ids of segments to use for this strategy
]featureTypeCounts object[]
The number of features of each type that are in this project
Array [type string requiredType of the flag e.g. experiment, kill-switch, release, operational, permission
count number requiredNumber of feature flags of this type
]- updatedAt date-time nullable
When the project was last updated.
- createdAt date-time nullable
When the project was created.
- favorite boolean
true
if the project was favorited, otherwisefalse
.
{
"stats": {
"avgTimeToProdCurrentWindow": 10,
"createdCurrentWindow": 15,
"createdPastWindow": 15,
"archivedCurrentWindow": 5,
"archivedPastWindow": 5,
"projectActivityCurrentWindow": 100,
"projectActivityPastWindow": 100,
"projectMembersAddedCurrentWindow": 1
},
"version": 1,
"name": "dx-squad",
"description": "DX squad feature release",
"defaultStickiness": "userId",
"mode": "open",
"featureLimit": 100,
"featureNaming": {
"pattern": "^[A-Za-z]+\\.[A-Za-z]+\\.[A-Za-z0-9-]+$",
"example": "dx.feature1.1-135",
"description": "<project>.<featureName>.<ticket>\n\nThe flag name should contain the project name, the feature name, and the ticket number, each separated by a dot."
},
"members": 4,
"health": 50,
"environments": [
{
"environment": "development"
},
{
"environment": "production",
"defaultStrategy": {
"name": "flexibleRollout",
"constraints": [],
"parameters": {
"rollout": "50",
"stickiness": "customAppName",
"groupId": "stickyFlag"
}
}
}
],
"featureTypeCounts": [
{
"type": "kill-switch",
"count": 1
}
],
"updatedAt": "2023-02-10T08:36:35.262Z",
"createdAt": "2023-02-10T08:36:35.262Z",
"favorite": true
}
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\"."
}