curl --request PATCH \
--url https://api.nango.dev/integrations/{uniqueKey} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"unique_key": "<string>",
"display_name": "<string>",
"forward_webhooks": true,
"credentials": {
"client_id": "<string>",
"client_secret": "<string>",
"scopes": "<string>",
"webhook_secret": "<string>"
},
"integration_config": {}
}
'import requests
url = "https://api.nango.dev/integrations/{uniqueKey}"
payload = {
"unique_key": "<string>",
"display_name": "<string>",
"forward_webhooks": True,
"credentials": {
"client_id": "<string>",
"client_secret": "<string>",
"scopes": "<string>",
"webhook_secret": "<string>"
},
"integration_config": {}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
unique_key: '<string>',
display_name: '<string>',
forward_webhooks: true,
credentials: {
client_id: '<string>',
client_secret: '<string>',
scopes: '<string>',
webhook_secret: '<string>'
},
integration_config: {}
})
};
fetch('https://api.nango.dev/integrations/{uniqueKey}', 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://api.nango.dev/integrations/{uniqueKey}",
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([
'unique_key' => '<string>',
'display_name' => '<string>',
'forward_webhooks' => true,
'credentials' => [
'client_id' => '<string>',
'client_secret' => '<string>',
'scopes' => '<string>',
'webhook_secret' => '<string>'
],
'integration_config' => [
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"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://api.nango.dev/integrations/{uniqueKey}"
payload := strings.NewReader("{\n \"unique_key\": \"<string>\",\n \"display_name\": \"<string>\",\n \"forward_webhooks\": true,\n \"credentials\": {\n \"client_id\": \"<string>\",\n \"client_secret\": \"<string>\",\n \"scopes\": \"<string>\",\n \"webhook_secret\": \"<string>\"\n },\n \"integration_config\": {}\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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://api.nango.dev/integrations/{uniqueKey}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"unique_key\": \"<string>\",\n \"display_name\": \"<string>\",\n \"forward_webhooks\": true,\n \"credentials\": {\n \"client_id\": \"<string>\",\n \"client_secret\": \"<string>\",\n \"scopes\": \"<string>\",\n \"webhook_secret\": \"<string>\"\n },\n \"integration_config\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.nango.dev/integrations/{uniqueKey}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"unique_key\": \"<string>\",\n \"display_name\": \"<string>\",\n \"forward_webhooks\": true,\n \"credentials\": {\n \"client_id\": \"<string>\",\n \"client_secret\": \"<string>\",\n \"scopes\": \"<string>\",\n \"webhook_secret\": \"<string>\"\n },\n \"integration_config\": {}\n}"
response = http.request(request)
puts response.read_body{
"data": {
"unique_key": "<string>",
"display_name": "<string>",
"provider": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"logo": "<string>",
"forward_webhooks": true
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"errors": [
{}
]
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"errors": [
{}
]
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"errors": [
{}
]
}
}Update an integration
Edit an integration
curl --request PATCH \
--url https://api.nango.dev/integrations/{uniqueKey} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"unique_key": "<string>",
"display_name": "<string>",
"forward_webhooks": true,
"credentials": {
"client_id": "<string>",
"client_secret": "<string>",
"scopes": "<string>",
"webhook_secret": "<string>"
},
"integration_config": {}
}
'import requests
url = "https://api.nango.dev/integrations/{uniqueKey}"
payload = {
"unique_key": "<string>",
"display_name": "<string>",
"forward_webhooks": True,
"credentials": {
"client_id": "<string>",
"client_secret": "<string>",
"scopes": "<string>",
"webhook_secret": "<string>"
},
"integration_config": {}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
unique_key: '<string>',
display_name: '<string>',
forward_webhooks: true,
credentials: {
client_id: '<string>',
client_secret: '<string>',
scopes: '<string>',
webhook_secret: '<string>'
},
integration_config: {}
})
};
fetch('https://api.nango.dev/integrations/{uniqueKey}', 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://api.nango.dev/integrations/{uniqueKey}",
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([
'unique_key' => '<string>',
'display_name' => '<string>',
'forward_webhooks' => true,
'credentials' => [
'client_id' => '<string>',
'client_secret' => '<string>',
'scopes' => '<string>',
'webhook_secret' => '<string>'
],
'integration_config' => [
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"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://api.nango.dev/integrations/{uniqueKey}"
payload := strings.NewReader("{\n \"unique_key\": \"<string>\",\n \"display_name\": \"<string>\",\n \"forward_webhooks\": true,\n \"credentials\": {\n \"client_id\": \"<string>\",\n \"client_secret\": \"<string>\",\n \"scopes\": \"<string>\",\n \"webhook_secret\": \"<string>\"\n },\n \"integration_config\": {}\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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://api.nango.dev/integrations/{uniqueKey}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"unique_key\": \"<string>\",\n \"display_name\": \"<string>\",\n \"forward_webhooks\": true,\n \"credentials\": {\n \"client_id\": \"<string>\",\n \"client_secret\": \"<string>\",\n \"scopes\": \"<string>\",\n \"webhook_secret\": \"<string>\"\n },\n \"integration_config\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.nango.dev/integrations/{uniqueKey}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"unique_key\": \"<string>\",\n \"display_name\": \"<string>\",\n \"forward_webhooks\": true,\n \"credentials\": {\n \"client_id\": \"<string>\",\n \"client_secret\": \"<string>\",\n \"scopes\": \"<string>\",\n \"webhook_secret\": \"<string>\"\n },\n \"integration_config\": {}\n}"
response = http.request(request)
puts response.read_body{
"data": {
"unique_key": "<string>",
"display_name": "<string>",
"provider": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"logo": "<string>",
"forward_webhooks": true
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"errors": [
{}
]
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"errors": [
{}
]
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"errors": [
{}
]
}
}environment:integrations:update scope. Learn more about API key scopes.Authorizations
An Environment API key from your Nango environment, or an Account API key for account-level endpoints.
Path Parameters
The integration ID (unique_key) that you created in Nango.
Body
A unique integration ID, which you will use in the other API calls to reference this integration.
The integration display name.
Whether to forward webhooks received for this integration.
Integration credentials schema accepted in create/update request bodies. For MCP_OAUTH2, static creation requires both client_id and client_secret; dynamic and CIMD providers reject those fields because Nango manages them. Optional fields may be omitted but must not be null.
- Option 1
- Option 2
- Option 3
- Option 4
Show child attributes
Show child attributes
Provider-specific configuration for providers that declare an integration_config schema (e.g. private-api-generic, aws-sigv4). Only the fields you pass are updated.
Show child attributes
Show child attributes
Response
Successfully updated an integration
Show child attributes
Show child attributes
Was this page helpful?