---
title: "Preview an existing meter"
method: POST
path: "/v1/meters/{id}/preview"
tags: ["Meters"]
---

# Preview an existing meter

`POST /v1/meters/{id}/preview`

## Request

- Base URL: `https://api.creem.io`
- URL: `https://api.creem.io/v1/meters/{id}/preview`
- Auth: API key in header `x-api-key`
- TypeScript: <https://skmtc.dev/creem/apis/creem-api/docs/v1/meters/:id/preview/post.ts> (a function with typed inputs; its response is checked against the schema)

Dry-run an existing meter against your real usage over the last 7 whole UTC days (today included, future-dated events excluded). Same shape as the unsaved-definition preview; nothing is written.

## Path parameters

- `id` string, required

## Response `200`

Preview of the meter

- MeterPreviewApiResponseDto
  - `matched_events` number, required: Events the meter would count over the preview window
  - `units` string, required: Aggregated units over the whole window, as a string for BigInt safety
  - `distinct_customers` number, required: Distinct customers among the matching events
  - `daily` MeterPreviewDailyApiResponseDto[], required: The last 7 UTC days (today included), oldest first and zero-filled
    - `date` string, required: UTC calendar day
    - `event_count` number, required: Matching events on this day
    - `value` string, required: The aggregation folded over this day alone, as a string for BigInt safety

## Other responses

- `400`: Bad Request - Invalid input parameters
- `401`: Unauthorized - Invalid or missing API key
- `404`: Not Found - Resource does not exist

## Changes

- **2026-09-15** `071301350724`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/creem/apis/creem-api/changes/v1/meters/:id/preview/post.md)

---

[API](https://skmtc.dev/creem/apis/creem-api.md) - [All operations](https://skmtc.dev/creem/apis/creem-api/llms.txt) - [OpenAPI document](https://skmtc.dev/creem/apis/creem-api/revisions/3f39a8f266c3?raw)
