Across Docs

Execute a quote

Submits the results of a quote's actions. Call it only when the quote's nextActions ends with submit_execution, and send it before the quote's expiresAt. Which authorization arm to send follows from those actions -- see below. Not every quote needs this call. When the nextActions are only approvals and a send_transaction with id: prefunded-store, there is no submit_execution: once that transaction lands, Across picks the deposit up on chain and the transfer starts. Track it with GET /v1/transfers/{orderId}. Reporting its hash here with the txnRef arm is optional. A 2xx means accepted, not arrived; follow it with GET /v1/transfers/{orderId}.

POST
/v1/quotes/{orderId}/executions

Authorization

bearerAuth
AuthorizationBearer <token>

API key for authentication.

In: header

Path Parameters

orderId*string

The orderId returned by POST /v1/quotes. Quotes expire about 15 minutes after issue, so replace the example below with one you just created.

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

The results of the quote's actions, for a quote whose nextActions ends with submit_execution. Which arm to submit follows from those actions; submitting the wrong arm is rejected.

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/v1/quotes/0x625b3f050d78e03ac4da0cbd69aba447825481bb7e7b3b623bd0e350be628874/executions" \  -H "Content-Type: application/json" \  -d '{    "authorization": {      "signatures": {        "funding": "0x7a98bfcc7d5404a499069488911a16d2f8cb5b686cb835c75f7dff3f2cf10e8348df58d09f1afb850fc6fd835f647917fec8edffbf5ea08449e49e89a475ade71c"      }    }  }'
{
  "orderId": "0x625b3f050d78e03ac4da0cbd69aba447825481bb7e7b3b623bd0e350be628874",
  "acceptedAt": "2026-10-16T00:31:28.869Z",
  "balanceCheck": {
    "chainId": 8453,
    "tokenAddress": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
    "requiredAmount": "2000000",
    "observedBalance": "36522710",
    "blockNumber": 52660670,
    "observedAt": "2026-10-16T00:31:28.944Z"
  }
}

{
  "error": {
    "type": "request",
    "code": "request.missing_field",
    "message": "authorization.signatures is required",
    "param": "authorization.signatures",
    "requestId": "mps4hrl21eqmhpeqom9q79jjeg"
  }
}

{
  "code": "unauthenticated",
  "message": "the request does not have valid authentication credentials for the operation",
  "details": null
}
{
  "code": "unauthenticated",
  "message": "the request does not have valid authentication credentials for the operation",
  "details": {}
}
{
  "error": {
    "type": "request",
    "code": "request.invalid_json",
    "message": "string",
    "param": "string",
    "requestId": "string",
    "details": {
      "balanceCheck": {
        "chainId": 0,
        "tokenAddress": "string",
        "requiredAmount": "string",
        "observedBalance": "string",
        "blockNumber": 0,
        "observedAt": "2019-08-24T14:15:22Z"
      },
      "amountLimits": {
        "side": "min",
        "amount": "string",
        "token": {
          "chainId": 0,
          "address": "string"
        },
        "rail": "string",
        "observedAt": "2019-08-24T14:15:22Z"
      },
      "retryWithAllowedAuthorizationTypes": [
        "approval"
      ]
    }
  }
}