---
title: "Get a monthly statement"
method: GET
path: "/v1/users/me/statements/{statement_id}"
tags: ["Users"]
---

# Get a monthly statement

`GET /v1/users/me/statements/{statement_id}`

## Request

- Base URL: `https://api.naturali.ai`
- URL: `https://api.naturali.ai/v1/users/me/statements/{statement_id}`
- Auth: one of:
  - HTTP bearer
  - OAuth 2 (authorization code, authorization URL `https://api.naturali.ai/authorize`, token URL `https://api.naturali.ai/token`, scopes: `mcp:access`)

One of this account's monthly statements, with its lines and total. Another account's statement answers `404`.

## Path parameters

- `statement_id` string, required

## Response `200`

The statement.

- Statement
  - `id` string, required
  - `cycle` string, required: The billing month, `YYYY-MM` in UTC.
  - `period_from` string, date-time, required
  - `period_to` string, date-time, required: Exclusive.
  - `runs` object, required: Runs that month across every project the account pays for, against the allowance overage was measured against.
    - `used` integer, required
    - `limit` integer, nullable, required
  - `lines` StatementLine[], required
    - `kind` 'subscription' | 'run_overage' | 'prepaid' | 'model_credit_spend' | 'marketplace_fees' | 'marketplace_earnings' | 'platform_take', required: `subscription`, `run_overage` and `prepaid` make up `total_usd` and are charged; `prepaid` is fee already paid by card at an upgrade, netted as a negative amount. The other four report movements of prepaid credit in the cycle and are not part of it.
    - `plan` 'free' | 'pro' | 'business' | 'enterprise', required
    - `description` string, required
    - `period_from` string, date-time, required
    - `period_to` string, date-time, required: Exclusive.
    - `quantity` number, required: For `subscription`, the share of the month the plan was held; for `run_overage`, the runs past the allowance; for `prepaid`, 1.
    - `unit` 'month' | '1,000 runs' | 'payment' | 'USD', required
    - `unit_price_usd` number, required
    - `amount_usd` number, required
  - `total_usd` number, required: What is owed, after anything prepaid.
  - `payment_status` 'unpaid' | 'processing' | 'paid' | 'failed' | 'nothing_due', required: Collection on the saved card. `unpaid` until a charge starts — within an hour of the statement, once a card is saved. `failed` moves the account to Free when the month ends.
  - `created_at` string, date-time, required

## Other responses

- `401`: Missing or invalid credentials.
- `404`: No such statement on this account.

---

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