corpus/ directory: the same files CI verifies, served at https://api.istravex.com. It needs no key.
Fixtures
List, filter and download fixtures and their raw XDR.
Ledgers
The canonical LedgerCloseMeta each fixture was verified against.
Results
Raw output of every kit stage, and the CAP audit.
RPC
A mock Stellar RPC for replaying the corpus.
Conventions
Versioning. Everything is under/v1. Additive changes (new fields, new endpoints) don’t bump the version; anything that could break a client does.
64-bit integers are strings. IDs, amounts, fees and limits come back as JSON strings, exactly as stored in the manifests. Parse them with BigInt or a decimal type. See why.
XDR. Fixture files are base64 by default, byte-identical to the repository. Add ?encoding=binary for raw bytes. X-XDR-Type names the type; X-Content-SHA256 is the sha256 of the decoded bytes, matching the manifest, so you can verify every download.
Caching. Responses carry ETag and Cache-Control. The corpus only changes on deploy, so conditional requests with If-None-Match return 304 and cost nothing.
CORS. Every origin is allowed. Call it straight from a browser.
Errors
Errors are JSON with a stable code:Rate limits
Every response carries
RateLimit-Limit, RateLimit-Remaining and RateLimit-Reset. If you need more, run your own: it’s one container.
OpenAPI
The full spec is served athttps://api.istravex.com/openapi.json (OpenAPI 3.1). It’s the same file these reference pages are generated from, and a test fails if the server and the spec disagree.