Execute a quote
Execute a quote created by the authenticated agent. Requires the EXECUTE_QUOTES permission in the agent's policy. If the agent's policy requires approval for this amount (based on execution mode or approval thresholds), the transaction will be created in a pending state and must be approved by the platform via POST /agents/{agentId}/actions/{actionId}/approve. Once executed, the quote cannot be cancelled.
Headers
A unique identifier for the request. If the same key is sent multiple times, the server will return the same response as the first request.
Full Grid wallet signature over the payloadToSign returned in the quote's paymentInstructions[].accountOrWalletInfo entry, produced with the session private key of a verified authentication credential on the source Embedded Wallet. Required when the quote's source is an internal account of type EMBEDDED_WALLET; ignored for other source types.
Response
Action submitted successfully. If the agent's policy requires approval, the returned AgentAction will have status PENDING_APPROVAL and no transaction yet. If the policy permits automatic execution, status will be APPROVED and transaction will be populated. Note: if approval is required, the underlying quote may expire before the platform approves — in that case the action will transition to FAILED.
Example response
{
"id": "AgentAction:019542f5-b3e7-1d02-0000-000000000099",
"agentId": "Agent:019542f5-b3e7-1d02-0000-000000000042",
"customerId": "Customer:019542f5-b3e7-1d02-0000-000000000010",
"platformCustomerId": "user-a1b2c3",
"quote": {
"id": "Quote:019542f5-b3e7-1d02-0000-000000000006",
"status": "PENDING",
"createdAt": "2025-10-03T12:00:00Z",
"expiresAt": "2025-10-03T12:05:00Z",
"source": {
"sourceType": "ACCOUNT",
"accountId": "InternalAccount:e85dcbd6-dced-4ec4-b756-3c3a9ea3d965",
"customerId": "Customer:019542f5-b3e7-1d02-0000-000000000001"
},
"destination": {
"destinationType": "ACCOUNT",
"accountId": "ExternalAccount:a12dcbd6-dced-4ec4-b756-3c3a9ea3d123",
"paymentRail": "ACH"
},
"sendingCurrency": {
"code": "USD",
"name": "United States Dollar",
"symbol": "$",
"decimals": 2
},
"receivingCurrency": {
"code": "USD",
"name": "United States Dollar",
"symbol": "$",
"decimals": 2
},
"totalSendingAmount": 123010,
"totalReceivingAmount": 1000,
"feesIncluded": 10,
"platformFeesIncluded": 5,
"paymentInstructions": [
{
"accountOrWalletInfo": {
"accountType": "USD_ACCOUNT",
"paymentRails": [
"ACH",
"WIRE"
],
"accountNumber": "1234567890",
"routingNumber": "021000021",
"bankName": "Chase Bank",
"reference": "UMA-Q12345-REF"
},
"instructionsNotes": "Include reference UMA-Q12345-REF in memo"
},
{
"accountOrWalletInfo": {
"accountType": "SPARK_WALLET",
"assetType": "BTC",
"address": "spark1pgssyuuuhnrrdjswal5c3s3rafw9w3y5dd4cjy3duxlf7hjzkp0rqx6dj6mrhu",
"invoice": "lnbc15u1p3xnhl2pp5jptserfk3zk4qy42tlucycrfwxhydvlemu9pqr93tuzlv9cc7g3sdqsvfhkcap3xyhx7un8cqzpgxqzjcsp5f8c52y2stc300gl6s4xswtjpc37hrnnr3c9wvtgjfuvqmpm35evq9qyyssqy4lgd8tj637qcjp05rdpxxykjenthxftej7a2zzmwrmrl70fyj9hvj0rewhzj7jfyuwkwcg9g2jpwtk3wkjtwnkdks84hsnu8xps5vsq4gj5hs"
}
}
],
"transactionId": "Transaction:019542f5-b3e7-1d02-0000-000000000005",
"counterpartyInformation": {
"FULL_NAME": "John Sender",
"BIRTH_DATE": "1985-06-15",
"NATIONALITY": "DE"
},
"rateDetails": {
"counterpartyMultiplier": 1.08,
"counterpartyFixedFee": 10,
"gridApiMultiplier": 0.925,
"gridApiFixedFee": 10,
"gridApiVariableFeeRate": 0.003,
"gridApiVariableFeeAmount": 30
},
"scaChallenge": {
"id": "ScaChallenge:019542f5-b3e7-1d02-0000-000000000007",
"expiresAt": "2025-10-03T12:05:00Z",
"availableFactors": [
"SMS_OTP"
],
"purpose": "PAYOUT",
"passkeyAllowedOrigins": [
"https://app.example.com"
]
}
},
"transferDetails": {
"amount": 50000,
"currency": "USD",
"sourceAccountId": "InternalAccount:a12dcbd6-dced-4ec4-b756-3c3a9ea3d123",
"destinationAccountId": "ExternalAccount:e85dcbd6-dced-4ec4-b756-3c3a9ea3d965"
},
"transaction": {
"id": "Transaction:019542f5-b3e7-1d02-0000-000000000004",
"destination": {
"destinationType": "ACCOUNT",
"currency": "EUR",
"accountId": "ExternalAccount:a12dcbd6-dced-4ec4-b756-3c3a9ea3d123",
"onChainTransaction": {
"transactionHash": "h82pJGF9p7kpzb6eU326EFZf2cDnimbTFVeJtx1qtBmUNJAEqN76R7PwPfHt3oWb8R6cKvhgyxQdDn53jFrK6wFx",
"network": "SOLANA"
}
},
"customerId": "Customer:019542f5-b3e7-1d02-0000-000000000001",
"platformCustomerId": "18d3e5f7b4a9c2",
"settledAt": "2025-08-15T14:30:00Z",
"createdAt": "2025-08-15T14:25:18Z",
"updatedAt": "2025-08-15T14:30:00Z",
"receiptDeliveryConfirmedAt": "2025-08-15T14:31:00Z",
"agentId": "Agent:019542f5-b3e7-1d02-0000-000000000042",
"description": "Payment for invoice #1234",
"sentAmount": {
"amount": 12550,
"currency": {
"code": "USD",
"name": "United States Dollar",
"symbol": "$",
"decimals": 2
}
},
"exchangeRate": 1.08,
"quoteId": "Quote:019542f5-b3e7-1d02-0000-000000000006",
"refund": {
"reference": "UMA-Q12345-REFUND",
"initiatedAt": "2025-08-15T14:30:00Z",
"settledAt": "2025-08-15T14:35:00Z",
"status": "COMPLETED",
"reason": "TRANSACTION_FAILED"
},
"counterpartyInformation": {
"FULL_NAME": "John Sender",
"BIRTH_DATE": "1985-06-15",
"NATIONALITY": "DE"
},
"source": {
"sourceType": "ACCOUNT",
"currency": "USD",
"accountId": "InternalAccount:e85dcbd6-dced-4ec4-b756-3c3a9ea3d965",
"onChainTransaction": {
"transactionHash": "h82pJGF9p7kpzb6eU326EFZf2cDnimbTFVeJtx1qtBmUNJAEqN76R7PwPfHt3oWb8R6cKvhgyxQdDn53jFrK6wFx",
"network": "SOLANA"
}
},
"receivedAmount": {
"amount": 12550,
"currency": {
"code": "USD",
"name": "United States Dollar",
"symbol": "$",
"decimals": 2
}
},
"fees": 10,
"reconciliationInstructions": {
"reference": "UMA-Q12345-REF",
"transactionHash": "0x9f2c6b6f4b6c8f2a8d9e0b1c2d3e4f5061728394a5b6c7d8e9f00112233445566"
}
},
"rejectionReason": "Transaction amount exceeds customer's current risk limit.",
"createdAt": "2025-10-03T15:00:00Z",
"updatedAt": "2025-10-03T15:02:00Z"
}