DevCycle Management API (1.0.0)
Download OpenAPI specification:Download
An API for managing features and variables on the DevCycle platform.
An authorization token can be obtained from (https://auth.devcycle.com/oauth/token) using the client id and secret from the DevCycle dashboard
Example using curl:
curl --request POST \
--url "https://auth.devcycle.com/oauth/token" \
--header 'content-type: application/x-www-form-urlencoded' \
--data grant_type=client_credentials \
--data audience=https://api.devcycle.com/ \
--data client_id=<client id> \
--data client_secret=<client secret>
Create Project
Create a new Project
Request Body schema: application/jsonrequired
name required | string [ 1 .. 100 ] characters Project name |
key required | string [ 1 .. 100 ] characters ^[a-z0-9-_.]+$ A unique key to identify the Project |
description | string <= 1000 characters A description of the Project |
color | string <= 9 characters ^#([0-9A-Fa-f]{3}|[0-9A-Fa-f]{4}|[0-9A-Fa-f]{... Project display color, used to highlight different projects on the dashboard. Must use Hex color code. |
required | object (ProjectSettingsDTO) |
Responses
Request samples
- Payload
{- "name": "Delivery App",
- "key": "delivery-app",
- "description": "A web app to manage outbound deliveries",
- "color": "#4073FF",
- "settings": {
- "edgeDB": {
- "enabled": true
}, - "optIn": {
- "title": "string",
- "description": "string",
- "enabled": true,
- "imageURL": "string",
- "colors": {
- "primary": "string",
- "secondary": "string"
}, - "poweredByAlignment": "center"
}, - "sdkTypeVisibility": {
- "enabledInFeatureSettings": true
}, - "lifeCycle": {
- "disableCodeRefChecks": true
}, - "obfuscation": {
- "enabled": true,
- "required": true
}, - "disablePassthroughRollouts": true
}
}
Response samples
- 201
- 400
- 409
{- "_id": "61450f3daec96f5cf4a49946",
- "_organization": "string",
- "_createdBy": "string",
- "name": "Delivery App",
- "key": "delivery-app",
- "description": "A web app to manage outbound deliveries",
- "color": "#4073FF",
- "settings": {
- "edgeDB": {
- "enabled": true
}, - "optIn": {
- "enabled": true,
- "title": "string",
- "description": "string",
- "imageURL": "string",
- "colors": {
- "primary": "string",
- "secondary": "string"
}, - "poweredByAlignment": { }
}, - "sdkTypeVisibility": {
- "enabledInFeatureSettings": true
}, - "lifeCycle": {
- "disableCodeRefChecks": true
}, - "obfuscation": {
- "enabled": true,
- "required": true
}, - "featureApprovalWorkflow": {
- "enabled": true,
- "allowPublisherBypass": true,
- "defaultReviewers": [
- "string"
]
}, - "disablePassthroughRollouts": true
}, - "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "hasJiraIntegration": true,
- "hasReceivedCodeUsages": true,
- "hasUserConfigFetch": true,
- "jiraBaseUrl": "string",
- "readonly": true,
- "vercelEdgeConfigConnections": [
- {
- "edgeConfigName": "string",
- "configurationId": "string"
}
]
}
List Projects
List Projects
query Parameters
page | number >= 1 Default: 1 |
perPage | number [ 1 .. 1000 ] Default: 100 |
sortBy | string Default: "createdAt" |
sortOrder | string Default: "desc" Enum: "asc" "desc" |
search | string |
createdBy | string |
Responses
Response samples
- 200
- 400
[- {
- "_id": "61450f3daec96f5cf4a49946",
- "_organization": "string",
- "_createdBy": "string",
- "name": "Delivery App",
- "key": "delivery-app",
- "description": "A web app to manage outbound deliveries",
- "color": "#4073FF",
- "settings": {
- "edgeDB": {
- "enabled": true
}, - "optIn": {
- "enabled": true,
- "title": "string",
- "description": "string",
- "imageURL": "string",
- "colors": {
- "primary": "string",
- "secondary": "string"
}, - "poweredByAlignment": { }
}, - "sdkTypeVisibility": {
- "enabledInFeatureSettings": true
}, - "lifeCycle": {
- "disableCodeRefChecks": true
}, - "obfuscation": {
- "enabled": true,
- "required": true
}, - "featureApprovalWorkflow": {
- "enabled": true,
- "allowPublisherBypass": true,
- "defaultReviewers": [
- "string"
]
}, - "disablePassthroughRollouts": true
}, - "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "hasJiraIntegration": true,
- "hasReceivedCodeUsages": true,
- "hasUserConfigFetch": true,
- "jiraBaseUrl": "string",
- "readonly": true,
- "vercelEdgeConfigConnections": [
- {
- "edgeConfigName": "string",
- "configurationId": "string"
}
]
}
]
Get a Project
Get a Project by ID or key
path Parameters
key required | string A Project key or ID |
Responses
Response samples
- 200
- 404
{- "_id": "61450f3daec96f5cf4a49946",
- "_organization": "string",
- "_createdBy": "string",
- "name": "Delivery App",
- "key": "delivery-app",
- "description": "A web app to manage outbound deliveries",
- "color": "#4073FF",
- "settings": {
- "edgeDB": {
- "enabled": true
}, - "optIn": {
- "enabled": true,
- "title": "string",
- "description": "string",
- "imageURL": "string",
- "colors": {
- "primary": "string",
- "secondary": "string"
}, - "poweredByAlignment": { }
}, - "sdkTypeVisibility": {
- "enabledInFeatureSettings": true
}, - "lifeCycle": {
- "disableCodeRefChecks": true
}, - "obfuscation": {
- "enabled": true,
- "required": true
}, - "featureApprovalWorkflow": {
- "enabled": true,
- "allowPublisherBypass": true,
- "defaultReviewers": [
- "string"
]
}, - "disablePassthroughRollouts": true
}, - "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "hasJiraIntegration": true,
- "hasReceivedCodeUsages": true,
- "hasUserConfigFetch": true,
- "jiraBaseUrl": "string",
- "readonly": true,
- "vercelEdgeConfigConnections": [
- {
- "edgeConfigName": "string",
- "configurationId": "string"
}
]
}
Update a Project
Update a Project by ID or key
path Parameters
key required | string A Project key or ID |
Request Body schema: application/jsonrequired
name | string [ 1 .. 100 ] characters Project name |
key | string [ 1 .. 100 ] characters ^[a-z0-9-_.]+$ A unique key to identify the Project |
description | string <= 1000 characters A description of the Project |
color | string <= 9 characters ^#([0-9A-Fa-f]{3}|[0-9A-Fa-f]{4}|[0-9A-Fa-f]{... Project display color, used to highlight different projects on the dashboard. Must use Hex color code. |
object (ProjectSettingsDTO) |
Responses
Request samples
- Payload
{- "name": "Delivery App",
- "key": "delivery-app",
- "description": "A web app to manage outbound deliveries",
- "color": "#4073FF",
- "settings": {
- "edgeDB": {
- "enabled": true
}, - "optIn": {
- "title": "string",
- "description": "string",
- "enabled": true,
- "imageURL": "string",
- "colors": {
- "primary": "string",
- "secondary": "string"
}, - "poweredByAlignment": "center"
}, - "sdkTypeVisibility": {
- "enabledInFeatureSettings": true
}, - "lifeCycle": {
- "disableCodeRefChecks": true
}, - "obfuscation": {
- "enabled": true,
- "required": true
}, - "disablePassthroughRollouts": true
}
}
Response samples
- 200
- 400
- 404
- 409
{- "_id": "61450f3daec96f5cf4a49946",
- "_organization": "string",
- "_createdBy": "string",
- "name": "Delivery App",
- "key": "delivery-app",
- "description": "A web app to manage outbound deliveries",
- "color": "#4073FF",
- "settings": {
- "edgeDB": {
- "enabled": true
}, - "optIn": {
- "enabled": true,
- "title": "string",
- "description": "string",
- "imageURL": "string",
- "colors": {
- "primary": "string",
- "secondary": "string"
}, - "poweredByAlignment": { }
}, - "sdkTypeVisibility": {
- "enabledInFeatureSettings": true
}, - "lifeCycle": {
- "disableCodeRefChecks": true
}, - "obfuscation": {
- "enabled": true,
- "required": true
}, - "featureApprovalWorkflow": {
- "enabled": true,
- "allowPublisherBypass": true,
- "defaultReviewers": [
- "string"
]
}, - "disablePassthroughRollouts": true
}, - "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "hasJiraIntegration": true,
- "hasReceivedCodeUsages": true,
- "hasUserConfigFetch": true,
- "jiraBaseUrl": "string",
- "readonly": true,
- "vercelEdgeConfigConnections": [
- {
- "edgeConfigName": "string",
- "configurationId": "string"
}
]
}
Update Protected Settings for a Project
Update the Protect Settings for a Project by ID or key
path Parameters
key required | string A Project key or ID |
Request Body schema: application/jsonrequired
required | object (ProtectedProjectSettingsDto) | ||||||||||
|
Responses
Request samples
- Payload
{- "settings": {
- "featureApprovalWorkflow": {
- "enabled": true,
- "allowPublisherBypass": true,
- "defaultReviewers": [
- "string"
]
}
}
}
Response samples
- 200
- 400
- 404
- 409
{- "_id": "61450f3daec96f5cf4a49946",
- "_organization": "string",
- "_createdBy": "string",
- "name": "Delivery App",
- "key": "delivery-app",
- "description": "A web app to manage outbound deliveries",
- "color": "#4073FF",
- "settings": {
- "edgeDB": {
- "enabled": true
}, - "optIn": {
- "enabled": true,
- "title": "string",
- "description": "string",
- "imageURL": "string",
- "colors": {
- "primary": "string",
- "secondary": "string"
}, - "poweredByAlignment": { }
}, - "sdkTypeVisibility": {
- "enabledInFeatureSettings": true
}, - "lifeCycle": {
- "disableCodeRefChecks": true
}, - "obfuscation": {
- "enabled": true,
- "required": true
}, - "featureApprovalWorkflow": {
- "enabled": true,
- "allowPublisherBypass": true,
- "defaultReviewers": [
- "string"
]
}, - "disablePassthroughRollouts": true
}, - "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "hasJiraIntegration": true,
- "hasReceivedCodeUsages": true,
- "hasUserConfigFetch": true,
- "jiraBaseUrl": "string",
- "readonly": true,
- "vercelEdgeConfigConnections": [
- {
- "edgeConfigName": "string",
- "configurationId": "string"
}
]
}
Create Environment
Create a new Environment
path Parameters
project required | string A Project key or ID |
Request Body schema: application/jsonrequired
name required | string [ 1 .. 100 ] characters A unique display name |
key required | string [ 1 .. 100 ] characters ^[a-z0-9-_.]+$ Unique Environment identifier, can be used in the SDK / API to reference by key rather than ID.
Must only contain lower-case characters and |
description | string <= 1000 characters Environment description. |
color | string <= 9 characters ^#([0-9A-Fa-f]{3}|[0-9A-Fa-f]{4}|[0-9A-Fa-f]{... Environment display color, used to highlight different environments on the dashboard. Must use Hex color code. |
type required | string Enum: "development" "staging" "production" "disaster_recovery" The environment type |
object Environment based settings |
Responses
Request samples
- Payload
{- "name": "Staging Upcoming",
- "key": "staging-upcoming",
- "description": "Pre-production changes",
- "color": "#4073FF",
- "type": "staging",
- "settings": {
- "appIconURI": "string"
}
}
Response samples
- 201
- 400
- 409
{- "name": "Staging Upcoming",
- "key": "staging-upcoming",
- "description": "Pre-production changes",
- "color": "#4073FF",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "type": "staging",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "sdkKeys": {
- "mobile": [
- {
- "key": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "compromised": true
}
], - "client": [
- {
- "key": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "compromised": true
}
], - "server": [
- {
- "key": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "compromised": true
}
]
}, - "settings": {
- "appIconURI": "string"
}, - "readonly": true
}
List Environments
List Environments
path Parameters
project required | string A Project key or ID |
query Parameters
page | number >= 1 Default: 1 |
perPage | number [ 1 .. 1000 ] Default: 100 |
sortBy | string Default: "createdAt" |
sortOrder | string Default: "desc" Enum: "asc" "desc" |
search | string |
createdBy | string |
Responses
Response samples
- 200
- 400
[- {
- "name": "Staging Upcoming",
- "key": "staging-upcoming",
- "description": "Pre-production changes",
- "color": "#4073FF",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "type": "staging",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "sdkKeys": {
- "mobile": [
- {
- "key": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "compromised": true
}
], - "client": [
- {
- "key": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "compromised": true
}
], - "server": [
- {
- "key": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "compromised": true
}
]
}, - "settings": {
- "appIconURI": "string"
}, - "readonly": true
}
]
Get an Environment
Get an Environment by ID or key
path Parameters
key required | string A Environment key or ID |
project required | string A Project key or ID |
Responses
Response samples
- 200
- 404
{- "name": "Staging Upcoming",
- "key": "staging-upcoming",
- "description": "Pre-production changes",
- "color": "#4073FF",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "type": "staging",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "sdkKeys": {
- "mobile": [
- {
- "key": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "compromised": true
}
], - "client": [
- {
- "key": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "compromised": true
}
], - "server": [
- {
- "key": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "compromised": true
}
]
}, - "settings": {
- "appIconURI": "string"
}, - "readonly": true
}
Update an Environment
Update an Environment by ID or key
path Parameters
key required | string A Environment key or ID |
project required | string A Project key or ID |
Request Body schema: application/jsonrequired
name | string [ 1 .. 100 ] characters A unique display name |
key | string [ 1 .. 100 ] characters ^[a-z0-9-_.]+$ Unique Environment identifier, can be used in the SDK / API to reference by key rather than ID.
Must only contain lower-case characters and |
description | string <= 1000 characters Environment description. |
color | string <= 9 characters ^#([0-9A-Fa-f]{3}|[0-9A-Fa-f]{4}|[0-9A-Fa-f]{... Environment display color, used to highlight different environments on the dashboard. Must use Hex color code. |
type | string Enum: "development" "staging" "production" "disaster_recovery" The environment type |
object Environment based settings |
Responses
Request samples
- Payload
{- "name": "Staging Upcoming",
- "key": "staging-upcoming",
- "description": "Pre-production changes",
- "color": "#4073FF",
- "type": "staging",
- "settings": {
- "appIconURI": "string"
}
}
Response samples
- 200
- 400
- 404
- 409
{- "name": "Staging Upcoming",
- "key": "staging-upcoming",
- "description": "Pre-production changes",
- "color": "#4073FF",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "type": "staging",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "sdkKeys": {
- "mobile": [
- {
- "key": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "compromised": true
}
], - "client": [
- {
- "key": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "compromised": true
}
], - "server": [
- {
- "key": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "compromised": true
}
]
}, - "settings": {
- "appIconURI": "string"
}, - "readonly": true
}
Delete an Environment
Delete an Environment by ID or key
path Parameters
key required | string A Environment key or ID |
project required | string A Project key or ID |
Responses
Response samples
- 404
- 405
{- "statusCode": 404,
- "message": "Item with key 'key-123' not found",
- "error": "Not Found"
}
Generate SDK Keys
Generate new SDK keys for an environment
path Parameters
environment required | string An Environment key or ID |
project required | string A Project key or ID |
Request Body schema: application/jsonrequired
client | boolean |
server | boolean |
mobile | boolean |
Responses
Request samples
- Payload
{- "client": true,
- "server": true,
- "mobile": true
}
Response samples
- 200
- 201
- 400
- 404
{- "name": "Staging Upcoming",
- "key": "staging-upcoming",
- "description": "Pre-production changes",
- "color": "#4073FF",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "type": "staging",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "sdkKeys": {
- "mobile": [
- {
- "key": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "compromised": true
}
], - "client": [
- {
- "key": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "compromised": true
}
], - "server": [
- {
- "key": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "compromised": true
}
]
}, - "settings": {
- "appIconURI": "string"
}, - "readonly": true
}
Invalidate an SDK key
Invalidate an SDK key
path Parameters
key required | string An SDK key |
environment required | string An Environment key or ID |
project required | string A Project key or ID |
Responses
Response samples
- 404
- 405
{- "statusCode": 404,
- "message": "Item with key 'key-123' not found",
- "error": "Not Found"
}
Create Audience
Create a new Audience
path Parameters
project required | string A Project key or ID |
Request Body schema: application/jsonrequired
name | string [ 1 .. 100 ] characters Audience display name, must be set for project-level audiences. |
key | string [ 1 .. 100 ] characters ^[a-z0-9-_.]+$ Audience unique project-level key, must be set for project-level audiences.
Must only contain lower-case characters and |
description | string <= 1000 characters Audience description. |
required | object Audience filters, describing logic for segmenting users |
tags | Array of strings Tags to organize project-level audiences on the dashboard |
Responses
Request samples
- Payload
{- "name": "Android Users",
- "key": "android-users",
- "description": "Users with android devices",
- "filters": {
- "filters": [
- {
- "type": "all"
}
], - "operator": "and"
}, - "tags": [
- "string"
]
}
Response samples
- 201
- 400
- 409
{- "name": "Android Users",
- "key": "android-users",
- "description": "Users with android devices",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "61450f3daec96f5cf4a49955",
- "filters": {
- "filters": [
- {
- "type": "all"
}
], - "operator": "and"
}, - "source": "api",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "tags": [
- "string"
], - "readonly": true
}
List Audiences
List Audiences
path Parameters
project required | string A Project key or ID |
query Parameters
page | number >= 1 Default: 1 |
perPage | number [ 1 .. 1000 ] Default: 100 |
sortBy | string Default: "createdAt" |
sortOrder | string Default: "desc" Enum: "asc" "desc" |
search | string |
createdBy | string |
Responses
Response samples
- 200
[- {
- "name": "Android Users",
- "key": "android-users",
- "description": "Users with android devices",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "61450f3daec96f5cf4a49955",
- "filters": {
- "filters": [
- {
- "type": "all"
}
], - "operator": "and"
}, - "source": "api",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "tags": [
- "string"
], - "readonly": true
}
]
Get an Audience
Get an Audience by ID or key
path Parameters
key required | string A Audience key or ID |
project required | string A Project key or ID |
Responses
Response samples
- 200
- 404
{- "name": "Android Users",
- "key": "android-users",
- "description": "Users with android devices",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "61450f3daec96f5cf4a49955",
- "filters": {
- "filters": [
- {
- "type": "all"
}
], - "operator": "and"
}, - "source": "api",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "tags": [
- "string"
], - "readonly": true
}
Update an Audience
Update an Audience by ID or key
path Parameters
key required | string A Audience key or ID |
project required | string A Project key or ID |
Request Body schema: application/jsonrequired
name | string [ 1 .. 100 ] characters Audience display name, must be set for project-level audiences. |
key | string [ 1 .. 100 ] characters ^[a-z0-9-_.]+$ Audience unique project-level key, must be set for project-level audiences.
Must only contain lower-case characters and |
description | string <= 1000 characters Audience description. |
object Audience filters, describing logic for segmenting users | |
tags | Array of strings Tags to organize project-level audiences on the dashboard |
Responses
Request samples
- Payload
{- "name": "Android Users",
- "key": "android-users",
- "description": "Users with android devices",
- "filters": {
- "filters": [
- {
- "type": "all"
}
], - "operator": "and"
}, - "tags": [
- "string"
]
}
Response samples
- 200
- 400
- 404
- 409
{- "name": "Android Users",
- "key": "android-users",
- "description": "Users with android devices",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "61450f3daec96f5cf4a49955",
- "filters": {
- "filters": [
- {
- "type": "all"
}
], - "operator": "and"
}, - "source": "api",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "tags": [
- "string"
], - "readonly": true
}
Get all direct usages of an Audience
Get the direct usages of an Audiences Usage by Features OR other Audiences by ID or key
path Parameters
key required | string A Audience key or ID |
project required | string A Project key or ID |
Responses
Response samples
- 200
- 404
{- "features": [
- {
- "key": "string",
- "name": "string",
- "id": "string",
- "environments": { }
}
]
}
Create a Variable
path Parameters
project required | string A Project key or ID |
Request Body schema: application/jsonrequired
name | string [ 1 .. 100 ] characters Variable name |
description | string <= 1000 characters A description of the Variable |
key required | string [ 1 .. 100 ] characters ^[a-z0-9-_.]+$ Unique Variable identifier, can be used in the SDK / API to reference by key rather then ID.
Must only contain lower-case characters and |
_feature | string The key or ID of the Feature this Variable is associated with |
type required | string Enum: "String" "Boolean" "Number" "JSON" The type of Variable. Must be one of [String | Boolean | Number | JSON] |
object Validation schema for variable values |
Responses
Request samples
- Payload
{- "name": "Show New Dashboard",
- "description": "A boolean variable that will toggle the new dashboard feature",
- "key": "show-new-dashboard",
- "_feature": "new-dashboard",
- "type": "Boolean",
- "validationSchema": {
- "schemaType": { },
- "enumValues": { },
- "regexPattern": "string",
- "jsonSchema": "string",
- "description": "string",
- "exampleValue": { }
}
}
Response samples
- 201
- 400
- 409
{- "name": "Show New Dashboard",
- "description": "A boolean variable that will toggle the new dashboard feature",
- "key": "show-new-dashboard",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "_feature": "61450f3daec96f5cf4a49947",
- "type": "Boolean",
- "status": "active",
- "source": "api",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "validationSchema": {
- "schemaType": { },
- "enumValues": { },
- "regexPattern": "string",
- "jsonSchema": "string",
- "description": "string",
- "exampleValue": { }
}, - "persistent": true
}
List Variables
path Parameters
project required | string A Project key or ID |
query Parameters
page | number >= 1 Default: 1 |
perPage | number [ 1 .. 1000 ] Default: 100 |
sortBy | string Default: "createdAt" |
sortOrder | string Default: "desc" Enum: "asc" "desc" |
search | string |
feature | string |
type | string Enum: "String" "Boolean" "Number" "JSON" |
status | string Enum: "active" "archived" |
Responses
Response samples
- 200
- 400
[- {
- "name": "Show New Dashboard",
- "description": "A boolean variable that will toggle the new dashboard feature",
- "key": "show-new-dashboard",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "_feature": "61450f3daec96f5cf4a49947",
- "type": "Boolean",
- "status": "active",
- "source": "api",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "validationSchema": {
- "schemaType": { },
- "enumValues": { },
- "regexPattern": "string",
- "jsonSchema": "string",
- "description": "string",
- "exampleValue": { }
}, - "persistent": true
}
]
Get a Variable
path Parameters
key required | string A Variable key or ID |
project required | string A Project key or ID |
Responses
Response samples
- 200
- 404
{- "name": "Show New Dashboard",
- "description": "A boolean variable that will toggle the new dashboard feature",
- "key": "show-new-dashboard",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "_feature": "61450f3daec96f5cf4a49947",
- "type": "Boolean",
- "status": "active",
- "source": "api",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "validationSchema": {
- "schemaType": { },
- "enumValues": { },
- "regexPattern": "string",
- "jsonSchema": "string",
- "description": "string",
- "exampleValue": { }
}, - "persistent": true
}
Update a Variable
path Parameters
key required | string A Variable key or ID |
project required | string A Project key or ID |
Request Body schema: application/jsonrequired
name | string [ 1 .. 100 ] characters Variable name |
description | string <= 1000 characters A description of the Variable |
key | string [ 1 .. 100 ] characters ^[a-z0-9-_.]+$ Unique Variable identifier, can be used in the SDK / API to reference by key rather then ID.
Must only contain lower-case characters and |
type | string Enum: "String" "Boolean" "Number" "JSON" The type of Variable. Must be one of [String | Boolean | Number | JSON] |
object Validation schema for variable values | |
persistent | boolean Boolean indicating if the variable is intended to be long-lived within a feature |
Responses
Request samples
- Payload
{- "name": "Show New Dashboard",
- "description": "A boolean variable that will toggle the new dashboard feature",
- "key": "show-new-dashboard",
- "type": "Boolean",
- "validationSchema": {
- "schemaType": { },
- "enumValues": { },
- "regexPattern": "string",
- "jsonSchema": "string",
- "description": "string",
- "exampleValue": { }
}, - "persistent": true
}
Response samples
- 200
- 400
- 404
- 409
{- "name": "Show New Dashboard",
- "description": "A boolean variable that will toggle the new dashboard feature",
- "key": "show-new-dashboard",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "_feature": "61450f3daec96f5cf4a49947",
- "type": "Boolean",
- "status": "active",
- "source": "api",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "validationSchema": {
- "schemaType": { },
- "enumValues": { },
- "regexPattern": "string",
- "jsonSchema": "string",
- "description": "string",
- "exampleValue": { }
}, - "persistent": true
}
Update a Variable status to archived or active
path Parameters
key required | string A Variable key or ID |
project required | string A Project key or ID |
Request Body schema: application/jsonrequired
status required | string Enum: "active" "archived" Status field indicating whether a variable is actively being used, or is archived. |
Responses
Request samples
- Payload
{- "status": "active"
}
Response samples
- 200
- 400
- 404
- 412
{- "name": "Show New Dashboard",
- "description": "A boolean variable that will toggle the new dashboard feature",
- "key": "show-new-dashboard",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "_feature": "61450f3daec96f5cf4a49947",
- "type": "Boolean",
- "status": "active",
- "source": "api",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "validationSchema": {
- "schemaType": { },
- "enumValues": { },
- "regexPattern": "string",
- "jsonSchema": "string",
- "description": "string",
- "exampleValue": { }
}, - "persistent": true
}
Create Feature
Create a new Feature
path Parameters
project required | string A Project key or ID |
Request Body schema: application/jsonrequired
name required | string [ 1 .. 100 ] characters Name of the Feature |
key required | string [ 1 .. 100 ] characters ^[a-z0-9-_.]+$ Unique key by Project, can be used in the SDK / API to reference by 'key' rather than _id.
Must only contain lower-case characters and |
description | string <= 1000 characters Feature description. |
Array of CreateVariableDto (object) or ReassociateVariableDto (object) Variable definitions to be referenced in variations | |
Array of objects (FeatureVariationDto) Variation configurations to be used by feature configurations. | |
controlVariation | string The key of the variation that is used as the control variation for Metrics |
object Feature-level settings. | |
object SDK Type Visibilty Settings | |
type | string Enum: "release" "experiment" "permission" "ops" The Feature type |
tags | Array of strings Tags to organize Features on the dashboard |
Responses
Request samples
- Payload
{- "name": "New Dashboard",
- "key": "new-dash",
- "description": "New client-facing dashboard.",
- "variables": [
- {
- "name": "Show New Dashboard",
- "description": "A boolean variable that will toggle the new dashboard feature",
- "key": "show-new-dashboard",
- "_feature": "new-dashboard",
- "type": "Boolean",
- "validationSchema": {
- "schemaType": { },
- "enumValues": { },
- "regexPattern": "string",
- "jsonSchema": "string",
- "description": "string",
- "exampleValue": { }
}
}
], - "variations": [
- {
- "key": "variation-1",
- "name": "User's with dashboard access",
- "variables": {
- "show-new-dashboard": true,
- "string-var": "hello world",
- "bool-var": true,
- "num-var": 99,
- "json-var": {
- "foo": "bar"
}
}
}
], - "controlVariation": "string",
- "settings": {
- "publicName": "string",
- "publicDescription": "string",
- "optInEnabled": true
}, - "sdkVisibility": {
- "mobile": true,
- "client": true,
- "server": true
}, - "type": "release",
- "tags": [
- "Dashboard",
- "QA"
]
}
Response samples
- 201
- 400
- 409
- 412
{- "name": "New Dashboard",
- "key": "new-dash",
- "description": "New client-facing dashboard.",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "source": "api",
- "status": "active",
- "type": "release",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "variations": [
- {
- "key": "variation-1",
- "name": "User's with dashboard access",
- "variables": {
- "show-new-dashboard": true,
- "string-var": "hello world",
- "bool-var": true,
- "num-var": 99,
- "json-var": {
- "foo": "bar"
}
}, - "_id": "61450f3daec96f5cf4a49946"
}
], - "controlVariation": "string",
- "staticVariation": "string",
- "variables": [
- {
- "name": "Show New Dashboard",
- "description": "A boolean variable that will toggle the new dashboard feature",
- "key": "show-new-dashboard",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "_feature": "61450f3daec96f5cf4a49947",
- "type": "Boolean",
- "status": "active",
- "source": "api",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "validationSchema": {
- "schemaType": { },
- "enumValues": { },
- "regexPattern": "string",
- "jsonSchema": "string",
- "description": "string",
- "exampleValue": { }
}, - "persistent": true
}
], - "tags": [
- "Dashboard",
- "QA"
], - "ldLink": "string",
- "readonly": true,
- "settings": {
- "publicName": "string",
- "publicDescription": "string",
- "optInEnabled": true
}, - "sdkVisibility": {
- "mobile": true,
- "client": true,
- "server": true
}
}
List Features
List Features
path Parameters
project required | string A Project key or ID |
query Parameters
page | number >= 1 Default: 1 |
perPage | number [ 1 .. 1000 ] Default: 100 |
sortBy | string Default: "createdAt" |
sortOrder | string Default: "desc" Enum: "asc" "desc" |
search | string |
createdBy | string |
type | string Enum: "release" "experiment" "permission" "ops" |
status | string Enum: "active" "complete" "archived" |
Responses
Response samples
- 200
- 400
[- {
- "name": "New Dashboard",
- "key": "new-dash",
- "description": "New client-facing dashboard.",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "source": "api",
- "status": "active",
- "type": "release",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "variations": [
- {
- "key": "variation-1",
- "name": "User's with dashboard access",
- "variables": {
- "show-new-dashboard": true,
- "string-var": "hello world",
- "bool-var": true,
- "num-var": 99,
- "json-var": {
- "foo": "bar"
}
}, - "_id": "61450f3daec96f5cf4a49946"
}
], - "controlVariation": "string",
- "staticVariation": "string",
- "variables": [
- {
- "name": "Show New Dashboard",
- "description": "A boolean variable that will toggle the new dashboard feature",
- "key": "show-new-dashboard",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "_feature": "61450f3daec96f5cf4a49947",
- "type": "Boolean",
- "status": "active",
- "source": "api",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "validationSchema": {
- "schemaType": { },
- "enumValues": { },
- "regexPattern": "string",
- "jsonSchema": "string",
- "description": "string",
- "exampleValue": { }
}, - "persistent": true
}
], - "tags": [
- "Dashboard",
- "QA"
], - "ldLink": "string",
- "readonly": true,
- "settings": {
- "publicName": "string",
- "publicDescription": "string",
- "optInEnabled": true
}, - "sdkVisibility": {
- "mobile": true,
- "client": true,
- "server": true
}
}
]
Create Multiple Features with a single request
Create multiple new Features
path Parameters
project required | string A Project key or ID |
Request Body schema: application/jsonrequired
Responses
Request samples
- Payload
[- "string"
]
Response samples
- 201
- 400
- 409
- 412
[- {
- "name": "New Dashboard",
- "key": "new-dash",
- "description": "New client-facing dashboard.",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "source": "api",
- "status": "active",
- "type": "release",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "variations": [
- {
- "key": "variation-1",
- "name": "User's with dashboard access",
- "variables": {
- "show-new-dashboard": true,
- "string-var": "hello world",
- "bool-var": true,
- "num-var": 99,
- "json-var": {
- "foo": "bar"
}
}, - "_id": "61450f3daec96f5cf4a49946"
}
], - "controlVariation": "string",
- "staticVariation": "string",
- "variables": [
- {
- "name": "Show New Dashboard",
- "description": "A boolean variable that will toggle the new dashboard feature",
- "key": "show-new-dashboard",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "_feature": "61450f3daec96f5cf4a49947",
- "type": "Boolean",
- "status": "active",
- "source": "api",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "validationSchema": {
- "schemaType": { },
- "enumValues": { },
- "regexPattern": "string",
- "jsonSchema": "string",
- "description": "string",
- "exampleValue": { }
}, - "persistent": true
}
], - "tags": [
- "Dashboard",
- "QA"
], - "ldLink": "string",
- "readonly": true,
- "settings": {
- "publicName": "string",
- "publicDescription": "string",
- "optInEnabled": true
}, - "sdkVisibility": {
- "mobile": true,
- "client": true,
- "server": true
}
}
]
Get a Feature
Get a Feature by ID or key
path Parameters
key required | string A Feature key or ID |
project required | string A Project key or ID |
Responses
Response samples
- 200
- 404
{- "name": "New Dashboard",
- "key": "new-dash",
- "description": "New client-facing dashboard.",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "source": "api",
- "status": "active",
- "type": "release",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "variations": [
- {
- "key": "variation-1",
- "name": "User's with dashboard access",
- "variables": {
- "show-new-dashboard": true,
- "string-var": "hello world",
- "bool-var": true,
- "num-var": 99,
- "json-var": {
- "foo": "bar"
}
}, - "_id": "61450f3daec96f5cf4a49946"
}
], - "controlVariation": "string",
- "staticVariation": "string",
- "variables": [
- {
- "name": "Show New Dashboard",
- "description": "A boolean variable that will toggle the new dashboard feature",
- "key": "show-new-dashboard",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "_feature": "61450f3daec96f5cf4a49947",
- "type": "Boolean",
- "status": "active",
- "source": "api",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "validationSchema": {
- "schemaType": { },
- "enumValues": { },
- "regexPattern": "string",
- "jsonSchema": "string",
- "description": "string",
- "exampleValue": { }
}, - "persistent": true
}
], - "tags": [
- "Dashboard",
- "QA"
], - "ldLink": "string",
- "readonly": true,
- "settings": {
- "publicName": "string",
- "publicDescription": "string",
- "optInEnabled": true
}, - "sdkVisibility": {
- "mobile": true,
- "client": true,
- "server": true
}
}
Delete a Feature
Delete a Feature by ID or key
path Parameters
key required | string A Feature key or ID |
project required | string A Project key or ID |
query Parameters
deleteVariables | boolean Controls whether the feature's associated variables should also be deleted |
Responses
Response samples
- 404
{- "statusCode": 404,
- "message": "Item with key 'key-123' not found",
- "error": "Not Found"
}
Update a Feature
Update a Feature by ID or key
path Parameters
feature required | string A Feature key or ID |
project required | string A Project key or ID |
Request Body schema: application/jsonrequired
name | string [ 1 .. 100 ] characters Name of the Feature |
key | string [ 1 .. 100 ] characters ^[a-z0-9-_.]+$ Unique key by Project, can be used in the SDK / API to reference by 'key' rather than _id.
Must only contain lower-case characters and |
description | string <= 1000 characters Feature description. |
Array of CreateVariableDto (object) or ReassociateVariableDto (object) Variable definitions to be referenced in variations | |
Array of objects (FeatureVariationDto) Variation configurations to be used by feature configurations. | |
object Feature-level settings. | |
object SDK Type Visibilty Settings | |
type | string Enum: "release" "experiment" "permission" "ops" The Feature type |
tags | Array of strings Tags to organize Features on the dashboard |
controlVariation | string The key of the variation that is used as the control variation for Metrics |
Responses
Request samples
- Payload
{- "name": "New Dashboard",
- "key": "new-dash",
- "description": "New client-facing dashboard.",
- "variables": [
- {
- "name": "Show New Dashboard",
- "description": "A boolean variable that will toggle the new dashboard feature",
- "key": "show-new-dashboard",
- "_feature": "new-dashboard",
- "type": "Boolean",
- "validationSchema": {
- "schemaType": { },
- "enumValues": { },
- "regexPattern": "string",
- "jsonSchema": "string",
- "description": "string",
- "exampleValue": { }
}
}
], - "variations": [
- {
- "key": "variation-1",
- "name": "User's with dashboard access",
- "variables": {
- "show-new-dashboard": true,
- "string-var": "hello world",
- "bool-var": true,
- "num-var": 99,
- "json-var": {
- "foo": "bar"
}
}
}
], - "settings": {
- "publicName": "string",
- "publicDescription": "string",
- "optInEnabled": true
}, - "sdkVisibility": {
- "mobile": true,
- "client": true,
- "server": true
}, - "type": "release",
- "tags": [
- "Dashboard",
- "QA"
], - "controlVariation": "string"
}
Response samples
- 200
- 400
- 404
- 409
- 412
{- "name": "New Dashboard",
- "key": "new-dash",
- "description": "New client-facing dashboard.",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "source": "api",
- "status": "active",
- "type": "release",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "variations": [
- {
- "key": "variation-1",
- "name": "User's with dashboard access",
- "variables": {
- "show-new-dashboard": true,
- "string-var": "hello world",
- "bool-var": true,
- "num-var": 99,
- "json-var": {
- "foo": "bar"
}
}, - "_id": "61450f3daec96f5cf4a49946"
}
], - "controlVariation": "string",
- "staticVariation": "string",
- "variables": [
- {
- "name": "Show New Dashboard",
- "description": "A boolean variable that will toggle the new dashboard feature",
- "key": "show-new-dashboard",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "_feature": "61450f3daec96f5cf4a49947",
- "type": "Boolean",
- "status": "active",
- "source": "api",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "validationSchema": {
- "schemaType": { },
- "enumValues": { },
- "regexPattern": "string",
- "jsonSchema": "string",
- "description": "string",
- "exampleValue": { }
}, - "persistent": true
}
], - "tags": [
- "Dashboard",
- "QA"
], - "ldLink": "string",
- "readonly": true,
- "settings": {
- "publicName": "string",
- "publicDescription": "string",
- "optInEnabled": true
}, - "sdkVisibility": {
- "mobile": true,
- "client": true,
- "server": true
}
}
Update a Feature's status
Update a Feature's status by key
path Parameters
key required | string A Feature key or ID |
project required | string A Project key or ID |
Request Body schema: application/jsonrequired
status required | string Enum: "active" "complete" "archived" The status to set the Feature's status to |
staticVariation | string The variation key or ID to serve if the status is set to complete |
Responses
Request samples
- Payload
{- "status": "active",
- "staticVariation": "string"
}
Response samples
- 200
- 400
- 404
- 409
- 412
{- "name": "New Dashboard",
- "key": "new-dash",
- "description": "New client-facing dashboard.",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "source": "api",
- "status": "active",
- "type": "release",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "variations": [
- {
- "key": "variation-1",
- "name": "User's with dashboard access",
- "variables": {
- "show-new-dashboard": true,
- "string-var": "hello world",
- "bool-var": true,
- "num-var": 99,
- "json-var": {
- "foo": "bar"
}
}, - "_id": "61450f3daec96f5cf4a49946"
}
], - "controlVariation": "string",
- "staticVariation": "string",
- "variables": [
- {
- "name": "Show New Dashboard",
- "description": "A boolean variable that will toggle the new dashboard feature",
- "key": "show-new-dashboard",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "_feature": "61450f3daec96f5cf4a49947",
- "type": "Boolean",
- "status": "active",
- "source": "api",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "validationSchema": {
- "schemaType": { },
- "enumValues": { },
- "regexPattern": "string",
- "jsonSchema": "string",
- "description": "string",
- "exampleValue": { }
}, - "persistent": true
}
], - "tags": [
- "Dashboard",
- "QA"
], - "ldLink": "string",
- "readonly": true,
- "settings": {
- "publicName": "string",
- "publicDescription": "string",
- "optInEnabled": true
}, - "sdkVisibility": {
- "mobile": true,
- "client": true,
- "server": true
}
}
Get a Feature's Static Configuration
Get a completed Feature's static configuration
path Parameters
key required | string A Feature key or ID |
project required | string A Project key or ID |
Responses
Response samples
- 200
- 412
{- "variables": { },
- "environments": { },
- "readonly": true,
- "sdkVisibility": {
- "mobile": true,
- "client": true,
- "server": true
}
}
Update a Feature's Static Configuration
Update a completed Feature's static configuration
path Parameters
key required | string A Feature key or ID |
project required | string A Project key or ID |
Request Body schema: application/jsonrequired
object SDK Type Visibilty Settings | |
variables | object The static value of each variable in the feature |
environments | object The status of the configuration in each environment |
Responses
Request samples
- Payload
{- "sdkVisibility": {
- "mobile": true,
- "client": true,
- "server": true
}, - "variables": { },
- "environments": { }
}
Response samples
- 200
- 412
{- "variables": { },
- "environments": { },
- "readonly": true,
- "sdkVisibility": {
- "mobile": true,
- "client": true,
- "server": true
}
}
Link feature to Jira issue
path Parameters
key required | string |
project required | string A Project key or ID |
Request Body schema: application/jsonrequired
issueId required | string |
Responses
Request samples
- Payload
{- "issueId": "string"
}
Response samples
- 201
- 400
- 404
- 409
- 412
{- "issueId": "string"
}
Create a Feature Variation
Create a new variation within a Feature
path Parameters
project required | string A Project key or ID |
feature required | string A Feature key or ID |
Request Body schema: application/jsonrequired
key required | string [ 1 .. 100 ] characters ^[a-z0-9-_.]+$ Unique key by Feature, can be used in the SDK / API to reference by 'key' rather than _id.
Must only contain lower-case characters and |
name required | string [ 1 .. 100 ] characters Variation display name. |
object A key-value map of variables to their value for this variation |
Responses
Request samples
- Payload
{- "key": "variation-1",
- "name": "User's with dashboard access",
- "variables": {
- "show-new-dashboard": true,
- "string-var": "hello world",
- "bool-var": true,
- "num-var": 99,
- "json-var": {
- "foo": "bar"
}
}
}
Response samples
- 201
- 400
- 409
- 412
{- "name": "New Dashboard",
- "key": "new-dash",
- "description": "New client-facing dashboard.",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "source": "api",
- "status": "active",
- "type": "release",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "variations": [
- {
- "key": "variation-1",
- "name": "User's with dashboard access",
- "variables": {
- "show-new-dashboard": true,
- "string-var": "hello world",
- "bool-var": true,
- "num-var": 99,
- "json-var": {
- "foo": "bar"
}
}, - "_id": "61450f3daec96f5cf4a49946"
}
], - "controlVariation": "string",
- "staticVariation": "string",
- "variables": [
- {
- "name": "Show New Dashboard",
- "description": "A boolean variable that will toggle the new dashboard feature",
- "key": "show-new-dashboard",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "_feature": "61450f3daec96f5cf4a49947",
- "type": "Boolean",
- "status": "active",
- "source": "api",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "validationSchema": {
- "schemaType": { },
- "enumValues": { },
- "regexPattern": "string",
- "jsonSchema": "string",
- "description": "string",
- "exampleValue": { }
}, - "persistent": true
}
], - "tags": [
- "Dashboard",
- "QA"
], - "ldLink": "string",
- "readonly": true,
- "settings": {
- "publicName": "string",
- "publicDescription": "string",
- "optInEnabled": true
}, - "sdkVisibility": {
- "mobile": true,
- "client": true,
- "server": true
}
}
List Feature Variations
Get a list of variations for a feature
path Parameters
feature required | string A Feature key or ID |
project required | string A Project key or ID |
Responses
Response samples
- 200
[- {
- "key": "variation-1",
- "name": "User's with dashboard access",
- "variables": {
- "show-new-dashboard": true,
- "string-var": "hello world",
- "bool-var": true,
- "num-var": 99,
- "json-var": {
- "foo": "bar"
}
}, - "_id": "61450f3daec96f5cf4a49946"
}
]
Get a Feature Variation
Get a variation by ID or key
path Parameters
key required | string A Variation key or ID |
feature required | string A Feature key or ID |
project required | string A Project key or ID |
Responses
Response samples
- 200
- 404
{- "key": "variation-1",
- "name": "User's with dashboard access",
- "variables": {
- "show-new-dashboard": true,
- "string-var": "hello world",
- "bool-var": true,
- "num-var": 99,
- "json-var": {
- "foo": "bar"
}
}, - "_id": "61450f3daec96f5cf4a49946"
}
Update a Feature Variation
Update a variation by ID or key
path Parameters
key required | string A Feature key or ID |
feature required | string A Feature key or ID |
project required | string A Project key or ID |
Request Body schema: application/jsonrequired
key | string [ 1 .. 100 ] characters ^[a-z0-9-_.]+$ Unique key by Feature, can be used in the SDK / API to reference by 'key' rather than _id.
Must only contain lower-case characters and |
name | string [ 1 .. 100 ] characters Variation display name. |
object A key-value map of variables to their value for this variation | |
_id | string |
Responses
Request samples
- Payload
{- "key": "variation-1",
- "name": "User's with dashboard access",
- "variables": {
- "show-new-dashboard": true,
- "string-var": "hello world",
- "bool-var": true,
- "num-var": 99,
- "json-var": {
- "foo": "bar"
}
}, - "_id": "string"
}
Response samples
- 200
- 400
- 404
- 409
{- "name": "New Dashboard",
- "key": "new-dash",
- "description": "New client-facing dashboard.",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "source": "api",
- "status": "active",
- "type": "release",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "variations": [
- {
- "key": "variation-1",
- "name": "User's with dashboard access",
- "variables": {
- "show-new-dashboard": true,
- "string-var": "hello world",
- "bool-var": true,
- "num-var": 99,
- "json-var": {
- "foo": "bar"
}
}, - "_id": "61450f3daec96f5cf4a49946"
}
], - "controlVariation": "string",
- "staticVariation": "string",
- "variables": [
- {
- "name": "Show New Dashboard",
- "description": "A boolean variable that will toggle the new dashboard feature",
- "key": "show-new-dashboard",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "_feature": "61450f3daec96f5cf4a49947",
- "type": "Boolean",
- "status": "active",
- "source": "api",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "validationSchema": {
- "schemaType": { },
- "enumValues": { },
- "regexPattern": "string",
- "jsonSchema": "string",
- "description": "string",
- "exampleValue": { }
}, - "persistent": true
}
], - "tags": [
- "Dashboard",
- "QA"
], - "ldLink": "string",
- "readonly": true,
- "settings": {
- "publicName": "string",
- "publicDescription": "string",
- "optInEnabled": true
}, - "sdkVisibility": {
- "mobile": true,
- "client": true,
- "server": true
}
}
List Feature configurations
List Feature configurations for all environments or by environment key or ID
path Parameters
feature required | string A Feature key or ID |
project required | string A Project key or ID |
query Parameters
environment | string A Environment key or ID |
Responses
Response samples
- 200
[- {
- "_feature": "61450f3daec96f5cf4a49946",
- "_environment": "61450f3daec96f5cf4a49946",
- "_createdBy": "string",
- "status": "active",
- "startedAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "targets": [
- {
- "_id": "61450f3daec96f5cf4a49946",
- "name": "Feature Enabled",
- "audience": {
- "name": "Android Users",
- "filters": {
- "filters": [
- {
- "type": "all"
}
], - "operator": "and"
}
}, - "rollout": {
- "startPercentage": 1,
- "type": "schedule",
- "startDate": "2019-08-24T14:15:22Z",
- "stages": [
- {
- "percentage": 1,
- "type": "linear",
- "date": "2019-08-24T14:15:22Z"
}
]
}, - "distribution": [
- {
- "percentage": 0.5,
- "_variation": "variation-1"
}
]
}
], - "readonly": true,
- "hasStaticConfig": true
}
]
Update a Feature configuration
Update a Feature configuration by environment key or ID
path Parameters
feature required | string A Feature key or ID |
project required | string A Project key or ID |
query Parameters
environment required | string A Environment key or ID |
Request Body schema: application/jsonrequired
Array of objects (UpdateTargetDto) The targets to evaluate what variation a user should be delivered | |
status | string Enum: "active" "inactive" Status of the Feature Configuration |
Responses
Request samples
- Payload
{- "targets": [
- {
- "_id": "61450f3daec96f5cf4a49946",
- "name": "Feature Enabled",
- "rollout": {
- "startPercentage": 1,
- "type": "schedule",
- "startDate": "2019-08-24T14:15:22Z",
- "stages": [
- {
- "percentage": 1,
- "type": "linear",
- "date": "2019-08-24T14:15:22Z"
}
]
}, - "distribution": [
- {
- "percentage": 0.5,
- "_variation": "variation-1"
}
], - "audience": {
- "name": "Android Users",
- "filters": {
- "filters": [
- {
- "type": "all"
}
], - "operator": "and"
}
}
}
], - "status": "active"
}
Response samples
- 200
- 400
- 404
{- "_feature": "61450f3daec96f5cf4a49946",
- "_environment": "61450f3daec96f5cf4a49946",
- "_createdBy": "string",
- "status": "active",
- "startedAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "targets": [
- {
- "_id": "61450f3daec96f5cf4a49946",
- "name": "Feature Enabled",
- "audience": {
- "name": "Android Users",
- "filters": {
- "filters": [
- {
- "type": "all"
}
], - "operator": "and"
}
}, - "rollout": {
- "startPercentage": 1,
- "type": "schedule",
- "startDate": "2019-08-24T14:15:22Z",
- "stages": [
- {
- "percentage": 1,
- "type": "linear",
- "date": "2019-08-24T14:15:22Z"
}
]
}, - "distribution": [
- {
- "percentage": 0.5,
- "_variation": "variation-1"
}
]
}
], - "readonly": true,
- "hasStaticConfig": true
}
Feature Variable Evaluations (total)
Fetch total variable evaluations per hour for a feature
path Parameters
feature required | string A Feature key or ID |
project required | string A Project key or ID |
query Parameters
startDate | number |
endDate | number |
platform | string |
variable | string |
environment | string A Environment key or ID |
period | string Enum: "day" "hour" "month" |
sdkType | string Enum: "client" "server" "mobile" "api" SDK type to filter evaluation results by |
Responses
Response samples
- 200
{- "result": {
- "evaluations": [
- {
- "values": { },
- "date": "2019-08-24T14:15:22Z"
}
]
}, - "cached": true,
- "updatedAt": "2019-08-24T14:15:22Z"
}
Project Variable Evaluations (unique user)
Fetch unique user variable evaluations per hour for a project
path Parameters
project required | string A Project key or ID |
query Parameters
startDate | number |
endDate | number |
environment | string A Environment key or ID |
period | string Enum: "day" "hour" "month" |
sdkType | string Enum: "client" "server" "mobile" "api" SDK type to filter evaluation results by |
Responses
Response samples
- 200
{- "result": {
- "evaluations": [
- {
- "date": "2019-08-24T14:15:22Z",
- "value": 0
}
]
}, - "cached": true,
- "updatedAt": "2019-08-24T14:15:22Z"
}
Project Variable Evaluations (total)
Fetch total variable evaluations per hour for a project
path Parameters
project required | string A Project key or ID |
query Parameters
startDate | number |
endDate | number |
environment | string A Environment key or ID |
period | string Enum: "day" "hour" "month" |
sdkType | string Enum: "client" "server" "mobile" "api" SDK type to filter evaluation results by |
Responses
Response samples
- 200
{- "result": {
- "evaluations": [
- {
- "date": "2019-08-24T14:15:22Z",
- "value": 0
}
]
}, - "cached": true,
- "updatedAt": "2019-08-24T14:15:22Z"
}
Get User Profile for the Current User in the specified Project
Get User Profile for the authenticated User in the specified Project
path Parameters
project required | string A Project key or ID |
Responses
Response samples
- 200
{- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "a0_user": "string",
- "dvcUserId": "dvc_sdk_user_id",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
Create or Update User Profile for the Current User in the specified Project
Create or Update a User Profile for Overrides
path Parameters
project required | string A Project key or ID |
Request Body schema: application/jsonrequired
dvcUserId | string or null DVC User Id for User Profile. |
Responses
Request samples
- Payload
{- "dvcUserId": "dvc_sdk_user_id"
}
Response samples
- 200
{- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "a0_user": "string",
- "dvcUserId": "dvc_sdk_user_id",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
Get Audit Log For Feature
Get Audit Log For Feature
path Parameters
feature required | string A Feature key or ID |
project required | string A Project key or ID |
query Parameters
page | number >= 1 Default: 1 |
perPage | number [ 1 .. 1000 ] Default: 100 |
sortBy | string Default: "createdAt" |
sortOrder | string Default: "desc" Enum: "asc" "desc" |
environment | string |
a0_user | string |
startDate | string <date-time> |
endDate | string <date-time> |
Responses
Response samples
- 200
[- {
- "date": "2019-08-24T14:15:22Z",
- "a0_user": "string",
- "changes": [
- { }
]
}
]
Create Custom Property
Create a new Custom Property
path Parameters
project required | string A Project key or ID |
Request Body schema: application/jsonrequired
name required | string [ 1 .. 100 ] characters Display name for Custom Property. |
key required | string [ 1 .. 100 ] characters ^[a-z0-9-_.]+$ Auto generated key to be used by the API to reference by 'key' rather then _id for CRUD operations.
Must only contain lower-case characters and |
type required | string Enum: "String" "Boolean" "Number" Type of the Custom Propety. Must be one of: "Boolean", "Number" or "String" |
propertyKey required | string Custom Property key, must be unique by Project. Only to be used by the SDKs to reference the Custom Property.. |
Responses
Request samples
- Payload
{- "name": "Delivery App",
- "key": "delivery-app",
- "type": "String",
- "propertyKey": "Delivery App Secret Agent Code"
}
Response samples
- 201
- 400
- 409
{- "name": "Delivery App",
- "key": "delivery-app",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "_createdBy": "string",
- "propertyKey": "Delivery App Secret Agent Code",
- "type": "String",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
List Custom Properties
List Custom Properties
path Parameters
project required | string A Project key or ID |
query Parameters
page | number >= 1 Default: 1 |
perPage | number [ 1 .. 1000 ] Default: 100 |
sortBy | string Default: "createdAt" |
sortOrder | string Default: "desc" Enum: "asc" "desc" |
search | string |
type | string Enum: "String" "Boolean" "Number" |
Responses
Response samples
- 200
- 400
[- {
- "name": "Delivery App",
- "key": "delivery-app",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "_createdBy": "string",
- "propertyKey": "Delivery App Secret Agent Code",
- "type": "String",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
]
Get a Custom Property
Get a Custom Property by ID or key
path Parameters
key required | string A Custom Property key or ID |
project required | string A Project key or ID |
Responses
Response samples
- 200
{- "name": "Delivery App",
- "key": "delivery-app",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "_createdBy": "string",
- "propertyKey": "Delivery App Secret Agent Code",
- "type": "String",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
Update a Custom Property
Update an Custom Property by ID or key
path Parameters
key required | string A Custom Property key or ID |
project required | string A Project key or ID |
Request Body schema: application/jsonrequired
name | string [ 1 .. 100 ] characters Display name for Custom Property. |
key | string [ 1 .. 100 ] characters ^[a-z0-9-_.]+$ Auto generated key to be used by the API to reference by 'key' rather then _id for CRUD operations.
Must only contain lower-case characters and |
propertyKey | string Custom Property key, must be unique by Project. Only to be used by the SDKs to reference the Custom Property.. |
type | string Enum: "String" "Boolean" "Number" Type of the Custom Propety. Must be one of: "Boolean", "Number" or "String" |
Responses
Request samples
- Payload
{- "name": "Delivery App",
- "key": "delivery-app",
- "propertyKey": "Delivery App Secret Agent Code",
- "type": "String"
}
Response samples
- 200
- 400
- 409
{- "name": "Delivery App",
- "key": "delivery-app",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "_createdBy": "string",
- "propertyKey": "Delivery App Secret Agent Code",
- "type": "String",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
Create Metric
Create a new Metric
path Parameters
project required | string A Project key or ID |
Request Body schema: application/jsonrequired
name required | string [ 1 .. 100 ] characters Name of the Metric |
key required | string [ 1 .. 100 ] characters ^[a-z0-9-_.]+$ Unique key by Project, can be used in the SDK / API to reference by 'key' rather than _id.
Must only contain lower-case characters and |
description | string <= 1000 characters Metric description. |
event required | string Event associated with metric |
dimension required | string Enum: "COUNT_PER_UNIQUE_USER" "COUNT_PER_VARIABLE_EVALUATION" "SUM_PER_UNIQUE_USER" "AVERAGE_PER_UNIQUE_USER" "TOTAL_AVERAGE" "TOTAL_SUM" Metric dimension |
optimize required | string Enum: "increase" "decrease" Indicates whether the metric is optimized for increase or decreasae |
Responses
Request samples
- Payload
{- "name": "New Signups",
- "key": "new-signups",
- "description": "New signups on the dashboard",
- "event": "Sign Ups",
- "dimension": "COUNT_PER_UNIQUE_USER",
- "optimize": "increase"
}
Response samples
- 201
- 400
- 409
{- "name": "New Signups",
- "key": "new-signups",
- "description": "New signups on the dashboard",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "source": "api",
- "event": "Sign Ups",
- "dimension": "COUNT_PER_UNIQUE_USER",
- "optimize": "increase",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
Get All Metrics
path Parameters
project required | string A Project key or ID |
query Parameters
page | number >= 1 Default: 1 |
perPage | number [ 1 .. 1000 ] Default: 100 |
sortBy | string Default: "createdAt" |
sortOrder | string Default: "desc" Enum: "asc" "desc" |
search | string |
dimension | string Enum: "COUNT_PER_UNIQUE_USER" "COUNT_PER_VARIABLE_EVALUATION" "SUM_PER_UNIQUE_USER" "AVERAGE_PER_UNIQUE_USER" "TOTAL_AVERAGE" "TOTAL_SUM" |
Responses
Response samples
- 200
- 400
[- {
- "name": "New Signups",
- "key": "new-signups",
- "description": "New signups on the dashboard",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "source": "api",
- "event": "Sign Ups",
- "dimension": "COUNT_PER_UNIQUE_USER",
- "optimize": "increase",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
]
Response samples
- 200
- 404
{- "name": "New Signups",
- "key": "new-signups",
- "description": "New signups on the dashboard",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "source": "api",
- "event": "Sign Ups",
- "dimension": "COUNT_PER_UNIQUE_USER",
- "optimize": "increase",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
Update a Metric
path Parameters
key required | string |
project required | string A Project key or ID |
Request Body schema: application/jsonrequired
name | string [ 1 .. 100 ] characters Name of the Metric |
key | string [ 1 .. 100 ] characters ^[a-z0-9-_.]+$ Unique key by Project, can be used in the SDK / API to reference by 'key' rather than _id.
Must only contain lower-case characters and |
description | string <= 1000 characters Metric description. |
event | string Event associated with metric |
dimension | string Enum: "COUNT_PER_UNIQUE_USER" "COUNT_PER_VARIABLE_EVALUATION" "SUM_PER_UNIQUE_USER" "AVERAGE_PER_UNIQUE_USER" "TOTAL_AVERAGE" "TOTAL_SUM" Metric dimension |
optimize | string Enum: "increase" "decrease" Indicates whether the metric is optimized for increase or decreasae |
Responses
Request samples
- Payload
{- "name": "New Signups",
- "key": "new-signups",
- "description": "New signups on the dashboard",
- "event": "Sign Ups",
- "dimension": "COUNT_PER_UNIQUE_USER",
- "optimize": "increase"
}
Response samples
- 200
- 400
- 404
{- "name": "New Signups",
- "key": "new-signups",
- "description": "New signups on the dashboard",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "source": "api",
- "event": "Sign Ups",
- "dimension": "COUNT_PER_UNIQUE_USER",
- "optimize": "increase",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
Fetch results for a Metric
path Parameters
key required | string |
project required | string A Project key or ID |
query Parameters
feature required | string |
environment | string |
startDate required | string <date-time> |
endDate required | string <date-time> |
Responses
Response samples
- 200
- 400
- 404
{- "result": {
- "dataSeries": [
- {
- "date": "2019-08-24T14:15:22Z",
- "values": { }
}
], - "variations": [
- {
- "key": "string",
- "name": "string",
- "numerator": 0,
- "denominator": 0,
- "rate": 0,
- "avgValue": 0,
- "totalValue": 0,
- "stdev": 0,
- "percentDifference": 0,
- "chanceToBeatControl": 0
}
]
}, - "cached": true,
- "updatedAt": "2019-08-24T14:15:22Z"
}
Test Metric Results
Fetch metric results with the given parameters
path Parameters
project required | string A Project key or ID |
query Parameters
feature required | string |
control required | string |
optimize required | string Enum: "increase" "decrease" |
environment | string |
event required | string |
dimension required | string Enum: "COUNT_PER_UNIQUE_USER" "COUNT_PER_VARIABLE_EVALUATION" "SUM_PER_UNIQUE_USER" "AVERAGE_PER_UNIQUE_USER" "TOTAL_AVERAGE" "TOTAL_SUM" |
startDate required | string <date-time> |
endDate required | string <date-time> |
Responses
Response samples
- 200
- 400
{- "result": {
- "dataSeries": [
- {
- "date": "2019-08-24T14:15:22Z",
- "values": { }
}
], - "variations": [
- {
- "key": "string",
- "name": "string",
- "numerator": 0,
- "denominator": 0,
- "rate": 0,
- "avgValue": 0,
- "totalValue": 0,
- "stdev": 0,
- "percentDifference": 0,
- "chanceToBeatControl": 0
}
]
}, - "cached": true,
- "updatedAt": "2019-08-24T14:15:22Z"
}
Get Metric Associations
path Parameters
project required | string A Project key or ID |
query Parameters
metric | string |
feature | string |
Responses
Response samples
- 200
- 400
[- {
- "_project": "string",
- "feature": {
- "name": "New Dashboard",
- "key": "new-dash",
- "description": "New client-facing dashboard.",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "source": "api",
- "status": "active",
- "type": "release",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "variations": [
- {
- "key": "variation-1",
- "name": "User's with dashboard access",
- "variables": {
- "show-new-dashboard": true,
- "string-var": "hello world",
- "bool-var": true,
- "num-var": 99,
- "json-var": {
- "foo": "bar"
}
}, - "_id": "61450f3daec96f5cf4a49946"
}
], - "controlVariation": "string",
- "staticVariation": "string",
- "variables": [
- {
- "name": "Show New Dashboard",
- "description": "A boolean variable that will toggle the new dashboard feature",
- "key": "show-new-dashboard",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "_feature": "61450f3daec96f5cf4a49947",
- "type": "Boolean",
- "status": "active",
- "source": "api",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "validationSchema": {
- "schemaType": { },
- "enumValues": { },
- "regexPattern": "string",
- "jsonSchema": "string",
- "description": "string",
- "exampleValue": { }
}, - "persistent": true
}
], - "tags": [
- "Dashboard",
- "QA"
], - "ldLink": "string",
- "readonly": true,
- "settings": {
- "publicName": "string",
- "publicDescription": "string",
- "optInEnabled": true
}, - "sdkVisibility": {
- "mobile": true,
- "client": true,
- "server": true
}
}, - "metric": {
- "name": "New Signups",
- "key": "new-signups",
- "description": "New signups on the dashboard",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "source": "api",
- "event": "Sign Ups",
- "dimension": "COUNT_PER_UNIQUE_USER",
- "optimize": "increase",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}, - "createdAt": "2019-08-24T14:15:22Z"
}
]
Associate a Metric with a Feature
path Parameters
project required | string A Project key or ID |
Request Body schema: application/jsonrequired
metric required | string |
feature required | string |
Responses
Request samples
- Payload
{- "metric": "string",
- "feature": "string"
}
Response samples
- 201
{- "_project": "string",
- "feature": {
- "name": "New Dashboard",
- "key": "new-dash",
- "description": "New client-facing dashboard.",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "source": "api",
- "status": "active",
- "type": "release",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "variations": [
- {
- "key": "variation-1",
- "name": "User's with dashboard access",
- "variables": {
- "show-new-dashboard": true,
- "string-var": "hello world",
- "bool-var": true,
- "num-var": 99,
- "json-var": {
- "foo": "bar"
}
}, - "_id": "61450f3daec96f5cf4a49946"
}
], - "controlVariation": "string",
- "staticVariation": "string",
- "variables": [
- {
- "name": "Show New Dashboard",
- "description": "A boolean variable that will toggle the new dashboard feature",
- "key": "show-new-dashboard",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "_feature": "61450f3daec96f5cf4a49947",
- "type": "Boolean",
- "status": "active",
- "source": "api",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "validationSchema": {
- "schemaType": { },
- "enumValues": { },
- "regexPattern": "string",
- "jsonSchema": "string",
- "description": "string",
- "exampleValue": { }
}, - "persistent": true
}
], - "tags": [
- "Dashboard",
- "QA"
], - "ldLink": "string",
- "readonly": true,
- "settings": {
- "publicName": "string",
- "publicDescription": "string",
- "optInEnabled": true
}, - "sdkVisibility": {
- "mobile": true,
- "client": true,
- "server": true
}
}, - "metric": {
- "name": "New Signups",
- "key": "new-signups",
- "description": "New signups on the dashboard",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "source": "api",
- "event": "Sign Ups",
- "dimension": "COUNT_PER_UNIQUE_USER",
- "optimize": "increase",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}, - "createdAt": "2019-08-24T14:15:22Z"
}
Update Overrides for the Current User
path Parameters
feature required | string A Feature key or ID |
project required | string A Project key or ID |
Request Body schema: application/jsonrequired
environment required | string |
variation required | string |
Responses
Request samples
- Payload
{- "environment": "string",
- "variation": "string"
}
Response samples
- 200
- 400
{- "_project": "string",
- "_environment": "string",
- "_feature": "string",
- "_variation": "string",
- "dvcUserId": "string",
- "createdAt": 0,
- "updatedAt": 0,
- "a0_user": "string"
}
Get overrides for feature
path Parameters
feature required | string A Feature key or ID |
project required | string A Project key or ID |
query Parameters
addMetadata | boolean |
environment | string A Environment key or ID |
Responses
Response samples
- 200
{- "overrides": {
- "property1": [
- {
- "_project": "string",
- "_environment": "string",
- "_feature": "string",
- "_variation": "string",
- "dvcUserId": "string",
- "createdAt": 0,
- "updatedAt": 0,
- "a0_user": "string"
}
], - "property2": [
- {
- "_project": "string",
- "_environment": "string",
- "_feature": "string",
- "_variation": "string",
- "dvcUserId": "string",
- "createdAt": 0,
- "updatedAt": 0,
- "a0_user": "string"
}
]
}, - "uniqueTeamMembers": 0
}
Get all overrides for project for current user
path Parameters
project required | string A Project key or ID |
Responses
Response samples
- 200
[- {
- "_feature": "string",
- "featureName": "string",
- "_environment": "string",
- "environmentName": "string",
- "_variation": "string",
- "variationName": "string"
}
]
[Beta] Semantic Patch Update an Audience
Semantic Patch Update an Audience by ID or key
path Parameters
key required | string A Audience key or ID |
project required | string A Project key or ID |
Request Body schema: application/jsonrequired
required | Array of objects (AudiencePatchInstructionsDto) | ||||
Array
|
Responses
Request samples
- Payload
{- "instructions": [
- {
- "op": "addFilterValues",
- "action": {
- "values": { },
- "filterIndex": "string"
}
}
]
}
Response samples
- 400
{- "statusCode": 400,
- "message": [
- "key should not be empty"
], - "error": "Bad Request"
}
Create Webhook
Create a new Webhook
path Parameters
project required | string A Project key or ID |
Request Body schema: application/jsonrequired
name required | string [ 1 .. 100 ] characters The name of the Webhook |
description | string <= 1000 characters The description of the Webhook |
outputFormat | object |
_feature | string |
_environments | Array of strings |
events required | Array of strings The events that trigger the webhook |
url required | string The URL to call once the type is triggered |
Responses
Request samples
- Payload
{- "name": "Slack",
- "description": "Post in Slack when a feature is updated",
- "outputFormat": { },
- "_feature": "string",
- "_environments": [
- "string"
], - "events": [
- "createdFeature",
- "modifiedFeature"
],
}
Response samples
- 201
{- "name": "Slack",
- "description": "Post in Slack when a feature is updated",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "61450f3daec96f5cf4a49955",
- "_feature": "61450f3daec96f5cf4a49956",
- "_environments": [
- "string"
], - "events": [
- "createdFeature",
- "modifiedFeature"
], - "source": "dashboard",
- "createdBy": "auth0|61450f3daec96f5cf4a49955",
- "createdAt": "2021-09-17T16:47:01.000Z",
- "updatedAt": "2021-09-17T16:47:01.000Z",
- "outputFormat": { },
- "_slackIntegration": "string"
}
List Webhooks
List Webhooks
path Parameters
project required | string A Project key or ID |
query Parameters
page | number >= 1 Default: 1 |
perPage | number [ 1 .. 1000 ] Default: 100 |
sortBy | string Default: "createdAt" |
sortOrder | string Default: "desc" Enum: "asc" "desc" |
search | string |
createdBy | string |
Responses
Response samples
- 200
[- {
- "name": "Slack",
- "description": "Post in Slack when a feature is updated",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "61450f3daec96f5cf4a49955",
- "_feature": "61450f3daec96f5cf4a49956",
- "_environments": [
- "string"
], - "events": [
- "createdFeature",
- "modifiedFeature"
], - "source": "dashboard",
- "createdBy": "auth0|61450f3daec96f5cf4a49955",
- "createdAt": "2021-09-17T16:47:01.000Z",
- "updatedAt": "2021-09-17T16:47:01.000Z",
- "outputFormat": { },
- "_slackIntegration": "string"
}
]
Update Webhook
Update a Webhook
path Parameters
id required | string |
project required | string A Project key or ID |
Request Body schema: application/jsonrequired
name | string [ 1 .. 100 ] characters The name of the Webhook |
description | string <= 1000 characters The description of the Webhook |
_feature required | string |
_environments required | Array of strings |
events | Array of strings The events that trigger the webhook |
url | string The URL to call once the type is triggered |
outputFormat | object |
Responses
Request samples
- Payload
{- "name": "Slack",
- "description": "Post in Slack when a feature is updated",
- "_feature": "string",
- "_environments": [
- "string"
], - "events": [
- "createdFeature",
- "modifiedFeature"
], - "outputFormat": { }
}
Response samples
- 200
{- "name": "Slack",
- "description": "Post in Slack when a feature is updated",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "61450f3daec96f5cf4a49955",
- "_feature": "61450f3daec96f5cf4a49956",
- "_environments": [
- "string"
], - "events": [
- "createdFeature",
- "modifiedFeature"
], - "source": "dashboard",
- "createdBy": "auth0|61450f3daec96f5cf4a49955",
- "createdAt": "2021-09-17T16:47:01.000Z",
- "updatedAt": "2021-09-17T16:47:01.000Z",
- "outputFormat": { },
- "_slackIntegration": "string"
}
Get a Webhook
Get a webhook by ID
path Parameters
id required | string |
project required | string A Project key or ID |
Responses
Response samples
- 200
{- "name": "Slack",
- "description": "Post in Slack when a feature is updated",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "61450f3daec96f5cf4a49955",
- "_feature": "61450f3daec96f5cf4a49956",
- "_environments": [
- "string"
], - "events": [
- "createdFeature",
- "modifiedFeature"
], - "source": "dashboard",
- "createdBy": "auth0|61450f3daec96f5cf4a49955",
- "createdAt": "2021-09-17T16:47:01.000Z",
- "updatedAt": "2021-09-17T16:47:01.000Z",
- "outputFormat": { },
- "_slackIntegration": "string"
}
Delete a Webhook
Delete a webhook by ID
path Parameters
id required | string |
project required | string A Project key or ID |
Responses
Response samples
- 200
{- "name": "Slack",
- "description": "Post in Slack when a feature is updated",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "61450f3daec96f5cf4a49955",
- "_feature": "61450f3daec96f5cf4a49956",
- "_environments": [
- "string"
], - "events": [
- "createdFeature",
- "modifiedFeature"
], - "source": "dashboard",
- "createdBy": "auth0|61450f3daec96f5cf4a49955",
- "createdAt": "2021-09-17T16:47:01.000Z",
- "updatedAt": "2021-09-17T16:47:01.000Z",
- "outputFormat": { },
- "_slackIntegration": "string"
}