---
title: "Summarize customer/account spend metrics"
method: POST
path: "/customer-metric-summary"
---

# Summarize customer/account spend metrics

`POST /customer-metric-summary`

## Request

- Base URL: `https://api.gravityads.dev` (the document declares no server; this is the origin it was published from)
- URL: `https://api.gravityads.dev/customer-metric-summary`
- Auth: HTTP bearer

Read-only spend, impressions, clicks, conversions, revenue and derived rates from the serving warehouse. Use for questions about recent spend/performance. candidate_count=0 from candidate tools never proves metric data is absent.

## Request body

- object
  - `operator_id` string
  - `customer_name` string
  - `platform` string
  - `account_id` string
  - `start_date` string: YYYY-MM-DD
  - `end_date` string: YYYY-MM-DD
  - `days` integer
  - `source_policy` 'auto' | 'warehouse_only': warehouse_only never calls platform APIs, including on empty data or warehouse errors.
  - `granularity` 'auto' | 'account' | 'campaign'
  - `limit` integer

## Response `200`

Customer metric summary

- object
  - `schema_version` 'ads_quant.customer_metric_summary.v1', required
  - `status` 'customer_metric_summary_ready', required
  - `operator_id` string
  - `summary` object, required
  - `date_window` object, required
  - `account_summaries` object[], required
  - `daily_totals` object[], required
  - `request` object, required
  - `data_source_policy` object
  - `query_interpretation` object
  - `answer_contract` object
  - `candidate_metric_guard_cn` string
  - `hosted_auth_context` object, required

---

[API](https://skmtc.dev/gravityads/apis/gravityads-api.md) · [All operations](https://skmtc.dev/gravityads/apis/gravityads-api/llms.txt) · [OpenAPI document](https://skmtc.dev/gravityads/apis/gravityads-api/revisions/124cd07d534d?raw)
