Update integration configuration
For the complete documentation index, see llms.txt. For the full documentation snapshot, see llms-full.txt.
Update an integration configuration. Updating an integration configuration uses a JSON patch representation of the desired changes. To learn more, read Updates.
curl --request PATCH \
--url https://app.launchdarkly.com/api/v2/integration-configurations/{integrationConfigurationId} \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
[
{
"op": "replace",
"path": "/on",
"value": false
}
]
'import requests
url = "https://app.launchdarkly.com/api/v2/integration-configurations/{integrationConfigurationId}"
payload = [
{
"op": "replace",
"path": "/on",
"value": False
}
]
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify([{op: 'replace', path: '/on', value: false}])
};
fetch('https://app.launchdarkly.com/api/v2/integration-configurations/{integrationConfigurationId}', 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-configurations/{integrationConfigurationId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
[
'op' => 'replace',
'path' => '/on',
'value' => false
]
]),
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-configurations/{integrationConfigurationId}"
payload := strings.NewReader("[\n {\n \"op\": \"replace\",\n \"path\": \"/on\",\n \"value\": false\n }\n]")
req, _ := http.NewRequest("PATCH", 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.patch("https://app.launchdarkly.com/api/v2/integration-configurations/{integrationConfigurationId}")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("[\n {\n \"op\": \"replace\",\n \"path\": \"/on\",\n \"value\": false\n }\n]")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.launchdarkly.com/api/v2/integration-configurations/{integrationConfigurationId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "[\n {\n \"op\": \"replace\",\n \"path\": \"/on\",\n \"value\": false\n }\n]"
response = http.request(request)
puts response.read_body{
"_links": {},
"_id": "<string>",
"name": "Example Datadog integration",
"_createdAt": 123,
"_integrationKey": "datadog",
"tags": [
"testing"
],
"enabled": true,
"_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>"
}
}
]
},
"configValues": {},
"capabilityConfig": "{\"auditLogEventsHook\": \"statements\": []\"}",
"snowflakeSetupScript": "<string>"
}{
"code": "invalid_request",
"message": "Invalid request body"
}{
"code": "forbidden",
"message": "Forbidden. Access to the requested resource was denied."
}{
"code": "not_found",
"message": "Invalid resource identifier"
}{
"code": "optimistic_locking_error",
"message": "Conflict. Optimistic lock error. Try again later."
}{
"code": "rate_limited",
"message": "You've exceeded the API rate limit. Try again later."
}Authorizations
Path Parameters
The ID of the integration configuration
Body
Response
Integration configuration response
The location and content type of related resources
Show child attributes
Show child attributes
The unique identifier for this integration configuration
A human-friendly name for the integration
"Example Datadog integration"
The time the integration configuration was created
The type of integration
"datadog"
An array of tags for this integration
["testing"]
Whether the integration is currently active
Details on the allowed and denied actions for this integration configuration
Show child attributes
Show child attributes
Details on configuration for an integration of this type. 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
The capability configuration for the integration
Show child attributes
Show child attributes
"{\"auditLogEventsHook\": \"statements\": []\"}"
Consolidated SQL script for Snowflake Warehouse Native Experimentation setup. Present only for setup endpoint responses.
curl --request PATCH \
--url https://app.launchdarkly.com/api/v2/integration-configurations/{integrationConfigurationId} \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
[
{
"op": "replace",
"path": "/on",
"value": false
}
]
'import requests
url = "https://app.launchdarkly.com/api/v2/integration-configurations/{integrationConfigurationId}"
payload = [
{
"op": "replace",
"path": "/on",
"value": False
}
]
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify([{op: 'replace', path: '/on', value: false}])
};
fetch('https://app.launchdarkly.com/api/v2/integration-configurations/{integrationConfigurationId}', 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-configurations/{integrationConfigurationId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
[
'op' => 'replace',
'path' => '/on',
'value' => false
]
]),
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-configurations/{integrationConfigurationId}"
payload := strings.NewReader("[\n {\n \"op\": \"replace\",\n \"path\": \"/on\",\n \"value\": false\n }\n]")
req, _ := http.NewRequest("PATCH", 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.patch("https://app.launchdarkly.com/api/v2/integration-configurations/{integrationConfigurationId}")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("[\n {\n \"op\": \"replace\",\n \"path\": \"/on\",\n \"value\": false\n }\n]")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.launchdarkly.com/api/v2/integration-configurations/{integrationConfigurationId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "[\n {\n \"op\": \"replace\",\n \"path\": \"/on\",\n \"value\": false\n }\n]"
response = http.request(request)
puts response.read_body{
"_links": {},
"_id": "<string>",
"name": "Example Datadog integration",
"_createdAt": 123,
"_integrationKey": "datadog",
"tags": [
"testing"
],
"enabled": true,
"_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>"
}
}
]
},
"configValues": {},
"capabilityConfig": "{\"auditLogEventsHook\": \"statements\": []\"}",
"snowflakeSetupScript": "<string>"
}{
"code": "invalid_request",
"message": "Invalid request body"
}{
"code": "forbidden",
"message": "Forbidden. Access to the requested resource was denied."
}{
"code": "not_found",
"message": "Invalid resource identifier"
}{
"code": "optimistic_locking_error",
"message": "Conflict. Optimistic lock error. Try again later."
}{
"code": "rate_limited",
"message": "You've exceeded the API rate limit. Try again later."
}