Check token KYC permissions
Authorization
x-api-keystringrequiredheaderHeaders
x-agent-infostringOptional attribution hint for AI-agent traffic; send it if an AI agent built or operates your integration. The value is a JSON object with up to three fields: decision_origin (required, exactly autonomous or human_mediated, case-sensitive), integration_name (optional string naming your integration, e.g. my-trading-bot), and version (optional string identifying your integration's version). Any other key is dropped, never rejected. The raw value must be at most 1024 bytes of printable US-ASCII (0x20-0x7E), so send non-ASCII text as JSON \u escapes; integration_name and version are each limited to 256 UTF-16 code units and may not contain control characters, U+2028, U+2029, or U+FFFD. Send the header once: repeated header lines are joined with , and the joined string is what gets parsed, so two complete objects fail as invalid JSON while a single object split across two lines still parses. The header is analytics-only and never affects the request: omitting it, sending it, or sending a value that fails these rules never changes the response status, body, or swap behavior. A value that fails to parse is dropped and reported by the x-agent-info-status response header. Never put a user ID, wallet address, email, session token, or API key in these fields.
Body
application/jsonwalletAddressstringrequiredThe wallet address which will be used to send the token.
tokensstring[]requiredTokens to check permissions for. Maximum of 2 per request.
chainIdenumrequireddefault:1The unique ID of the blockchain. For a list of supported chains see the FAQ.
Response
Token permissions lookup successful.
requestIdstringrequiredA unique ID for the request.
resultsobject[]required/permissionscurl --request POST \
--url 'https://trade-api.gateway.uniswap.org/v1/permissions' \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '{
"walletAddress": "<string>",
"tokens": "<string[]>",
"chainId": 1
}'{ "requestId": "<string>", "results": [ { "token": "<string>", "isPermissioned": "<boolean>", "isAllowlisted": "<boolean>", "adapterTokenAddress": "<string>", "kycUrl": "<string>", "issuer": "<string>" } ]}