---
title: "Daily GMV Max creative metrics (incl. video view rate)"
method: GET
path: "/gmv-max/campaigns/{campaign_id}/creative-metrics"
tags: ["GMV Max"]
---

# Daily GMV Max creative metrics (incl. video view rate)

`GET /gmv-max/campaigns/{campaign_id}/creative-metrics`

## Request

- Base URL: `https://api.reacherapp.com/public/v1`
- URL: `https://api.reacherapp.com/public/v1/gmv-max/campaigns/{campaign_id}/creative-metrics`
- Auth: API key in header `x-api-key` and API key in header `x-shop-id`

Daily per-creative performance for one campaign, including the video view-rate funnel: 2-second and 6-second view rates plus watch-completion rates (25/50/75/100%), all as percentages (0–100), alongside spend, impressions, clicks, conversions, revenue and ROI. Returns one row per creative per day (raw daily series — aggregate as needed). Optionally narrow to a single creative with `material_id`. Date range may not exceed 90 days (inclusive); defaults to the last 30 days. Multi-shop is supported — the campaign's owning shop is resolved automatically from `x-shop-id`.

## Path parameters

- `campaign_id` string, required

## Query parameters

- `material_id` string, nullable: Optional: restrict to a single creative (material) id.
- `start_date` string, date, nullable
- `end_date` string, date, nullable

## Response `200`

Successful Response

- GmvMaxCreativeMetricsResponse
  - `campaign_id` string, required
  - `shop_id` integer, required
  - `data` GmvMaxCreativeMetricItem[], required
    - `material_id` string, required: GMV Max creative (material) id.
    - `date` string, required: ISO 8601 date (YYYY-MM-DD) for this metric row.
    - `spend` number, nullable
    - `impressions` integer, nullable
    - `clicks` integer, nullable
    - `conversions` integer, nullable
    - `gross_revenue` number, nullable: GMV attributed to this creative/day.
    - `revenue` number, nullable: Deprecated alias of `gross_revenue`; use `gross_revenue`.
    - `ad_roi` number, nullable: TikTok ROI (~ROAS) for this creative/day — the canonical cross-endpoint name.
    - `roi` number, nullable: Deprecated alias of `ad_roi`; use `ad_roi`.
    - `video_view_rate_2s` number, nullable: 2-second video view rate — the **thumbstop rate** (share of impressions watched for at least 2 seconds), percent (0–100).
    - `video_view_rate_6s` number, nullable: 6-second video view rate, percent (0–100).
    - `cost_per_order` number, nullable: TikTok cost per order for this creative/day.
    - `ctr` number, nullable: Ad click-through rate (TikTok `ad_click_rate`), percent (0–100).
    - `video_ctr` number, nullable: Video click-through rate to the product (TikTok `product_click_rate`), percent (0–100).
    - `conversion_rate` number, nullable: Ad conversion rate (TikTok `ad_conversion_rate`), percent.
    - `item_group_id` string, nullable: TikTok SPU / product id the creative delivered under (join key to product datasets).
    - `delivery_status` string, nullable: TikTok creative_delivery_status on this day (e.g. DELIVERING, EXCLUDED).
    - `surface` string, nullable: Delivery surface bucket: product_card, affiliate or brand (null when unknown).
    - `video_view_rate_p25` number, nullable: Watched-to-25% rate, percent (0–100).
    - `video_view_rate_p50` number, nullable: Watched-to-50% rate, percent (0–100).
    - `video_view_rate_p75` number, nullable: Watched-to-75% rate, percent (0–100).
    - `video_view_rate_p100` number, nullable: Watched-to-100% (completion) rate, percent (0–100).
  - `start_date` string, required
  - `end_date` string, required
  - `currency` string, required

## Other responses

- `422`: Validation Error

## Changes

> 76 revisions in range; 1 not diffed.

- **2026-09-19** `291230805105`: 5 info
  - api operation id `creative_metrics_gmv_max_campaigns__campaign_id__creative_metrics_get` removed and replaced with `gmv_max_campaign_creative_metrics`
  - added the optional property `data/items/ad_roi` to the response with the `200` status
  - added the optional property `data/items/gross_revenue` to the response with the `200` status
  - response property `data/items/revenue` deprecated
  - …1 more
- **2026-09-12** `19eefbad93ec`: 7 info
  - added the optional property `data/items/conversion_rate` to the response with the `200` status
  - added the optional property `data/items/cost_per_order` to the response with the `200` status
  - added the optional property `data/items/ctr` to the response with the `200` status
  - added the optional property `data/items/delivery_status` to the response with the `200` status
  - …3 more

[Operation history](https://skmtc.dev/reacherapp/apis/reacher-data-api/changes/gmv-max/campaigns/:campaign_id/creative-metrics/get.md)

---

[API](https://skmtc.dev/reacherapp/apis/reacher-data-api.md) - [All operations](https://skmtc.dev/reacherapp/apis/reacher-data-api/llms.txt) - [OpenAPI document](https://skmtc.dev/reacherapp/apis/reacher-data-api/revisions/63ce74b30b5a?raw)
