trades
Fetch latest token prices for many tokens in one call
post
/trade/quote/batch
operationId: trade-quoteBatch

POST batch variant of /trade/quote. Body: { slugs?: [...], mptIssuanceIds?: [...], timestamp? } (max 100 entries combined; at least one of the two arrays is required). slugs carry IOU currency.issuer strings or the literal XRP; mptIssuanceIds carry 48-char hex MPT issuance IDs. Each entry returns the same single-row shape as /trade/quote, or { data: null } when the slug is malformed. The slug field on each item echoes the input identifier (issuance ID for MPT entries) so callers can pair responses back. Pass an optional timestamp (Unix-seconds) to fetch the historical close for every entry at that moment — same ladder semantics as the singular endpoint. Use this instead of N parallel /trade/quote calls.

Unlock protected endpoints

Enter your Bearer token once to enable every protected route in this API reference.

HTTP bearer

Saved for this browser tab only. The credential is never sent until you test an endpoint.

Authorizations
NameLocationDetails
BearerAuthAuthorization header · bearerJWT issued by the Honeycluster auth service for the `indexer` audience. Present as `Authorization: Bearer <token>`.
Request Body
application/json
required
FieldTypeDescription
slugs
string[]
Array of token slugs in `currency.issuer` form. The literal `XRP` is also accepted. Per-slug parse / lookup failures surface as `{ slug, data: null }`.
mptIssuanceIds
string[]
Array of XLS-33d MPT issuance IDs (48-char hex). Each is resolved against the MPT/XRP trade pair. Lookup failures surface as `{ slug, data: null }` (the `slug` field echoes the supplied issuance ID).
timestamp
integer
Optional historical quote moment, Unix-seconds. Applied uniformly to every entry across `slugs` and `mptIssuanceIds`. Same ladder semantics as `/trade/quote` — see that endpoint for the per-field nullification rules when `timestamp` is set.
Example
Json
{
  "slugs": [
    "string"
  ],
  "mptIssuanceIds": [
    "string"
  ],
  "timestamp": 1745798400
}
Responses
200
application/json
Successful response
FieldTypeDescription
items
object[]
One entry per input slug, in the same order as the request. Always has the same length as `input.slugs`.
items[].slug
string
The token slug that produced this row (echoed from the request).
items[].data
object
Per-slug response, or `null` when the slug is malformed / unknown / the per-slug query threw.
Example
Json
{
  "items": [
    {
      "slug": "string",
      "data": {
        "tokenSlug": "string",
        "priceXrp": "string",
        "priceChange5mPct": "string",
        "priceChange1hPct": "string",
        "priceChange24hPct": "string",
        "priceChange7dPct": "string",
        "volume24hXrp": "string",
        "volume7dXrp": "string",
        "marketCapXrp": "string",
        "trades24h": 0,
        "takers24h": 0,
        "lastCloseAt": 1745798400,
        "source": "direct"
      }
    }
  ]
}
400
application/json
Invalid input data
FieldTypeDescription
message
string
The error message
code
string
The error code
issues
object[]
An array of issues that were responsible for the error
issues[].message
string
Example
Json
{
  "code": "BAD_REQUEST",
  "message": "Invalid input data",
  "issues": []
}
401
application/json
Authorization not provided
FieldTypeDescription
message
string
The error message
code
string
The error code
issues
object[]
An array of issues that were responsible for the error
issues[].message
string
Example
Json
{
  "code": "UNAUTHORIZED",
  "message": "Authorization not provided",
  "issues": []
}
403
application/json
Insufficient access
FieldTypeDescription
message
string
The error message
code
string
The error code
issues
object[]
An array of issues that were responsible for the error
issues[].message
string
Example
Json
{
  "code": "FORBIDDEN",
  "message": "Insufficient access",
  "issues": []
}
500
application/json
Internal server error
FieldTypeDescription
message
string
The error message
code
string
The error code
issues
object[]
An array of issues that were responsible for the error
issues[].message
string
Example
Json
{
  "code": "INTERNAL_SERVER_ERROR",
  "message": "Internal server error",
  "issues": []
}