Skip to main content
GET
List the append-only audit trail
Every successful configuration mutation made through the API is recorded as one audit row with the actor, the route, the entity it touched and the request payload. “Configuration” is an allowlist of resource prefixes: plans, billable-metrics, coupons, webhooks, wallets, usage-alerts, dunning-campaigns, cancel-flows, settings, team, developer, accounting, mandates, quotes and credit-notes. Any POST, PUT, PATCH or DELETE under one of those prefixes that returns 2xx is captured; money-movement and high-volume ingest routes (payments, usage events, checkout) are deliberately not on the list because they already leave their own durable records. The table is append-only: updates and deletes are rejected at the database level, so history can only be added to, never rewritten.
request_body is stored verbatim — nothing is redacted. A credential submitted to an audited route is kept in the trail: for example the access_token posted to POST /v1/accounting/connect-token/:provider appears in that entry’s request_body. Treat audit-log read access accordingly.
This is the trail for “who changed what, when”. For the financial side of the books — which postings were made — use the ledger and its transaction pages; for recorded reconciliation checks use List Reconciliation Runs.

Query Parameters

Results come back newest first. There is no total count in the response; page by limit/offset until a page comes back short.

Example Request

Response

Fields

Errors

The spec entry for this operation declares only 200 and 401, so the playground on this page does not list the 400. The handler does return 400 validation_failed for a malformed from or to; the row above documents runtime behaviour.
Errors use the standard envelope — see Errors.

Authorizations

Authorization
string
header
required

Tenant API key obtained from POST /auth/register or POST /v1/developer/keys.

Query Parameters

entity_type
string
entity_id
string
actor
string
from
string<date-time>
to
string<date-time>
limit
integer
default:100
Required range: x <= 250
offset
integer
default:0

Response

Audit entries, newest first

data
object[]