# API Reference

Index of the BillerAPI client API resources. Every resource page below is generated from the OpenAPI document served at [/docs/openapi.json](/docs/openapi.json). Pages that have a markdown variant are listed in [/docs/markdown-index.json](/docs/markdown-index.json) — append `.md` to one of those page URLs to read it as markdown. Docs pages absent from that index have no `.md`, and requesting one returns 404 rather than a stale file.

## Resources

| Resource | Endpoints | Markdown |
| --- | --- | --- |
| [Billers API](/docs/api/billers) | 3 | [/docs/api/billers.md](/docs/api/billers.md) |
| [Bills API](/docs/api/bills) | 10 | [/docs/api/bills.md](/docs/api/bills.md) |
| [Bill Imports API](/docs/api/bill-imports) | 7 | [/docs/api/bill-imports.md](/docs/api/bill-imports.md) |
| [Link Sessions API](/docs/api/link-sessions) | 3 | [/docs/api/link-sessions.md](/docs/api/link-sessions.md) |
| [Pay Sessions API](/docs/api/pay-sessions) | 1 | [/docs/api/pay-sessions.md](/docs/api/pay-sessions.md) |
| [Request to Link API](/docs/api/request-to-link) | 6 | [/docs/api/request-to-link.md](/docs/api/request-to-link.md) |
| [Insights API](/docs/api/insights) | 5 | [/docs/api/insights.md](/docs/api/insights.md) |
| [Biller Messages API](/docs/api/customer-messaging) | 10 | [/docs/api/customer-messaging.md](/docs/api/customer-messaging.md) |
| [Biller Discovery API](/docs/api/biller-discovery) | 13 | [/docs/api/biller-discovery.md](/docs/api/biller-discovery.md) |
| [Webhooks API](/docs/api/webhooks) | 6 | [/docs/api/webhooks.md](/docs/api/webhooks.md) |

## API-key endpoints with no reference page yet

These are callable with an API key but are not documented on a resource page. They are listed here so this index enumerates every published, serviceable API-key operation selected from the OpenAPI document, not only the documented part. Reviewed operations withheld because their backend contract is not serviceable are intentionally excluded. Endpoints missing from the document entirely (a Swagger annotation gap rather than a docs gap) cannot appear here; [/docs/openapi.json](/docs/openapi.json) is the boundary of what this index can see.

| Endpoint | Summary | Why it has no page |
| --- | --- | --- |
| `GET /v1/sandboxes/{sandbox_id}/evaluation-proof` | Server-assembled proof that an evaluation completed | Sandbox evaluation proof (#7506). The sandbox surface has no rendered resource page yet — none of its operations do — and this read is documented as the completion check of the sandbox evaluation walkthrough rather than as a resource of its own. Enumerated here so the machine-readable API index still publishes it. |
| `GET /v1/identity` | Describe the authenticated API-key identity | API-key identity probe — reports which client and environment a key resolves to. `billerapi doctor` uses it; it has no resource page yet. |
| `GET /v1/metering/api-calls` | Get API call records for client | Usage and audit read that backs the dashboard usage views. Callable with an API key, but not yet given a reference page; the CLI exposes the same data through `billerapi metering`. |
| `GET /v1/metering/webhook-deliveries` | Get webhook delivery records | Usage and audit read that backs the dashboard usage views. Callable with an API key, but not yet given a reference page; the CLI exposes the same data through `billerapi metering`. |
| `GET /v1/metering/accounts/active` | Get active account count | Usage and audit read that backs the dashboard usage views. Callable with an API key, but not yet given a reference page; the CLI exposes the same data through `billerapi metering`. |
| `GET /v1/metering/accounts/snapshot` | Get account snapshot | Usage and audit read that backs the dashboard usage views. Callable with an API key, but not yet given a reference page; the CLI exposes the same data through `billerapi metering`. |
| `GET /v1/metering/consumption-usage` | Get consumption usage (bill fetch / bill pay counts) | Usage and audit read that backs the dashboard usage views. Callable with an API key, but not yet given a reference page; the CLI exposes the same data through `billerapi metering`. |
| `GET /v1/metering/api-calls/{id}` | Get single API call record with full payload detail | Usage and audit read that backs the dashboard usage views. Callable with an API key, but not yet given a reference page; the CLI exposes the same data through `billerapi metering`. |
| `GET /v1/metering/api-calls/{id}/with-relations` | Get API call with its webhook deliveries and related requests | Usage and audit read that backs the dashboard usage views. Callable with an API key, but not yet given a reference page; the CLI exposes the same data through `billerapi metering`. |
| `GET /v1/metering/account-link-events` | Get account link events | Usage and audit read that backs the dashboard usage views. Callable with an API key, but not yet given a reference page; the CLI exposes the same data through `billerapi metering`. |
| `GET /v1/metering/consumption-events` | Get consumption events (bill fetches, bill payments) | Usage and audit read that backs the dashboard usage views. Callable with an API key, but not yet given a reference page; the CLI exposes the same data through `billerapi metering`. |
| `GET /v1/activity` | List activity events for the authenticated client | Activity and delivery audit operation callable with an API key. It backs the portal activity explorer but does not yet have a rendered resource page, so the machine-readable API index publishes it here. |
| `GET /v1/activity/.csv` | Export activity events as CSV | Activity and delivery audit operation callable with an API key. It backs the portal activity explorer but does not yet have a rendered resource page, so the machine-readable API index publishes it here. |
| `GET /v1/activity/{id}` | Fetch a single activity event by id | Activity and delivery audit operation callable with an API key. It backs the portal activity explorer but does not yet have a rendered resource page, so the machine-readable API index publishes it here. |
| `GET /v1/activity/{id}/deliveries` | Per-event webhook delivery timeline | Activity and delivery audit operation callable with an API key. It backs the portal activity explorer but does not yet have a rendered resource page, so the machine-readable API index publishes it here. |
| `GET /v1/activity/{id}/related` | Other activity events sharing this event's correlation_id | Activity and delivery audit operation callable with an API key. It backs the portal activity explorer but does not yet have a rendered resource page, so the machine-readable API index publishes it here. |
| `POST /v1/activity/replay` | Replay a webhook delivery from the activity feed | Activity and delivery audit operation callable with an API key. It backs the portal activity explorer but does not yet have a rendered resource page, so the machine-readable API index publishes it here. |
| `POST /v1/biller-connect/ticket` | Mint a single-use biller-connect WSS capability ticket (server-to-server) | Server-to-server mint of a single-use WSS capability ticket for the hosted Connect flow. Documented as part of the Elements SDK integration at /docs/guides/elements-sdk rather than as its own resource page. |

## Conventions

- JSON request, response, and webhook payload field names are snake_case. OpenAPI parameter names are rendered verbatim; a few legacy query parameters such as `clientId`, `startDate`, and `endDate` remain camelCase.
- Lists on the resource pages above are cursor-paginated: send `cursor`, read `has_more` and `next_cursor`. A few older endpoints that have no reference page yet (the metering reads listed below) still use a `next_token` cursor instead; read each endpoint before assuming.
- Timestamps are ISO 8601 UTC.
- Errors return `error_code`, `error_message`, `hint`, `docs_url`, and `request_id`.
