Skip to main content
GET
Free retry — fetch deferred tx_check result by check_id (no payment)
Tier: free (rate-limited) · No payment required
Companion to GET /check-transfer/{chain}/{tx_hash}. The paid submit waits up to 30 s for the underlying check to complete; if it doesn’t finish in time, the 202 response includes a check_id that you bring here to fetch the deferred result. You pay $0.50 once per tx_hash on the paid submit. Subsequent calls to this endpoint for the same check_id are free — fetch as many times as you need until you get a terminal answer.

Why hyphenated /check-transfer-result/...

The path is a deliberate sibling of /check-transfer/..., not a child. The x402 SDK matches /check-transfer/:chain/:tx_hash as a regex, so /check-transfer/result/<id> would otherwise look like a paid submit with chain="result" and double-charge. The hyphenated path is the non-ambiguous sibling.

Path parameters

Request

No X-PAYMENT header — endpoint is free. No Authorization either — the check_id (a 122-bit-entropy UUID) is the only token needed.

Response — 200 (completed)

Same body shape as the synchronous 200 from /check-transfer/{chain}/{tx_hash} — see its docs for the full TxCheckResult schema.

Response — 202 (still running)

Wait a few seconds and retry. Typical Tier 4 BFS completes in 5-30 seconds; slow chains or long sender lists can take up to ~3 minutes.

Response — 502 (failed)

Same no-refund doctrine as the paid submit.

Rate limit

Free endpoint, rate-limited at the slowapi layer (a stranger guessing check_ids — UUID, 122 bits of entropy — can’t realistically pull other people’s results, but the limit caps brute-force enumeration cost). Typical clients won’t hit the limit; if you do, you’ll see HTTP 429 with a Retry-After header.

Path Parameters

check_id
string<uuid>
required

Response

Completed — full TxCheckResult body

The response is of type TxCheckResult · object.