curl --request POST \
--url https://app.launchdarkly.com/api/v2/integration-capabilities/featureStore/{projectKey}/{environmentKey}/{integrationKey} \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"config": {
"optional": "example value for optional formVariables property for sample-integration",
"required": "example value for required formVariables property for sample-integration"
},
"name": "Sample integration",
"on": false,
"tags": [
"example-tag"
]
}
'import requests
url = "https://app.launchdarkly.com/api/v2/integration-capabilities/featureStore/{projectKey}/{environmentKey}/{integrationKey}"
payload = {
"config": {
"optional": "example value for optional formVariables property for sample-integration",
"required": "example value for required formVariables property for sample-integration"
},
"name": "Sample integration",
"on": False,
"tags": ["example-tag"]
}
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
config: {
optional: 'example value for optional formVariables property for sample-integration',
required: 'example value for required formVariables property for sample-integration'
},
name: 'Sample integration',
on: false,
tags: ['example-tag']
})
};
fetch('https://app.launchdarkly.com/api/v2/integration-capabilities/featureStore/{projectKey}/{environmentKey}/{integrationKey}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.launchdarkly.com/api/v2/integration-capabilities/featureStore/{projectKey}/{environmentKey}/{integrationKey}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'config' => [
'optional' => 'example value for optional formVariables property for sample-integration',
'required' => 'example value for required formVariables property for sample-integration'
],
'name' => 'Sample integration',
'on' => false,
'tags' => [
'example-tag'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://app.launchdarkly.com/api/v2/integration-capabilities/featureStore/{projectKey}/{environmentKey}/{integrationKey}"
payload := strings.NewReader("{\n \"config\": {\n \"optional\": \"example value for optional formVariables property for sample-integration\",\n \"required\": \"example value for required formVariables property for sample-integration\"\n },\n \"name\": \"Sample integration\",\n \"on\": false,\n \"tags\": [\n \"example-tag\"\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://app.launchdarkly.com/api/v2/integration-capabilities/featureStore/{projectKey}/{environmentKey}/{integrationKey}")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"config\": {\n \"optional\": \"example value for optional formVariables property for sample-integration\",\n \"required\": \"example value for required formVariables property for sample-integration\"\n },\n \"name\": \"Sample integration\",\n \"on\": false,\n \"tags\": [\n \"example-tag\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.launchdarkly.com/api/v2/integration-capabilities/featureStore/{projectKey}/{environmentKey}/{integrationKey}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"config\": {\n \"optional\": \"example value for optional formVariables property for sample-integration\",\n \"required\": \"example value for required formVariables property for sample-integration\"\n },\n \"name\": \"Sample integration\",\n \"on\": false,\n \"tags\": [\n \"example-tag\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"_links": {
"self": {
"href": "<string>",
"type": "<string>"
},
"parent": {
"href": "<string>",
"type": "<string>"
},
"project": {
"href": "<string>",
"type": "<string>"
},
"environment": {
"href": "<string>",
"type": "<string>"
}
},
"_id": "12ab3c4d5ef1a2345bcde67f",
"integrationKey": "example-integration-key",
"projectKey": "default",
"environmentKey": "development",
"config": {},
"on": true,
"tags": [],
"name": "Development environment configuration",
"version": 1,
"_access": {
"denied": [
{
"action": "<string>",
"reason": {
"effect": "allow",
"resources": [
"proj/*:env/*;qa_*:/flag/*"
],
"notResources": [
"<string>"
],
"actions": [
"*"
],
"notActions": [
"<string>"
],
"role_name": "<string>"
}
}
],
"allowed": [
{
"action": "<string>",
"reason": {
"effect": "allow",
"resources": [
"proj/*:env/*;qa_*:/flag/*"
],
"notResources": [
"<string>"
],
"actions": [
"*"
],
"notActions": [
"<string>"
],
"role_name": "<string>"
}
}
]
}
}{
"code": "invalid_request",
"message": "Invalid request body"
}{
"code": "unauthorized",
"message": "Invalid access token"
}{
"code": "forbidden",
"message": "Forbidden. Access to the requested resource was denied."
}{
"code": "not_found",
"message": "Invalid resource identifier"
}{
"code": "rate_limited",
"message": "You've exceeded the API rate limit. Try again later."
}Create delivery configuration
Create a delivery configuration.
curl --request POST \
--url https://app.launchdarkly.com/api/v2/integration-capabilities/featureStore/{projectKey}/{environmentKey}/{integrationKey} \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"config": {
"optional": "example value for optional formVariables property for sample-integration",
"required": "example value for required formVariables property for sample-integration"
},
"name": "Sample integration",
"on": false,
"tags": [
"example-tag"
]
}
'import requests
url = "https://app.launchdarkly.com/api/v2/integration-capabilities/featureStore/{projectKey}/{environmentKey}/{integrationKey}"
payload = {
"config": {
"optional": "example value for optional formVariables property for sample-integration",
"required": "example value for required formVariables property for sample-integration"
},
"name": "Sample integration",
"on": False,
"tags": ["example-tag"]
}
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
config: {
optional: 'example value for optional formVariables property for sample-integration',
required: 'example value for required formVariables property for sample-integration'
},
name: 'Sample integration',
on: false,
tags: ['example-tag']
})
};
fetch('https://app.launchdarkly.com/api/v2/integration-capabilities/featureStore/{projectKey}/{environmentKey}/{integrationKey}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.launchdarkly.com/api/v2/integration-capabilities/featureStore/{projectKey}/{environmentKey}/{integrationKey}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'config' => [
'optional' => 'example value for optional formVariables property for sample-integration',
'required' => 'example value for required formVariables property for sample-integration'
],
'name' => 'Sample integration',
'on' => false,
'tags' => [
'example-tag'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://app.launchdarkly.com/api/v2/integration-capabilities/featureStore/{projectKey}/{environmentKey}/{integrationKey}"
payload := strings.NewReader("{\n \"config\": {\n \"optional\": \"example value for optional formVariables property for sample-integration\",\n \"required\": \"example value for required formVariables property for sample-integration\"\n },\n \"name\": \"Sample integration\",\n \"on\": false,\n \"tags\": [\n \"example-tag\"\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://app.launchdarkly.com/api/v2/integration-capabilities/featureStore/{projectKey}/{environmentKey}/{integrationKey}")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"config\": {\n \"optional\": \"example value for optional formVariables property for sample-integration\",\n \"required\": \"example value for required formVariables property for sample-integration\"\n },\n \"name\": \"Sample integration\",\n \"on\": false,\n \"tags\": [\n \"example-tag\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.launchdarkly.com/api/v2/integration-capabilities/featureStore/{projectKey}/{environmentKey}/{integrationKey}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"config\": {\n \"optional\": \"example value for optional formVariables property for sample-integration\",\n \"required\": \"example value for required formVariables property for sample-integration\"\n },\n \"name\": \"Sample integration\",\n \"on\": false,\n \"tags\": [\n \"example-tag\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"_links": {
"self": {
"href": "<string>",
"type": "<string>"
},
"parent": {
"href": "<string>",
"type": "<string>"
},
"project": {
"href": "<string>",
"type": "<string>"
},
"environment": {
"href": "<string>",
"type": "<string>"
}
},
"_id": "12ab3c4d5ef1a2345bcde67f",
"integrationKey": "example-integration-key",
"projectKey": "default",
"environmentKey": "development",
"config": {},
"on": true,
"tags": [],
"name": "Development environment configuration",
"version": 1,
"_access": {
"denied": [
{
"action": "<string>",
"reason": {
"effect": "allow",
"resources": [
"proj/*:env/*;qa_*:/flag/*"
],
"notResources": [
"<string>"
],
"actions": [
"*"
],
"notActions": [
"<string>"
],
"role_name": "<string>"
}
}
],
"allowed": [
{
"action": "<string>",
"reason": {
"effect": "allow",
"resources": [
"proj/*:env/*;qa_*:/flag/*"
],
"notResources": [
"<string>"
],
"actions": [
"*"
],
"notActions": [
"<string>"
],
"role_name": "<string>"
}
}
]
}
}{
"code": "invalid_request",
"message": "Invalid request body"
}{
"code": "unauthorized",
"message": "Invalid access token"
}{
"code": "forbidden",
"message": "Forbidden. Access to the requested resource was denied."
}{
"code": "not_found",
"message": "Invalid resource identifier"
}{
"code": "rate_limited",
"message": "You've exceeded the API rate limit. Try again later."
}Authorizations
Path Parameters
The project key
The environment key
The integration key
Body
The global integration settings, as specified by the formVariables in the manifest.json for this integration.
Show child attributes
Show child attributes
"{\"required\": \"example value for required formVariables property for sample-integration\", \"optional\": \"example value for optional formVariables property for sample-integration\"}"
Whether the integration configuration is active. Default value is false.
false
Tags to associate with the integration
["example-tag"]
Name to identify the integration
"Sample integration"
Response
Integration delivery configuration response
The location and content type of related resources
Show child attributes
Show child attributes
The integration ID
"12ab3c4d5ef1a2345bcde67f"
The integration key
"example-integration-key"
The project key
"default"
The environment key
"development"
The delivery configuration for the given integration provider. Only included when requesting a single integration by ID. Refer to the formVariables field in the corresponding manifest.json for a full list of fields for each integration.
Show child attributes
Show child attributes
Whether the configuration is turned on
true
List of tags for this configuration
[]
Name of the configuration
"Development environment configuration"
Version of the current configuration
1
Details on the allowed and denied actions for this configuration
Show child attributes
Show child attributes