---
title: "Update a Datadog integration."
method: PUT
path: "/v1/integrations/datadog/{id}"
tags: ["Datadog Integration"]
---

# Update a Datadog integration.

`PUT /v1/integrations/datadog/{id}`

## Request

- Base URL: `https://docs.grepr.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://docs.grepr.ai/v1/integrations/datadog/{id}`
- Auth: one of:
  - API key in header `GREPR-API-KEY`
  - OpenID Connect (`https://grepr-prod.us.auth0.com/.well-known/openid-configuration`)

Updates an integration to connect to Datadog. The version should be increased by one for every new update in order for the write to succeed. Otherwise, a '409 Conflict' will be returned.

## Path parameters

- `id` string, required

## Request body

- WriteDatadog
  - `name` string, required: Name of the integration.
  - `payload` Datadog, required: The payload containing integration data.
    - `additionalTags` string[], required: Tags to add when writing data to Datadog
    - `apiKey` string: Masked API key for Datadog
    - `apiKeys` IngestKeyView[]: The API keys configured for this integration (masked).
      - `keyId` string: Opaque identifier of the API key
      - `label` string: User-supplied display name for the key, purely informational
      - `maskedValue` string: Masked value of the API key
      - `sendKey` boolean: Whether this key is used to send data back to the vendor
    - `appKey` string: Masked App key for Datadog
    - `clientToken` string: Client token for Datadog
    - `dashboardFreshnessWindow` string, ISO-8601: The active dashboard threshold: only dashboards viewed within it are imported as parsed queries. When unset, every dashboard is imported. Minimum one day.
    - `exceptions` object: The imported exceptions from Datadog. This is a map from the vendor resource Id to the exception.
    - `filterQuery` string, required: Filter to apply when reading any data from the Datadog API
    - `includeNeverViewedDashboards` boolean: When the active dashboard threshold is set, whether dashboards that were never viewed are still imported. Unset means they are.
    - `sendKeyId` string: Identifier of the API key used to send data back to Datadog. Defaults to the only key when unset.
    - `site` string, required: Datadog site URL
    - `validateKeysOnSave` boolean: Indicates whether to validate the API and App keys when saving the keys.
  - `teamIds` string[]: The team IDs that this integration is associated with.
  - `type` 'datadog', required: The type of the integration. This is used to determine the payload type.
  - `version` integer, required: Version of the integration. Should be increased by one for every new update in order for the write to succeed. Otherwise, a '409 Conflict' will be returned.

## Response `200`

Integration updated successfully

- ReadDatadog
  - `createdAt` string, date-time, required: Timestamp when the integration was created.
  - `id` string, required: The integration id
  - `jobIds` string[], required: List of job IDs associated with the integration.
  - `name` string, required: Name of the integration.
  - `organizationId` string, required: Organization ID of the integration.
  - `payload` Datadog, required: The payload containing integration data.
    - `additionalTags` string[], required: Tags to add when writing data to Datadog
    - `apiKey` string: Masked API key for Datadog
    - `apiKeys` IngestKeyView[]: The API keys configured for this integration (masked).
      - `keyId` string: Opaque identifier of the API key
      - `label` string: User-supplied display name for the key, purely informational
      - `maskedValue` string: Masked value of the API key
      - `sendKey` boolean: Whether this key is used to send data back to the vendor
    - `appKey` string: Masked App key for Datadog
    - `clientToken` string: Client token for Datadog
    - `dashboardFreshnessWindow` string, ISO-8601: The active dashboard threshold: only dashboards viewed within it are imported as parsed queries. When unset, every dashboard is imported. Minimum one day.
    - `exceptions` object: The imported exceptions from Datadog. This is a map from the vendor resource Id to the exception.
    - `filterQuery` string, required: Filter to apply when reading any data from the Datadog API
    - `includeNeverViewedDashboards` boolean: When the active dashboard threshold is set, whether dashboards that were never viewed are still imported. Unset means they are.
    - `sendKeyId` string: Identifier of the API key used to send data back to Datadog. Defaults to the only key when unset.
    - `site` string, required: Datadog site URL
    - `validateKeysOnSave` boolean: Indicates whether to validate the API and App keys when saving the keys.
  - `teamIds` string[]: The team IDs that this integration is associated with.
  - `type` 'datadog', required: The type of the integration. This is used to determine the payload type.
  - `updatedAt` string, date-time, required: Timestamp when the integration was last updated.
  - `version` integer, required: Version of the integration. Should be increased by one for every new update in order for the write to succeed. Otherwise, a '409 Conflict' will be returned.

## Other responses

- `401`: Unauthorized
- `404`: Integration not found.
- `409`: Integration was modified or deleted concurrently.

---

[API](https://skmtc.dev/grepr/apis/grepr-api.md) - [All operations](https://skmtc.dev/grepr/apis/grepr-api/llms.txt) - [OpenAPI document](https://skmtc.dev/grepr/apis/grepr-api/revisions/2a5ce03a0bf0?raw)
