This feature is in beta
To use this feature, pass in a header including the
LD-API-Version
key with value set tobeta
. Use this header with each call. To learn more, read Beta resources.Resources that are in beta are still undergoing testing and development. They may change without notice, including becoming backwards incompatible.
Flag import configurations allow you to import feature flags from another feature management system.
Use the flag import configuration endpoints to create, delete, and manage flag import configurations. You can import flags from other feature management tools into LaunchDarkly. For example, you can import flags from Split.io.
Several of the endpoints in the flag import configuration API require an integration ID. The integration ID is returned as part of the Create a flag import configuration response, in the _id
field. It is also returned as part of the List all flag import configurations response, in the _id
field of each element in the items
array.
To learn more about flag import configurations, read Import flags.
List all flag import configurations.
Flag Import Configuration response
Invalid request
Invalid access token
Forbidden
Project not found
Status conflict
Rate limited
{- "_links": {
- "self": {
- "href": "string",
- "type": "string"
}, - "parent": {
- "href": "string",
- "type": "string"
}
}, - "items": [
- {
- "_links": {
- "self": {
- "href": "string",
- "type": "string"
}, - "parent": {
- "href": "string",
- "type": "string"
}, - "project": {
- "href": "string",
- "type": "string"
}
}, - "_id": "12ab3c4d5ef1a2345bcde67f",
- "integrationKey": "split",
- "projectKey": "default",
- "config": {
- "property1": null,
- "property2": null
}, - "tags": [ ],
- "name": "Development environment configuration",
- "version": 1,
- "_access": {
- "denied": [
- {
- "action": "string",
- "reason": {
- "resources": [
- "proj/*:env/*;qa_*:/flag/*"
], - "notResources": [
- null
], - "actions": [
- "*"
], - "notActions": [
- null
], - "effect": "allow",
- "role_name": "string"
}
}
], - "allowed": [
- {
- "action": "string",
- "reason": {
- "resources": [
- "proj/*:env/*;qa_*:/flag/*"
], - "notResources": [
- null
], - "actions": [
- "*"
], - "notActions": [
- null
], - "effect": "allow",
- "role_name": "string"
}
}
]
}, - "_status": {
- "status": "pending",
- "lastImport": 0,
- "lastError": 0,
- "errors": [
- {
- "integrationId": "string",
- "message": "string",
- "statusCode": 0,
- "timestamp": 0
}
]
}
}
]
}
Create a new flag import configuration. The integrationKey
path parameter identifies the feature management system from which the import occurs, for example, split
. The config
object in the request body schema is described by the global integration settings, as specified by the formVariables
in the manifest.json
for this integration. It varies slightly based on the integrationKey
.
Flag Import Configuration response
Invalid request
Invalid access token
Forbidden
Project not found
Status conflict
Rate limited
{- "config": {
- "environmentId": "The ID of the environment in the external system",
- "ldApiKey": "An API key with create flag permissions in your LaunchDarkly account",
- "ldMaintainer": "The ID of the member who will be the maintainer of the imported flags",
- "ldTag": "A tag to apply to all flags imported to LaunchDarkly",
- "splitTag": "If provided, imports only the flags from the external system with this tag. Leave blank to import all flags.",
- "workspaceApiKey": "An API key with read permissions in the external feature management system",
- "workspaceId": "The ID of the workspace in the external system"
}, - "name": "Sample configuration",
- "tags": [
- "example-tag"
]
}
{- "_links": {
- "self": {
- "href": "string",
- "type": "string"
}, - "parent": {
- "href": "string",
- "type": "string"
}, - "project": {
- "href": "string",
- "type": "string"
}
}, - "_id": "12ab3c4d5ef1a2345bcde67f",
- "integrationKey": "split",
- "projectKey": "default",
- "config": {
- "property1": null,
- "property2": null
}, - "tags": [ ],
- "name": "Development environment configuration",
- "version": 1,
- "_access": {
- "denied": [
- {
- "action": "string",
- "reason": {
- "resources": [
- "proj/*:env/*;qa_*:/flag/*"
], - "notResources": [
- "string"
], - "actions": [
- "*"
], - "notActions": [
- "string"
], - "effect": "allow",
- "role_name": "string"
}
}
], - "allowed": [
- {
- "action": "string",
- "reason": {
- "resources": [
- "proj/*:env/*;qa_*:/flag/*"
], - "notResources": [
- "string"
], - "actions": [
- "*"
], - "notActions": [
- "string"
], - "effect": "allow",
- "role_name": "string"
}
}
]
}, - "_status": {
- "status": "pending",
- "lastImport": 0,
- "lastError": 0,
- "errors": [
- {
- "integrationId": "string",
- "message": "string",
- "statusCode": 0,
- "timestamp": 0
}
]
}
}
Get a single flag import configuration by ID. The integrationKey
path parameter identifies the feature management system from which the import occurs, for example, split
.
Flag import response
Invalid request
Invalid access token
Forbidden
Project or import configuration not found
Status conflict
Rate limited
{- "_links": {
- "self": {
- "href": "string",
- "type": "string"
}, - "parent": {
- "href": "string",
- "type": "string"
}, - "project": {
- "href": "string",
- "type": "string"
}
}, - "_id": "12ab3c4d5ef1a2345bcde67f",
- "integrationKey": "split",
- "projectKey": "default",
- "config": {
- "property1": null,
- "property2": null
}, - "tags": [ ],
- "name": "Development environment configuration",
- "version": 1,
- "_access": {
- "denied": [
- {
- "action": "string",
- "reason": {
- "resources": [
- "proj/*:env/*;qa_*:/flag/*"
], - "notResources": [
- "string"
], - "actions": [
- "*"
], - "notActions": [
- "string"
], - "effect": "allow",
- "role_name": "string"
}
}
], - "allowed": [
- {
- "action": "string",
- "reason": {
- "resources": [
- "proj/*:env/*;qa_*:/flag/*"
], - "notResources": [
- "string"
], - "actions": [
- "*"
], - "notActions": [
- "string"
], - "effect": "allow",
- "role_name": "string"
}
}
]
}, - "_status": {
- "status": "pending",
- "lastImport": 0,
- "lastError": 0,
- "errors": [
- {
- "integrationId": "string",
- "message": "string",
- "statusCode": 0,
- "timestamp": 0
}
]
}
}
Updating a flag import configuration uses a JSON patch representation of the desired changes. To learn more, read Updates.
To add an element to the import configuration fields that are arrays, set the path
to the name of the field and then append /<array index>
. Use /0
to add to the beginning of the array. Use /-
to add to the end of the array.
You can update the config
, tags
, and name
of the flag import configuration.
Flag import response
Invalid request
Invalid access token
Forbidden
Project or import configuration not found
Status conflict
Rate limited
[- {
- "op": "replace",
- "path": "/exampleField",
- "value": "new example value"
}
]
{- "_links": {
- "self": {
- "href": "string",
- "type": "string"
}, - "parent": {
- "href": "string",
- "type": "string"
}, - "project": {
- "href": "string",
- "type": "string"
}
}, - "_id": "12ab3c4d5ef1a2345bcde67f",
- "integrationKey": "split",
- "projectKey": "default",
- "config": {
- "property1": null,
- "property2": null
}, - "tags": [ ],
- "name": "Development environment configuration",
- "version": 1,
- "_access": {
- "denied": [
- {
- "action": "string",
- "reason": {
- "resources": [
- "proj/*:env/*;qa_*:/flag/*"
], - "notResources": [
- "string"
], - "actions": [
- "*"
], - "notActions": [
- "string"
], - "effect": "allow",
- "role_name": "string"
}
}
], - "allowed": [
- {
- "action": "string",
- "reason": {
- "resources": [
- "proj/*:env/*;qa_*:/flag/*"
], - "notResources": [
- "string"
], - "actions": [
- "*"
], - "notActions": [
- "string"
], - "effect": "allow",
- "role_name": "string"
}
}
]
}, - "_status": {
- "status": "pending",
- "lastImport": 0,
- "lastError": 0,
- "errors": [
- {
- "integrationId": "string",
- "message": "string",
- "statusCode": 0,
- "timestamp": 0
}
]
}
}
Delete a flag import configuration by ID. The integrationKey
path parameter identifies the feature management system from which the import occurs, for example, split
.
Action completed successfully
Invalid access token
Forbidden
Project or import configuration not found
Status conflict
Rate limited
{- "code": "unauthorized",
- "message": "Invalid access token"
}
Trigger a single flag import run for an existing flag import configuration. The integrationKey
path parameter identifies the feature management system from which the import occurs, for example, split
.
Invalid request
Invalid access token
Forbidden
Project or import configuration not found
Status conflict
Rate limited
{- "Name": "string",
- "Kind": "string",
- "PkgPath": "string",
- "PkgName": "string",
- "ValidPos": true,
- "Shadow": {
- "property1": true,
- "property2": true
}
}