---
title: "List Billing Charges"
method: GET
path: "/v1/account/billing/charges"
tags: ["Account"]
---

# List Billing Charges

`GET /v1/account/billing/charges`

## Request

- Base URL: `https://api.ensemble.markets` (the document declares no server; this is the origin it was published from)
- URL: `https://api.ensemble.markets/v1/account/billing/charges`
- Auth: HTTP bearer

Your itemized usage, newest first, including credits and amounts not billed.

Activity descriptions survive deletion or renaming of a model. Older charges
without captured context are explicitly unidentified. The applied cap is a
historical snapshot, not today's setting. Excludes temporary admission holds
and the flat subscription fee. Filters span all pages and use usage timestamps,
the same timestamps sent to Stripe. Only the authenticated owner's charges
are visible; admin privileges never widen this billing-history read.

## Query parameters

- `start_date` string, date-time, nullable: Usage timestamp, inclusive (ISO 8601)
- `end_date` string, date-time, nullable: Usage timestamp, exclusive (ISO 8601)
- `limit` integer: Rows per page
- `offset` integer: Rows to skip

## Response `200`

Successful Response

- BillingChargePage
  - `data` BillingCharge[], required
    - `id` string, required
    - `created_at` string, date-time, required
    - `activity` BillingActivity
      - `resource_type` string, required
      - `resource_id` string, required
      - `resource_name` string, required
      - `operation` string, required
      - `source` string, nullable
      - `run_id` string, nullable
      - `breakdown` object
    - `cost_cents` integer, required
    - `credits_used_cents` integer, required
    - `metered_cents` integer, required
    - `waived_cents` integer, required
    - `waiver_reason` string, nullable
    - `spending_cap_cents` integer, nullable: Cap applied when this charge settled; unknown for older charges
    - `billing_period_start` string, date-time, nullable
    - `billing_period_end` string, date-time, nullable
    - `delivery_status` string, required
  - `total` integer, required: Rows matching the filters, across every page

## Other responses

- `4XX`: The request was refused; `error.type` says why
- `5XX`: The server failed; quote `X-Request-Id` when reporting it

---

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