latestOpenAPI 3.1.02026-08-108094177.6 KB

087dcf516ce2

External Wallet Access Mode

Retry on-ramp swap with permit

Executes the destination-chain swap retry for a failed on-ramp. Requires a fresh quote with scene swap_retry; request fields must match the quote cache and the original retry record.

post/api/v1/onramp-swap-with-permit

Headers

tokenIdstring required

The user's URID (NFT token id).

networkstring required

Network identifier: 5000 for mainnet, 5003 for testnet.

signstring required

Signature generated by the user's wallet key (EIP-191).

hashstring required

SHA3/Keccak256 hash of the original request payload.

deadlinestring required

Signature expiry: server timestamp plus a validity window (max 20 minutes).

Request body

quoteIdstring required

quoteId from a fresh quote with scene swap_retry.

chainIdstring required

Destination chain ID (CAIP-2), from the pending retry.

originalTxHashstring required

Original on-ramp transaction hash, from the pending retry.

usdcAmountstring required

Stuck USDC amount in smallest units.

tokenOutstring required

Destination token address.

minAmountOutstring required

best.minAmountOut from the retry quote.

aggregatorstring required

best.to from the retry quote.

swapCalldatastring required

best.swapCalldata from the retry quote.

permitDeadlineinteger required

Unix seconds until which the permit is valid.

permitVinteger required

EIP-2612 signature component v.

permitRstring required

EIP-2612 signature component r.

permitSstring required

EIP-2612 signature component s.

Response

Response envelope. For the user API, retCode 0 means success; for the partner API, code 0 means success. Business rejections return HTTP 200 with a non-zero code.

retCodeinteger required

0 on success; non-zero indicates failure.

retMsgstring required

Human-readable message; error details when retCode is non-zero.

{"stackTrail":"components:schemas:EwaEnvelope:properties:result","oasType":"schema","type":"unknown","description":"Business payload. Shape depends on the endpoint; some endpoints return it as a JSON-encoded string."}
timeNowinteger

Server timestamp in milliseconds.