---
title: "Get cost anomaly"
method: GET
path: "/api/v2/cost/anomalies/{anomaly_id}"
tags: ["Cloud Cost Management"]
---

# Get cost anomaly

`GET /api/v2/cost/anomalies/{anomaly_id}`

## Request

- Base URL: `https://api.datadoghq.com`
- URL: `https://api.datadoghq.com/api/v2/cost/anomalies/{anomaly_id}`
- Auth: one of:
  - API key in header `DD-API-KEY` and API key in header `DD-APPLICATION-KEY`
  - OAuth 2
    - Authorization code: `/oauth2/v1/authorize`
    - Token URL: `/oauth2/v1/token` scopes: `cloud_cost_management_read`

Get a detected Cloud Cost Management anomaly by UUID.

## Path parameters

- `anomaly_id` string, required

## Response `200`

OK

- CostAnomalyResponse: Response object containing a single Cloud Cost Management anomaly.
  - `data` CostAnomalyResponseData: Resource wrapper for a single cost anomaly.
    - `attributes` CostAnomaly, required: A single detected Cloud Cost Management anomaly.
      - `actual_cost` number, double, required: Actual cost incurred during the anomaly window.
      - `anomalous_cost_change` number, double, required: Anomalous cost change relative to the expected baseline.
      - `anomaly_end` integer, required: Anomaly end timestamp in Unix milliseconds.
      - `anomaly_start` integer, required: Anomaly start timestamp in Unix milliseconds.
      - `correlated_tags` CostAnomalyCorrelatedTags, nullable, required: Map of correlated tag keys to the list of correlated tag values.
      - `dimensions` CostAnomalyDimensions, required: Map of cost dimension keys to their values for the anomaly grouping.
      - `dismissal` CostAnomalyDismissal: Resolution metadata for an anomaly that has been dismissed.
        - `cause` string, required: Reason the anomaly was dismissed.
        - `dismissal_id` string, required: Unique identifier of the dismissal record.
        - `message` string, required: Optional message explaining the dismissal.
        - `updated_at` integer, required: Timestamp of the last dismissal update in Unix milliseconds.
        - `updated_by` string, required: Identifier of the user that last updated the dismissal.
      - `max_cost` number, double, required: Maximum cost observed during the anomaly window.
      - `provider` string, required: Cloud or SaaS provider associated with the anomaly (for example `aws`, `gcp`, `azure`).
      - `query` string, required: The metrics query that detected the anomaly.
      - `uuid` string, required: The unique identifier of the anomaly.
    - `id` string, required: The unique identifier of the anomaly.
    - `type` 'anomalies', required: Type of the cost anomalies collection resource. Must be `anomalies`.

## Other responses

- `400`: Bad Request
- `403`: Forbidden
- `404`: Not Found
- `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)
