---
title: "Every balance change of the account, newest first: purchases, refunds, dispute holds and releases, actions and supervised minutes"
method: GET
path: "/v1/account/billing/history"
---

# Every balance change of the account, newest first: purchases, refunds, dispute holds and releases, actions and supervised minutes

`GET /v1/account/billing/history`

## Request

- Base URL: `https://api.roveapi.com`
- URL: `https://api.roveapi.com/v1/account/billing/history`
- Auth: API key in cookie `rove_session`

## Query parameters

- `limit` integer
- `cursor` string

## Response `200`

Successful response (Cache-Control: no-store)

- object
  - `data` object[], required: Newest first (at, then id), at most limit (default 20, at most 100).
    - `id` string, uuid, required
    - `at` string, date-time, required
    - `reason_code` string, required: purchase_grant, refund_debit, refund_reversal, dispute_hold, dispute_release, unmatched_resolved, signup_bonus, an operation id, or a supervised charge.
    - `delta_credits` integer, required: The whole-credit column (truncated); delta_millicredits is exact.
    - `delta_millicredits` integer, required
    - `balance_after_millicredits` integer, required
    - `purchase_id` string, uuid, nullable, required
    - `session_id` string, nullable, required
  - `next_cursor` string, nullable, required

## Other responses

- `400`: RFC 7807 invalid-params (limit) or invalid-cursor
- `401`: RFC 7807 owner-session-required: sign in at owner_action_url
- `403`: RFC 7807 owner-origin-refused (mutations only)
- `429`: RFC 7807 purchase-rate-limited: 120 billing reads per minute per account; Retry-After
- `503`: RFC 7807 billing-unavailable; Retry-After: 30, retry same_key

---

[API](https://skmtc.dev/roveapi/apis/rove-api.md) · [All operations](https://skmtc.dev/roveapi/apis/rove-api/llms.txt) · [OpenAPI document](https://skmtc.dev/roveapi/apis/rove-api/revisions/0e5d69bde586?raw)
