Request archive
Request archive
Look up audited API requests and download the archived original payloads.
GET
Every mutating call (
Returns
POST/PUT/PATCH/DELETE) to the API is
answered with an X-Request-Id response header — a time-sortable UUIDv7 —
and its verbatim request body is archived along with a searchable audit
row. These endpoints are the read side: prove exactly what was sent on any
past request.
Reads (GET) are not archived — they carry no payload.
List / search requests
GET /api/requests
string
Path prefix filter, e.g.
/admin/api/v1/consignments or /v1/restrict.string
Surface:
api (external /v1), admin-api (this partner surface),
account-api, cds.string
POST | PUT | PATCH | DELETE.string
completed | failed (4xx/5xx).string
Search by an identifier extracted from payloads at write time — tracking
number (S10), shipment ref, declaration ref, external code.
string
Keyset cursor: return requests older than this request id.
integer
default:"50"
1–100.
{ requests: [...], has_more }, newest first. Each row:
id (the X-Request-Id UUIDv7), route, method, source, actor,
customer_id, http_status, outcome, duration_ms, has_body,
error_summary, created_at.
One request
GET /api/requests/{id} — the audit row plus its extracted refs
({ request: {...}, refs: [{ref_type, ref_value}] }).
Download the original payload
GET /api/requests/{id}/body — streams the archived request body
byte-for-byte as it was received (404 when the request carried no
body). This is the dispute-resolution artifact: what the caller actually
sent, regardless of what they claim.