Create a settlement quote
POST/checkouts/quoteLock token-specific exchange rates for a fiat-denominated checkout. Pass the returned quote_id when creating a checkout with token-specific signatures.
Headers
| Header | Description | Required |
|---|---|---|
| Authorization | Bearer token with your secret API key | yes |
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
| amount | integer | yes | |
| currency | string | yes |
Example Request
Request
const response = await fetch('https://checkout-api.exodus-int.com/checkouts/quote', {
method: 'POST',
headers: {
Authorization: 'Bearer sk_live_xxxxxxxxxxxxxxxx',
'Content-Type': 'application/json',
},
body: JSON.stringify({
"amount": 0,
"currency": "string"
}),
});Responses
| Status | Description |
|---|---|
| 200 | A quote with locked token rates. |
| 400 | Validation error |
| 401 | Missing or invalid authentication |
Response body
| Field | Type | Required | Description |
|---|---|---|---|
| quote_id | string | yes | |
| amount | number | yes | |
| currency | string | yes | |
| tokens | object | yes |
Example Response
{
"quote_id": "quote_1234567890abcdef",
"amount": 5000,
"currency": "USD",
"tokens": {
"USDC": {
"amount": "50000000",
"canonical_amount": "50",
"rate": "1.0",
"expires_at": "2024-01-15T12:05:00Z"
}
}
}Error Response
Error (e.g. 400)
{
"error": {
"type": "validation_error",
"message": "amount must be a positive number",
"param": "amount"
}
}