Reset Reserve History
Resets one (event, reserved category) scope’s reserve HISTORY — the
reserves.history_reset action: a netting batch that zeroes the scope’s
remaining user-set expectation and marks the horizon after which the
reserve-update feed
starts fresh (earlier rows never render; the reset itself renders as one
marker row). The audit fields (what was reversed, which eroded payments
were absorbed) are recorded server-side.
Idempotent-shaped. On an already-clean scope this journals a defined
ZERO-ROW action — safe to run any time. It also stays legal on a
DEPRECATED category (cleanup never wedges); only the category’s existence
and reserved kind are enforced (422 UNKNOWN_ID /
NOT_RESERVED_CATEGORY).
No If-Match (scope-lock semantics). actionId is the client-minted
idempotency key — an identical retry replays the original outcome; reuse
with a different payload is 409 ACTION_ID_REUSED.
Required permission: company.payment:update
Authorizations
API key authentication. Send your raw API key as the Authorization header value with NO scheme prefix — Authorization: YOUR-API-KEY. Do NOT prefix it with Bearer or ApiKey, and do not use an X-API-Key header; those are not accepted.
Path Parameters
Company identifier
Event identifier — an unknown event is 404
A configured RESERVED transaction category (deprecated allowed)
Body
Client-minted idempotency key — becomes the action's journal id. An identical retry replays the original outcome; reuse with a different payload is 409 ACTION_ID_REUSED
Optional display label for the source system's author (e.g. the integrator-side user). Stamped as the journal record's display attribution; the acting principal stays the External API service user, so a label can never impersonate an in-app user. Ignored on idempotent replays
1 - 255Response
The scope's refreshed expected total after the reset (0 — the reset zeroes the remaining expectation)
The response of a reserve write: the emitted journal id(s) plus the scope's NEW expected total — the number a reserves.set to the same value would be a no-op against.
Every journal id the action emitted — the actionId you supplied first, then any companion batch it composed
1The scope's event, echoed
The scope's reserved category, echoed
The scope's expected total AFTER the write, in user display cents (the magnitude a user would type; the category's expectedDirection orients it)
