/v1/history
Trade history by token, account, or both
Request
https://api.xrpl.to/v1/history?md5=0dd550278b74cb6690fdae351e8e0df3&limit=5| Query parameter | Value | Description |
|---|---|---|
| md5 | token id (optional if account provided) | |
| account | r-address | |
| limit | int (max 1000) | |
| offset | int | |
| start_time | unix ms | |
| end_time | unix ms | |
| type | trades|liquidity|all (default: trades) | |
| liquidity_type | create|deposit|withdraw | |
| pair_type | xrp|token | |
| xrp_only | bool | |
| xrp_amount | float (min XRP threshold) | |
| cursor | int | |
| direction | asc|desc (default: desc) |
curl 'https://api.xrpl.to/v1/history?md5=0dd550278b74cb6690fdae351e8e0df3&limit=5'
Response
https://api.xrpl.to/v1/history?md5=0dd550278b74cb6690fdae351e8e0df3&limit=5{ "success": true, "took": 2, "data": [ { "_id": "108040169_6_48C81352", "maker": "rU8QEjAbNbXDnBR7kx9TLPXsAEng3axsz4", "taker": "rnCEEqDnCuSjDsHiJrca4VYUqaMyi4vGF7", "seq": 99569596, "pair": "4f192df9c8fb094ec93d87aa446fa161", "paid": { "currency": "XRP", "issuer": "XRPL", "value": 0.798087 }, "got": { "currency": "524C555344000000000000000000000000000000", "issuer": "rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De", "value": 1 }, "ledger": 108040169, "hash": "233E04CB5C11A501A624EA764D135D90E884140E218F250E2D7D0CC048C81352", "time": 1793516350000, "isAMM": false, "fillSource": "DEX", "price": 0.798087, "marketcap": 564533311.8889982 }, { "_id": "108040165_14_85F64E81", "maker": "r3W85jw4UspsEjenLs7ivCtQc9zB8xxaMv", "taker": "rapido5rxPmP4YkMZZEeXSHqWefxHEkqv6", "seq": null, "pair": "11d3dca9d3c38d7940730a0fcce7a8d7", "paid": { "currency": "444D4E4442520000000000000000000000000000", "issuer": "rEdPGMkuoBpcZKb9iEjUeR7RvEHvZ7avba", "value": 202110.7827555 }, "got": { "currency": "524C555344000000000000000000000000000000", "issuer": "rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De", "value": 0.07815967348201 }, "ledger": 108040165, "hash": "76E16450CE0911E597119BEBF9522D48BB5405A66A5C59FC381171C285F64E81", "time": 1793516331000, "isAMM": true, "fillSource": "AMM", "price": 2585870.3568153954, "marketcap": 1829136368151066.8 }, { "_id": "108040165_12_85F64E81", "maker": "rKoXaBw8pzkNaaLdMpzKqNbGjBpypmVPgH", "taker": "rapido5rxPmP4YkMZZEeXSHqWefxHEkqv6", "seq": 106707150, "pair": "4f192df9c8fb094ec93d87aa446fa161", "paid": { "currency": "XRP", "issuer": "XRPL", "value": 0.062379 }, "got": { "currency": "524C555344000000000000000000000000000000", "issuer": "rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De", "value": 0.07815967348201 }, "ledger": 108040165, "hash": "76E16450CE0911E597119BEBF9522D48BB5405A66A5C59FC381171C285F64E81", "time": 1793516331000, "isAMM": false, "fillSource": "DEX", "price": 0.7980969881400255, "marketcap": 564540377.0808485 } ], "meta": { "total": 20641951, "offset": 0, "limit": 5, "direction": "desc", "nextCursor": 1793516331000, "hasMore": true, "timeRange": { "startTime": null, "endTime": null } } }
{ success, took, data[], meta: { total, offset, limit, direction, nextCursor, hasMore, truncated?, timeRange } }
What it does
Trade history by token, account, or both
- Notes
- Cursor pagination: pass meta.nextCursor as cursor; it is null on the last page (meta.hasMore false). One row per Payment and pair (its fills merged), so meta.total counts fills; a page ends on a whole ledger and can hold a few rows more or fewer than limit. Offset pagination capped at 100k rows (meta.truncated: true, total capped to servable window; use cursor for deeper history). Trades carry sourceTag (numeric, on-chain SourceTag) and/or platform (canonical name for memo-identified platforms, e.g. SPYDEX)