Use the Datadog HTTP API to programmatically access the Datadog platform.
To get started on Datadog HTTP API, use our Datadog Postman collection
The Datadog API uses resource-oriented URLs, uses status codes to indicate the success or failure of requests and returns JSON from all requests. Let’s dive in and see how it works.
Note: cURL code examples assume usage of BASH and GNU coreutils. On macOS you can install coreutils via the Homebrew package manager:
brew install coreutils
All requests to Datadog’s API must be authenticated. Requests that write data require reporting access and require an
API key. Requests that read data require full access and also require an
curl "https://api.datadoghq.com/api/v1/validate" \ -H "DD-API-KEY: <DATADOG_API_KEY>" \ -H "DD-APPLICATION-KEY: <DATADOG_APPLICATION_KEY>"
Note: All Datadog API clients are configured by default to consume Datadog US site APIs. If you are on the Datadog EU site, set the environment variable
https://api.datadoghq.eu or override this value directly when creating your client.
Some of the API endpoints are rate limited. Once you exceed a certain number of requests in a certain time period we return an error.
For rate limited API endpoints we return headers so you can know how close you are to your limit. If you exceed your limit, review these headers to determine when you are able to try again.
Rate limits can be increased from defaults by contacting the Datadog support team.
Regarding API rate limit policy:
100per hour per organization.
1000per aggregate per day per organization. An aggregate is a group of similar events.
600per hour per organization. This can be extended on demand.
300per hour per organization. This can be extended on demand.
60per hour per organization. This can be extended on demand.
6000per minute per organization. This can be extended on demand.
|Rate Limit Headers||Description|
|number of requests allowed in a time period.|
|length of time in seconds for resets (calendar aligned).|
|number of allowed requests left in current time period.|
|time in seconds until next reset.|