Update One Third-Party Service Integration
Updates the settings for configuring integration with one third-party service. These settings apply to all databases managed in one MongoDB Cloud project. To use this resource, the requesting Service Account or API Key must have the Organization Owner or Project Owner role.
Path parameters
-
Human-readable label that identifies the service which you want to integrate with MongoDB Cloud.
Values are
PAGER_DUTY
,SLACK
,DATADOG
,NEW_RELIC
,OPS_GENIE
,VICTOR_OPS
,WEBHOOK
,HIP_CHAT
,PROMETHEUS
, orMICROSOFT_TEAMS
. -
Unique 24-hexadecimal digit string that identifies your project. Use the /groups endpoint to retrieve all projects to which the authenticated user has access.
NOTE: Groups and projects are synonymous terms. Your group id is the same as your project id. For existing groups, your group/project id remains the same. The resource and corresponding endpoints use the term groups.
Format should match the following pattern:
^([a-f0-9]{24})$
.
Query parameters
-
Flag that indicates whether Application wraps the response in an
envelope
JSON object. Some API clients cannot access the HTTP response headers or status code. To remediate this, set envelope=true in the query. Endpoints that return a list of results use the results object as an envelope. Application adds the status parameter to the response body.Default value is
false
. -
Flag that indicates whether the response returns the total number of items (totalCount) in the response.
Default value is
true
. -
Number of items that the response returns per page.
Minimum value is
1
, maximum value is500
. Default value is100
. -
Number of the page that displays the current set of the total objects that the response returns.
Minimum value is
1
. Default value is1
. -
Flag that indicates whether the response body should be in the prettyprint format.
Default value is
false
.Prettyprint
Body
object
Required
Third-party integration that you want to configure for your project.
Details to integrate one Datadog account with one MongoDB Cloud project.
-
Integration id.
-
Human-readable label that identifies the service to which you want to integrate with MongoDB Cloud. The value must match the third-party service integration type.
Value is
DATADOG
. -
Key that allows MongoDB Cloud to access your Datadog account.
NOTE: After you create a notification which requires an API or integration key, the key appears partially redacted when you:
View or edit the alert through the Atlas UI.
Query the alert for the notification through the Atlas Administration API.
-
Two-letter code that indicates which regional URL MongoDB uses to access the Datadog API.
Values are
US
,EU
,US3
,US5
,AP1
, orUS1_FED
.Datadog regions -
Toggle sending collection latency metrics that includes database names and collection namesand latency metrics on reads, writes, commands, and transactions.
Default value is
false
. -
Toggle sending database metrics that includes database names and metrics on the number of collections, storage size, and index size.
Default value is
false
.
atlas api updateThirdPartyIntegration --help
import (
"os"
"context"
"log"
sdk "go.mongodb.org/atlas-sdk/v20250312001/admin"
)
func main() {
ctx := context.Background()
clientID := os.Getenv("MONGODB_ATLAS_CLIENT_ID")
clientSecret := os.Getenv("MONGODB_ATLAS_CLIENT_SECRET")
client, err := sdk.NewClient(
sdk.UseOAuthAuth(clientID, clientSecret),
sdk.UseBaseURL(url))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateThirdPartyIntegrationApiParams{}
sdkResp, httpResp, err := client.Third - PartyIntegrationsApi.
UpdateThirdPartyIntegrationWithParams(ctx, params).
Execute()
}
curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X PUT "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/integrations/{integrationType}" \
-d '{ <Payload> }'
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X PUT "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/integrations/{integrationType}" \
-d '{ <Payload> }'
{
"id": "string",
"type": "DATADOG",
"apiKey": "****************************a23c",
"region": "US",
"sendCollectionLatencyMetrics": false,
"sendDatabaseMetrics": false
}
{
"id": "string",
"type": "MICROSOFT_TEAMS",
"microsoftTeamsWebhookUrl": "https://webhook.com/****"
}
{
"id": "string",
"type": "NEW_RELIC",
"accountId": "bcc3c81b344a6030a3935c2527e2216535af7718",
"licenseKey": "bc3768f44193c282b2688ab39e00f8e4fc8d75ea",
"readToken": "193c96aee4a3ac640b98634562e2631f17ae0a69",
"writeToken": "a67b10e5cd7f8fb6a34b501136c409f373edc218"
}
{
"id": "string",
"type": "OPS_GENIE",
"apiKey": "********************************a111",
"region": "US"
}
{
"id": "string",
"type": "PAGER_DUTY",
"region": "US",
"serviceKey": "****************************7890"
}
{
"id": "string",
"type": "PROMETHEUS",
"enabled": true,
"password": "string",
"serviceDiscovery": "http",
"username": "prom_user_618d48e05277a606ed2496fe"
}
{
"id": "string",
"type": "SLACK",
"apiToken": "**********************************************************************abcd",
"channelName": "alerts",
"teamName": "MongoDB"
}
{
"id": "string",
"type": "VICTOR_OPS",
"apiKey": "********************************9abc",
"routingKey": "test routing"
}
{
"id": "string",
"type": "WEBHOOK",
"secret": "string",
"url": "https://webhook.com/****"
}
{
"links": [
{
"href": "https://cloud.mongodb.com/api/atlas",
"rel": "self"
}
],
"results": [
{
"id": "string",
"type": "DATADOG",
"apiKey": "****************************a23c",
"region": "US",
"sendCollectionLatencyMetrics": false,
"sendDatabaseMetrics": false
}
],
"totalCount": 42
}
{
"error": 400,
"detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.",
"reason": "Bad Request",
"errorCode": "VALIDATION_ERROR"
}
{
"error": 401,
"detail": "(This is just an example, the exception may not be related to this endpoint)",
"reason": "Unauthorized",
"errorCode": "NOT_ORG_GROUP_CREATOR"
}
{
"error": 403,
"detail": "(This is just an example, the exception may not be related to this endpoint)",
"reason": "Forbidden",
"errorCode": "CANNOT_CHANGE_GROUP_NAME"
}
{
"error": 404,
"detail": "(This is just an example, the exception may not be related to this endpoint) Cannot find resource AWS",
"reason": "Not Found",
"errorCode": "RESOURCE_NOT_FOUND"
}
{
"error": 500,
"detail": "(This is just an example, the exception may not be related to this endpoint)",
"reason": "Internal Server Error",
"errorCode": "UNEXPECTED_ERROR"
}