Skip to main content

List Outbox Events

GET 

/api/ledger/outbox

Paginated raw listing of every ledger_outbox row — the queue of source-document changes awaiting (or finished with) accounting-entry generation. Unlike List Outbox Failures, this endpoint applies no masking: every status is visible, including failures already superseded by a newer event for the same source.

Not yet available to API tokens

This endpoint currently requires session authentication; Personal Access Token scope support is in progress.

Authentication: Requires Bearer token.

Statuses: pending (queued, claimable at available_at), processing (claimed by the drain), processed (entry generation completed), superseded (coalesced away by a newer event for the same source), failed (retry budget exhausted or a deterministic defect), skipped (policy refusal — e.g. a locked accounting period).

Filters: per-column filters (filter[status], filter[event], filter[source_type], filter[source_id], filter[attempts]), free-text filter[search], and an advanced filter_groups tree. The backlog checkbox column (operator is, value true) scopes to the rows the queue still owes work for — pending, processing, and failures no newer attempt has superseded — exactly the dashboard's outbox_backlog count; value false returns the complement (history).

Sorts: id, source_type, source_id, event, status, attempts, available_at, created_at, processed_at (default -id).

Pagination: per_page (default 10, clamped to 100), page. Standard Laravel pagination envelope.

Each row: the resolved source cross-link, raw source_type/source_id scalars, the event and status (value + label), attempts, bypass_cutover_floor, the preserved last_error (capped at 60 KB), and available_at / created_at / processed_at ISO-8601 timestamps (processed_at doubles as the failure or supersession timestamp for terminal rows).

Request

Responses

OK

Response Headers
    Content-Type