---
title: "Submit metrics"
method: POST
path: "/api/v2/series"
tags: ["Metrics"]
---

# Submit metrics

`POST /api/v2/series`

## Request

- Base URL: `https://api.datadoghq.com`
- URL: `https://api.datadoghq.com/api/v2/series`
- Auth: API key in header `DD-API-KEY`

The metrics end-point allows you to post time-series data that can be graphed on Datadog’s dashboards.
The maximum payload size is 500 kilobytes (512000 bytes). Compressed payloads must have a decompressed size of less than 5 megabytes (5242880 bytes).

If you’re submitting metrics directly to the Datadog API without using DogStatsD, expect:

- 64 bits for the timestamp
- 64 bits for the value
- 20 bytes for the metric names
- 50 bytes for the timeseries
- The full payload is approximately 100 bytes.

Host name is one of the resources in the Resources field.

## Headers

- `Content-Encoding` 'deflate' | 'zstd1' | 'gzip': HTTP header used to compress the media-type.

## Request body

- MetricPayload: The metrics' payload.
  - `series` MetricSeries[], required: A list of timeseries to submit to Datadog.
    - `interval` integer: If the type of the metric is rate or count, define the corresponding interval in seconds.
    - `metadata` MetricMetadata: Metadata for the metric.
      - `origin` MetricOrigin: Metric origin information.
        - `metric_type` integer: The origin metric type code
        - `product` integer: The origin product code
        - `service` integer: The origin service code
    - `metric` string, required: The name of the timeseries.
    - `points` MetricPoint[], required: Points relating to a metric. All points must be objects with timestamp and a scalar value (cannot be a string). Timestamps should be in POSIX time in seconds, and cannot be more than ten minutes in the future or more than one hour in the past.
      - `timestamp` integer: The timestamp should be in seconds and current. Current is defined as not more than 10 minutes in the future or more than 1 hour in the past.
      - `value` number, double: The numeric value format should be a 64bit float gauge-type value.
    - `resources` MetricResource[]: A list of resources to associate with this metric.
      - `name` string: The name of the resource.
      - `type` string: The type of the resource.
    - `source_type_name` string: The source type name.
    - `tags` string[]: A list of tags associated with the metric.
    - `type` 0 | 1 | 2 | 3: The type of metric. The available types are `0` (unspecified), `1` (count), `2` (rate), and `3` (gauge).
    - `unit` string: The unit of point value.

## Response `202`

Payload accepted

- IntakePayloadAccepted: The payload accepted for intake.
  - `errors` string[]: A list of errors.

## Other responses

- `400`: Bad Request
- `403`: Authentication error
- `408`: Request timeout
- `413`: Payload too large
- `429`: Too many requests

---

[API](https://skmtc.dev/datadog/apis/datadog-api-v2-collection.md) - [All operations](https://skmtc.dev/datadog/apis/datadog-api-v2-collection/llms.txt) - [OpenAPI document](https://skmtc.dev/datadog/apis/datadog-api-v2-collection/revisions/da68bf029e4c?raw)
