latestOpenAPI 3.1.02026-08-108094177.6 KB

087dcf516ce2

External Wallet Access Mode

Submit token permit

Submits an EIP-2612 permit signature so UR contracts can spend tokens from the user's wallet without an on-chain approve transaction. Used for card spending against the user's UR fiat balance.

post/api/v1/token-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

addressstring required

Contract address of the token being approved.

amountstring required

Amount to approve (decimal string).

permitAmountstring required

Permit amount signed in the EIP-2612 permit (decimal string).

permitDeadlineinteger required

Unix seconds until which the permit is valid.

permitVinteger required

EIP-2612 signature component v.

permitRstring required

EIP-2612 signature component r (32-byte hex).

permitSstring required

EIP-2612 signature component s (32-byte hex).

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.