Get swap status
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.
Query Parameters
txHashesstring[]On-chain transaction hashes. At least one of txHashes or userOpHashes must be provided.
userOpHashesstring[]ERC-4337 UserOperation hashes. At least one of txHashes or userOpHashes must be provided.
chainIdenumdefault:1Response
Get swap successful.
requestIdstringrequiredA unique ID for the request.
swapsobject[]/swapscurl --request GET \
--url 'https://trade-api.gateway.uniswap.org/v1/swaps' \
--header 'x-api-key: <api-key>'{ "requestId": "<string>", "swaps": [ { "swapType": "<string>", "status": "<string>", "txHash": "<string>", "swapId": "<string>", "userOpHash": "<string>", "hashType": "<string>", "paymaster": "<string>" } ]}