Download OpenAPI specification:Download
Documents the DevCycle Bucketing API which provides an API interface to User Bucketing and for Server SDKs configured to use Cloud Bucketing.
| user_id required | string A unique id used to fetch and update the EdgeDB data |
| sdkKey | string SDK Key as defined in the dashboard for your DevCycle environment. One of the Authorization header or "sdkKey" query parameter is required to be set. |
User properties to update the EdgeDB data
| user_id required | string Unique id to identify the user |
string User's email used to identify the user on the dashaboard / target audiences | |
| name | string User's name used to idenify the user on the dashaboard / target audiences |
object User's language in ISO 639-1 format | |
object User's country in ISO 3166 alpha-2 format | |
| customData | object User's custom data to target the user with, data will be logged to DevCycle for use in dashboard. |
| lastSeenDate | number Date the user was last seen being used, Unix epoch timestamp format |
{- "user_id": "string",
- "email": "string",
- "name": "string",
- "language": {
- "property1": "st",
- "property2": "st"
}, - "country": {
- "property1": "st",
- "property2": "st"
}, - "customData": { },
- "lastSeenDate": 0
}{- "message": "string"
}| key required | string^[a-z0-9-_.]+$ Example: my-variable-key Variable key |
| user_id required | string Unique id to identify the user |
string User's email used to identify the user on the dashboard / target audiences | |
| name | string User's name used to identify the user on the dashboard / target audiences |
| language | string <= 2 characters User's language in ISO 639-1 format |
| country | string <= 2 characters User's country in ISO 3166 alpha-2 format |
| appVersion | string App Version of the running application |
| appBuild | string App Build number of the running application |
| customData | object User's custom data to target the user with, data will be logged to DevCycle for use in dashboard. |
| privateCustomData | object User's custom data to target the user with, data will not be logged to DevCycle only used for feature bucketing. |
| createdDate | number Date the user was created, Unix epoch timestamp format |
| lastSeenDate | number Date the user was created, Unix epoch timestamp format |
| platform | string Platform the Client SDK is running on |
| platformVersion | string Version of the platform the Client SDK is running on |
| deviceModel | string User's device model |
| sdkType | string Enum: "api" "server" "client" "mobile" DevCycle SDK type |
| sdkVersion | string DevCycle SDK Version |
{- "user_id": "user_123456",
- "email": "user@example.com",
- "name": "John Doe",
- "country": "US",
- "customData": {
- "plan": "premium",
- "signupDate": "2024-01-01"
}
}{- "_id": "614ef6ea475129459160721a",
- "_feature": "614ef6aa473928459060721a",
- "key": "my-variable-key",
- "type": "String",
- "value": "feature-enabled"
}| user_id required | string Unique id to identify the user |
string User's email used to identify the user on the dashboard / target audiences | |
| name | string User's name used to identify the user on the dashboard / target audiences |
| language | string <= 2 characters User's language in ISO 639-1 format |
| country | string <= 2 characters User's country in ISO 3166 alpha-2 format |
| appVersion | string App Version of the running application |
| appBuild | string App Build number of the running application |
| customData | object User's custom data to target the user with, data will be logged to DevCycle for use in dashboard. |
| privateCustomData | object User's custom data to target the user with, data will not be logged to DevCycle only used for feature bucketing. |
| createdDate | number Date the user was created, Unix epoch timestamp format |
| lastSeenDate | number Date the user was created, Unix epoch timestamp format |
| platform | string Platform the Client SDK is running on |
| platformVersion | string Version of the platform the Client SDK is running on |
| deviceModel | string User's device model |
| sdkType | string Enum: "api" "server" "client" "mobile" DevCycle SDK type |
| sdkVersion | string DevCycle SDK Version |
{- "user_id": "user_123456",
- "email": "user@example.com",
- "name": "John Doe",
- "country": "US",
- "customData": {
- "plan": "premium",
- "signupDate": "2024-01-01"
}
}{- "my-string-var": {
- "_id": "614ef6ea475129459160721a",
- "_feature": "614ef6aa473928459060721a",
- "key": "my-string-var",
- "type": "String",
- "value": "enabled"
}, - "my-boolean-var": {
- "_id": "614ef6ea475139459160721b",
- "_feature": "614ef6aa473928459060721b",
- "key": "my-boolean-var",
- "type": "Boolean",
- "value": true
}
}| user_id required | string Unique id to identify the user |
string User's email used to identify the user on the dashboard / target audiences | |
| name | string User's name used to identify the user on the dashboard / target audiences |
| language | string <= 2 characters User's language in ISO 639-1 format |
| country | string <= 2 characters User's country in ISO 3166 alpha-2 format |
| appVersion | string App Version of the running application |
| appBuild | string App Build number of the running application |
| customData | object User's custom data to target the user with, data will be logged to DevCycle for use in dashboard. |
| privateCustomData | object User's custom data to target the user with, data will not be logged to DevCycle only used for feature bucketing. |
| createdDate | number Date the user was created, Unix epoch timestamp format |
| lastSeenDate | number Date the user was created, Unix epoch timestamp format |
| platform | string Platform the Client SDK is running on |
| platformVersion | string Version of the platform the Client SDK is running on |
| deviceModel | string User's device model |
| sdkType | string Enum: "api" "server" "client" "mobile" DevCycle SDK type |
| sdkVersion | string DevCycle SDK Version |
{- "user_id": "user_123456",
- "email": "user@example.com",
- "name": "John Doe",
- "country": "US",
- "customData": {
- "plan": "premium",
- "signupDate": "2024-01-01"
}
}{- "new-dashboard": {
- "_id": "614ef6aa473928459060721a",
- "key": "new-dashboard",
- "type": "release",
- "_variation": "614ef6ea4753284590607216",
- "variationName": "Variation On",
- "variationKey": "variation-on"
}
}Array of objects (Event) | |
object (UserData) |
{- "user": {
- "user_id": "user_123456",
- "email": "user@example.com",
- "customData": {
- "plan": "premium"
}
}, - "events": [
- {
- "type": "purchase",
- "value": 99.99,
- "metaData": {
- "item": "subscription",
- "currency": "USD"
}
}, - {
- "type": "feature_click",
- "target": "new-dashboard-button"
}
]
}{- "message": "Successfully received 2 events."
}Fetch a project config to display features available for Opt-in
| sdkKey | string SDK Key as defined in the dashboard for your DevCycle environment. One of the Authorization header or "sdkKey" query parameter is required to be set. |
| user_id required | string Unique id to identify the user |
{- "settings": {
- "_project": "614df3aa473928459060721a",
- "enabled": true,
- "title": "Feature Preview",
- "description": "Opt in to preview upcoming features",
- "colors": {
- "primary": "#0066ff",
- "secondary": "#ffffff"
}, - "poweredByAlignment": "center"
}, - "features": [
- {
- "id": "614ef6aa473928459060721a",
- "name": "New Dashboard",
- "description": "Try our redesigned dashboard interface",
- "resolution": "explicit",
- "status": true
}, - {
- "id": "614ef6aa473928459060721b",
- "name": "Beta Analytics",
- "description": "Access to new analytics features",
- "resolution": "implicit",
- "status": false
}
]
}| user_id required | string Unique user_id to identify the user |
| sdkKey | string SDK Key as defined in the dashboard for your DevCycle environment. One of the Authorization header or "sdkKey" query parameter is required to be set. |
A map of feature IDs to boolean values. The value should be true if the user has opted in, false otherwise
| property name* additional property | boolean |
{- "614ef6aa473928459060721a": true,
- "614ef6aa473928459060721b": false
}{- "message": "Successfully updated user opt-in data for environment with key 'production'."
}See the OpenFeature documentation for more information: https://github.com/open-feature/protocol
Return a single flag for a user context
| key required | string^[a-z0-9-_.]+$ |
| context | object (ofrep-context) Context information for flag evaluation |
{- "context": { }
}{- "key": "my-flag",
- "reason": "STATIC",
- "variant": "string",
- "metadata": { },
- "value": { }
}Return all flag values for a user context.
| If-None-Match | string The request will be processed only if ETag doesn't match any of the values listed. |
| context | object (ofrep-context) Context information for flag evaluation |
{- "context": { }
}{- "flags": [
- {
- "value": true
}
]
}