# Changelog (/api/changelog)

## 8 November 2026: one API reference [#8-november-2026-one-api-reference]

The guides and the API explorer are now one site, and the API reference is made from one OpenAPI 3.1
file that is checked against the API itself. Every public endpoint (286) and every webhook event (48) is
documented. Old explorer links redirect to the matching page here.

Download the whole API as [openapi.json](/openapi.json) to import into Postman, Insomnia or a code generator.

The API did not change. The old documentation was wrong in places. If you built from it, check these:

- **There is no `POST /orders`.** Orders are made when a cart or an invoice is paid. See [Create a cart](/api/carts/create-cart).
- **Updates use `POST`**, not `PATCH` or `PUT` (the one exception is [Replace a role](/api/roles/update-role)).
- **New invoices are drafts** unless you send `draft: false`. See [Invoices](/api/invoices).
- **New webhook subscriptions are off** until you send `active: true`. Every delivery is signed with the
  `x-comecero-signature` header. See [Webhooks](/docs/guides/webhooks).
- **An empty refund body refunds the payment in full.** See [Refunds](/api/refunds).
- **Capture, void and commit answer `201`**, and capture with no body captures the full amount. Send no body, not `{}`: a body without a `total` captures nothing.
- **Only `credit_card` and `ach`** can be saved as a customer's payment method.
- **Token lifetimes:** a limited token starts at 2 hours and grows with use; a trusted token lasts 2 hours
  from its last use. See [Authentication](/docs/basic-concepts/authentication).
- **`POST /customers/send_link`** reads its values from the query string and answers `204`.
- **Lists:** `limit` is 1 to 100 and defaults to 100. Each list page says whether it pages by offset or by cursor.
