402 — Payment Required
The expected response on every paid endpoint until you supply a validX-PAYMENT header. See Authentication
for how to read the payment-required quote.
code | Meaning |
|---|---|
payment_required | First-call default — no proof was sent |
payment_invalid | X-PAYMENT was present but failed signature verification |
payment_expired | The signed quote’s validBefore is in the past |
payment_replayed | Same (payer, nonce) already settled — sign a fresh nonce |
payment_underpaid | Signed amount less than the quote’s amount |
payment-required header always accompanies a 402 with a
fresh quote, so a client can re-sign without re-fetching.
400 — Bad Request
code | Meaning |
|---|---|
chain_unsupported | {chain} is not in the networks list |
address_invalid | {address} doesn’t match the expected format for the chain (EVM 0x + 40 hex, TRON base58, etc.) |
body_invalid | Reserved (no current paid endpoint takes a body) |
429 — Rate limited
500 — Aegis-side failure (post-payment)
500 after
a confirmed tx_hash on Basescan, contact support
with the tx_hash and we’ll credit you back.
502 — Aegis backend unavailable
500 note above for the credit-back flow.
