Submit a signed gasless withdrawal
Submit the EIP-712 signatures from `GET /swap/gasless`. Returns a `depositId`. Pass `swapTx` and `swapTxns[]` through from the quote unchanged and include a signature in `signaturesByStepId` for **every** step in `swapTxns[]`.
For a working example, visit the Hyperliquid Withdrawals Guide.
Authorization
bearerAuth API key for authentication.
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
curl -X POST "https://across.to/api/gasless/submit" \ -H "Content-Type: application/json" \ -d '{ "swapTx": { "ecosystem": "evm-gasless", "chainId": 999, "to": "0x10D8b8DaA26d307489803e10477De69C0492B610" }, "swapTxns": [ { "stepId": "hypercore-transfer" }, { "stepId": "gasless-auth" } ], "signaturesByStepId": { "hypercore-transfer": "0xabc...", "gasless-auth": "0xdef..." } }'{
"depositId": "63138902050176194869835581561020090006750407517885256902905383053846970918917",
"messageId": null,
"id": "7fg9l-1780952860050-cde67e6bc61f"
}{
"type": "AcrossApiError",
"code": "INVALID_PARAM",
"status": 400,
"message": "Invalid signature: unable to verify signature",
"param": "signature",
"id": "w8cbj-1780949503966-fe83ebbc58dd"
}{
"type": "AcrossApiError",
"code": "FORBIDDEN_API_KEY",
"status": 403,
"message": "Sponsored gasless route not eligible for this API key"
}{
"type": "AcrossApiError",
"code": "INTERNAL_SERVER_ERROR",
"status": 500,
"message": "Internal server error"
}Get a gasless quote GET
Quote endpoint for gasless swaps. Returns a single quote object plus the EIP-712 signing steps (`swapTxns[]`) the wallet must sign.
Get swap approval data GET
Returns data required to execute a crosschain swap. If the input token requires approval, `approvalTxns` will be included in the response.