TriportRPC

stellarHorizonListLedgers

GEThttps://triport.io/rpc/stellar/horizon/ledgers?limit=1&order=desc

List retained Horizon ledgers.

Stellar mainnetstellar:rpcstellar_read_rpc — 15 / 20 / 100 / 250 RPS (free / basic / pro / business) (default, unmeasured)

Returns a cursor-paginated HAL page of ledgers inside the selected Horizon node's retention window.

Use it for recent ledger-header ingestion or close-time tracking. Use stellarHorizonGetLedger when one known sequence is required, or Soroban getLedgers when JSON-RPC/XDR is preferred.

The measured Horizon node retained 6,307,191 ledgers. This is a per-operator observation, not a network-wide archive guarantee.

Parameters

cursorstringoptional
Opaque Horizon paging token from a returned link.
orderstringoptional
Sort direction: asc or desc.
limitintegeroptional
Maximum page size from 1 through 200; 201 was rejected in measurement.

Response

This response was observed through Triport on September 7, 2026:

_linksobject
HAL navigation links; additional link relations may be present.
_links.next.hrefstring
URL carrying the cursor for the next page.
_embeddedobject
Container for the returned collection.
_embedded.recordsarray
Page of ledger HAL resources.
_embedded.records[].sequenceinteger
Ledger sequence.
_embedded.records[].paging_tokenstring
Opaque cursor; keep it as a string.
_embedded.records[].closed_atstring
Ledger close timestamp.

Errors

See Stellar errors and the shared error reference.

StatusMeaningWhen it happens
400Bad requestA query parameter is malformed or limit exceeds 200.
401UnauthorizedThe API key is missing or invalid.
403ForbiddenThe key lacks the required scope or tier.
429Rate limitedThe stellar_read_rpc RPS budget is exceeded.

Examples

JavaScript (fetch)

const response = await fetch("https://triport.io/rpc/stellar/horizon/ledgers?limit=1&order=desc", {
  headers: {
    "Authorization": `Bearer ${process.env.TRIPORT_API_KEY}`,
    "Accept": "application/hal+json",
  },
});
if (!response.ok) throw new Error(`Horizon returned ${response.status}`);
const payload = await response.json();
console.log(payload);

Notes

  • limit is at most 200.
  • Keep paging tokens as strings to avoid integer precision loss.
  • Related: stellarHorizonGetLedger and Soroban getLedgers.
  • Horizon is currently served by one measured operator on a best-effort basis without an SLA.
  • This product surface is read-only; transaction submission is unavailable.