Network documentation
Stellar RPC API reference
Stellar mainnet RPC endpoint: https://triport.io/rpc/stellar (HTTPS). Requests need a Triport API key in the x-token header; the Free plan is a 7-day trial. Endpoint, plans and limits: Stellar RPC endpoint.
https://triport.io/rpc/stellarAll Stellar reference pages 29
JSON-RPC · stellar read rpc heavy
JSON-RPC · stellar read rpc
REST
- Stellar Horizon REST methods
- stellarHorizonGetAccount
- stellarHorizonGetFeeStats
- stellarHorizonGetLedger
- stellarHorizonListAccountPayments
- stellarHorizonListAccountTransactions
- stellarHorizonListAssets
- stellarHorizonListLedgers
- stellarHorizonListOperations
- stellarHorizonListPayments
- stellarHorizonListTransactions
- stellarHorizonRoot
Streams
Guides & operations
Contracts
Capabilities
- Soroban RPC reads and simulationAvailableFree+simulateTransaction is a read; sendTransaction is not part of the product.
- Soroban ledgers, events and transactionsAvailableFree+getEvents takes a named params object; beyond_retention is an error, not empty history.
- Horizon REST (read)AvailableFree+Read-only: POST /transactions is not part of the product.
- Horizon SSE (ledgers, transactions)AvailableFree+Starts at cursor=now with Accept: text/event-stream; after a disconnect recover with REST reads, no arbitrary SSE replay.
Statuses reflect checks up to 2026-10-10. Rate limits are plan policy, not measured capacity.
Stellar combines 10 read-only Soroban JSON-RPC methods with 11 Horizon REST GET operations and two Horizon SSE channels.
| Method / Endpoint | Network | Chain ID | Authentication | Required scope | Tier / rate limit |
|---|---|---|---|---|---|
POST https://triport.io/rpc/stellar | Stellar mainnet | — | x-token: $TRIPORT_API_KEY | stellar:rpc | Category-specific RPS; see Limits |
Endpoints
| Surface | Endpoint | Reference |
|---|---|---|
| HTTPS | https://triport.io/rpc/stellar | Horizon SSE: /rpc/stellar/horizon/{ledgers |
| REST | Product routes | REST catalog |
| Stream contract | stellar sse | AsyncAPI |
Quickstart
curl https://triport.io/rpc/stellar \
-H "x-token: $TRIPORT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"getHealth","params":{}}'What's available
10 JSON-RPC methods in the OpenRPC catalog:
stellar_read_rpc_heavy: 2stellar_read_rpc: 8
Soroban and Horizon reads are subject to retention limits. Horizon is a best-effort service without an SLA. SSE delivers only new records with cursor=now; HAL _links and _embedded fields are unchanged. See the error reference for requests beyond retained history.
Limits
See network limits and Rate Limits & Tiers.
Finite request-rate budgets include a 2× burst buffer at no extra cost. It refills at sustained RPS; there is no quota on the number of bursts. Interval categories use seconds and have no RPS burst. See Burst capacity.
| Category | Free | Basic | Pro | Business | Enterprise |
|---|---|---|---|---|---|
stellar_read_rpc | 15 RPS sustained · up to 30 burst | 20 RPS sustained · up to 40 burst | 100 RPS sustained · up to 200 burst | 250 RPS sustained · up to 500 burst | unlimited |
stellar_read_rpc_heavy | 15 RPS sustained · up to 30 burst | 20 RPS sustained · up to 40 burst | 100 RPS sustained · up to 200 burst | 250 RPS sustained · up to 500 burst | unlimited |
Horizon limit, Soroban getLedgers, and Soroban getTransactions accept at most 200 items.
Errors
See network-specific errors and the shared error reference.
A deeper Horizon read returns HTTP 410 / beyond_retention; Soroban uses -32602 with beyond_retention and oldest N. These identify the current retention boundary, not a service failure.
Methods
stellar read rpc heavy (2)
stellar read rpc (8)
getFeeStatsgetHealthgetLatestLedgergetLedgerEntriesgetLedgersgetNetworkgetVersionInfosimulateTransaction
Streams
JavaScript (fetch)
The same request from JavaScript (Node 18+ or the browser):
const res = await fetch("https://triport.io/rpc/stellar", {
method: "POST",
headers: {
"x-token": process.env.TRIPORT_API_KEY,
"Content-Type": "application/json",
},
body: JSON.stringify({"jsonrpc":"2.0","id":1,"method":"getHealth","params":{}}),
});
const { result } = await res.json();
console.log(result);