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/json
name required | string <= 100 characters Project name |
key required | string <= 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-F]{3}|[0-9A-F]{4}|[0-9A-F]{6}|[0-9A... Project display color, used to highlight different projects on the dashboard. Must use Hex color code. |
Responses
Request samples
- Payload
{- "name": "Delivery App",
- "key": "delivery-app",
- "description": "A web app to manage outbound deliveries",
- "color": "#4073FF"
}
Response samples
- 201
- 400
- 409
{- "name": "Delivery App",
- "key": "delivery-app",
- "description": "A web app to manage outbound deliveries",
- "color": "#4073FF",
- "_id": "61450f3daec96f5cf4a49946",
- "_organization": "string",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
List Projects
List Projects
query Parameters
page | number <int32> >= 1 Default: 1 |
perPage | number <int32> [ 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": "Delivery App",
- "key": "delivery-app",
- "description": "A web app to manage outbound deliveries",
- "color": "#4073FF",
- "_id": "61450f3daec96f5cf4a49946",
- "_organization": "string",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
]
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
{- "name": "Delivery App",
- "key": "delivery-app",
- "description": "A web app to manage outbound deliveries",
- "color": "#4073FF",
- "_id": "61450f3daec96f5cf4a49946",
- "_organization": "string",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
Update a Project
Update a Project by ID or key
path Parameters
key required | string A Project key or ID |
Request Body schema: application/json
name | string <= 100 characters Project name |
key | string <= 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-F]{3}|[0-9A-F]{4}|[0-9A-F]{6}|[0-9A... Project display color, used to highlight different projects on the dashboard. Must use Hex color code. |
Responses
Request samples
- Payload
{- "name": "Delivery App",
- "key": "delivery-app",
- "description": "A web app to manage outbound deliveries",
- "color": "#4073FF"
}
Response samples
- 200
- 400
- 404
- 409
{- "name": "Delivery App",
- "key": "delivery-app",
- "description": "A web app to manage outbound deliveries",
- "color": "#4073FF",
- "_id": "61450f3daec96f5cf4a49946",
- "_organization": "string",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
Create Environment
Create a new Environment
path Parameters
project required | any A Project key or ID |
Request Body schema: application/json
name required | string <= 100 characters A unique display name |
key required | string <= 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-F]{3}|[0-9A-F]{4}|[0-9A-F]{6}|[0-9A... 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"
}
}
List Environments
List Environments
path Parameters
project required | any A Project key or ID |
query Parameters
page | number <int32> >= 1 Default: 1 |
perPage | number <int32> [ 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"
}
}
]
Get an Environment
Get an Environment by ID or key
path Parameters
key required | string A Environment key or ID |
project required | any 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"
}
}
Update an Environment
Update an Environment by ID or key
path Parameters
key required | string A Environment key or ID |
project required | any A Project key or ID |
Request Body schema: application/json
name | string <= 100 characters A unique display name |
key | string <= 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-F]{3}|[0-9A-F]{4}|[0-9A-F]{6}|[0-9A... 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"
}
}
Delete an Environment
Delete an Environment by ID or key
path Parameters
key required | string A Environment key or ID |
project required | any A Project key or ID |
Responses
Response samples
- 404
- 405
{- "statusCode": 404,
- "message": "Item with key 'delivery-app' not found",
- "error": "Not Found"
}
Create a Variable
path Parameters
project required | any A Project key or ID |
Request Body schema: application/json
name | string <= 100 characters Variable name |
description | string <= 1000 characters A description of the Variable |
key required | string <= 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] |
defaultValue | object A default value for the Variable |
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",
- "defaultValue": false
}
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",
- "defaultValue": false,
- "source": "api",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
List Variables
path Parameters
project required | any A Project key or ID |
query Parameters
page | number <int32> >= 1 Default: 1 |
perPage | number <int32> [ 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" |
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",
- "defaultValue": false,
- "source": "api",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
]
Get a Variable
path Parameters
key required | string A Variable key or ID |
project required | any 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",
- "defaultValue": false,
- "source": "api",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
Update a Variable
path Parameters
key required | string A Variable key or ID |
project required | any A Project key or ID |
Request Body schema: application/json
name | string <= 100 characters Variable name |
description | string <= 1000 characters A description of the Variable |
key | string <= 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 |
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"
}
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",
- "defaultValue": false,
- "source": "api",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
Create Feature
Create a new Feature
path Parameters
project required | any A Project key or ID |
Request Body schema: application/json
name required | string <= 100 characters Name of the Feature |
key required | string <= 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 objects (FeatureVariationDto) [ items ] Variation configurations to be used by feature configurations. | |
Array of objects (CreateVariableDto) [ items ] Variable definitions to be referenced in variations | |
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.",
- "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"
}
}
}
], - "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",
- "defaultValue": false
}
], - "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",
- "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"
}
], - "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",
- "defaultValue": false,
- "source": "api",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
], - "tags": [
- "Dashboard",
- "QA"
], - "ldLink": "string"
}
List Features
List Features
path Parameters
project required | any A Project key or ID |
query Parameters
page | number <int32> >= 1 Default: 1 |
perPage | number <int32> [ 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" |
Responses
Response samples
- 200
- 400
[- {
- "name": "New Dashboard",
- "key": "new-dash",
- "description": "New client-facing dashboard.",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "source": "api",
- "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"
}
], - "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",
- "defaultValue": false,
- "source": "api",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
], - "tags": [
- "Dashboard",
- "QA"
], - "ldLink": "string"
}
]
Create Multiple Features with a single request
Create multiple new Features
path Parameters
project required | any A Project key or ID |
Request Body schema: application/json
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",
- "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"
}
], - "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",
- "defaultValue": false,
- "source": "api",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
], - "tags": [
- "Dashboard",
- "QA"
], - "ldLink": "string"
}
]
Get a Feature
Get a Feature by ID or key
path Parameters
key required | string A Feature key or ID |
project required | any 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",
- "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"
}
], - "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",
- "defaultValue": false,
- "source": "api",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
], - "tags": [
- "Dashboard",
- "QA"
], - "ldLink": "string"
}
Update a Feature
Update a Feature by ID or key
path Parameters
key required | string A Feature key or ID |
project required | any A Project key or ID |
Request Body schema: application/json
name | string <= 100 characters Name of the Feature |
key | string <= 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 objects (FeatureVariationDto) [ items ] Variation configurations to be used by feature configurations. | |
Array of objects (CreateVariableDto) [ items ] Variable definitions to be referenced in variations | |
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.",
- "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"
}
}
}
], - "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",
- "defaultValue": false
}
], - "type": "release",
- "tags": [
- "Dashboard",
- "QA"
]
}
Response samples
- 200
- 400
- 404
- 409
- 412
{- "name": "New Dashboard",
- "key": "new-dash",
- "description": "New client-facing dashboard.",
- "_id": "61450f3daec96f5cf4a49946",
- "_project": "string",
- "source": "api",
- "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"
}
], - "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",
- "defaultValue": false,
- "source": "api",
- "_createdBy": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
], - "tags": [
- "Dashboard",
- "QA"
], - "ldLink": "string"
}
Link feature to Jira issue
path Parameters
key required | string |
project required | any A Project key or ID |
Request Body schema: application/json
issueId required | string |
Responses
Request samples
- Payload
{- "issueId": "string"
}
Response samples
- 201
- 400
- 404
- 409
- 412
{- "issueId": "string"
}
Unlink feature from Jira issue
path Parameters
key required | string A Feature key or ID |
issue_id required | string |
project required | any A Project key or ID |
Responses
Response samples
- 404
{- "statusCode": 404,
- "message": "Item with key 'delivery-app' not found",
- "error": "Not Found"
}
Link feature to Jira issue
path Parameters
key required | string |
project required | any A Project key or ID |
Request Body schema: application/json
issueId required | string |
Responses
Request samples
- Payload
{- "issueId": "string"
}
Response samples
- 201
- 400
- 404
- 409
- 412
{- "issueId": "string"
}
Unlink feature from Jira issue
path Parameters
key required | string A Feature key or ID |
issue_id required | string |
project required | any A Project key or ID |
Responses
Response samples
- 404
{- "statusCode": 404,
- "message": "Item with key 'delivery-app' not found",
- "error": "Not Found"
}
List Feature configurations
List Feature configurations for all environments or by environment key or ID
path Parameters
feature required | any A Feature key or ID |
project required | any A Project key or ID |
query Parameters
environment | any 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": [
- {
- "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"
}
]
}
]
}
]
Update a Feature configuration
Update a Feature configuration by environment key or ID
path Parameters
feature required | any A Feature key or ID |
project required | any A Project key or ID |
query Parameters
environment required | any A Environment key or ID |
Request Body schema: application/json
required | Array of objects (UpdateTargetDto) [ items ] The targets to evaluate what variation a user should be delivered |
status | string Enum: "active" "inactive" "archived" Status of the Feature Configuration |
Responses
Request samples
- Payload
{- "targets": [
- {
- "audience": {
- "name": "Android Users",
- "filters": {
- "filters": [
- {
- "type": "all"
}
], - "operator": "and"
}
}, - "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"
}
]
}
], - "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": [
- {
- "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"
}
]
}
]
}
ResultsController_getResultsSummary
path Parameters
feature required | any A Feature key or ID |
project required | any 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" |
Responses
Response samples
- 200
{- "result": {
- "counts": {
- "total": 0,
- "withFeature": 0,
- "accessedFeature": 0
}
}, - "cached": true,
- "updatedAt": "2019-08-24T14:15:22Z"
}
ResultsController_getEvaluationsPerHourByFeature
path Parameters
feature required | any A Feature key or ID |
project required | any 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" |
Responses
Response samples
- 200
{- "result": {
- "evaluations": [
- {
- "values": { },
- "date": "2019-08-24T14:15:22Z"
}
]
}, - "cached": true,
- "updatedAt": "2019-08-24T14:15:22Z"
}
ResultsController_getEvaluationsPerHourByProject
path Parameters
project required | any A Project key or ID |
query Parameters
startDate | number |
endDate | number |
environment | string A Environment key or ID |
period | string Enum: "day" "hour" "month" |
Responses
Response samples
- 200
{- "result": {
- "evaluations": [
- {
- "date": "2019-08-24T14:15:22Z",
- "value": 0
}
]
}, - "cached": true,
- "updatedAt": "2019-08-24T14:15:22Z"
}
Create Custom Property
Create a new Custom Property
path Parameters
project required | any A Project key or ID |
Request Body schema: application/json
name required | string <= 100 characters Display name for Custom Property. |
key required | string <= 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" "Semver" Type of the Custom Propety. Must be one of: "Boolean", "Number", "Semver" 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 | any A Project key or ID |
query Parameters
page | number <int32> >= 1 Default: 1 |
perPage | number <int32> [ 1 .. 1000 ] Default: 100 |
sortBy | string Default: "createdAt" |
sortOrder | string Default: "desc" Enum: "asc" "desc" |
search | string |
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"
}
]