Skip to main content
POST

Overview

Buys the mailpiece a person approved: the quote and its approval, at the approved price. Paid from credits, or by x402. Returns 202 with the order. Read the order for its status and the signed receipt, signed on acceptance, cancellation or failure, not delivery. The Idempotency-Key header is required and never expires. Save the key before you call. The same key with the same body replays the original order with the Idempotent-Replay: true header and sends nothing. After a timeout or a lost response, Recover finds the order by that key instead of sending again.
A piece that reached printing cannot be recalled. Approve from the approver’s handler, never automatically after a preview.

Authentication

X-Agent-ID plus a signed x-agent-proof with scope: "submit", or an access token. See proof authentication. An access-token session pays from credits only and cannot carry a payment header. 60 requests a minute per agent.

Headers

string
required
1 to 255 characters of [A-Za-z0-9_.:-]. The same key with a different body returns 422 idempotency_key_reuse.
string
Refuses the send with 400 max_cost_exceeded when the quote’s total_usdc is above it.
string
The approval_id from a 403 approval_required response, once approved. Repeating the call with it releases the send the action policy held. Not the quote’s approval_id.

Request Body

string
required
Quote ID from the preview
string
required
Approval ID from Approve

Audit fields (optional)

string
Reason for this send, stored on the receipt for audit. Max 1000 characters: a longer memo is rejected with 400 invalid_input before anything is held or charged, not truncated. See Audit Trail.
object
Decision metadata for supervisor and auditor agents, stored with the receipt. Open schema; known fields goal, goalId, alternatives (string[]) and confidence (0-1). Extra keys are stored verbatim.

Response

202 with the order. Its fields are listed on Get an order. A replay returns 200 with the same order.

Errors