HTTP API
Jat ships a small set of HTTP endpoints for status, the indexer, and the relayer. None of them take a spend key, and the sensitive work happens in your browser.
Status
GET /api/health
Service status, network, and the live program identifiers. Useful for uptime checks and verification.
{
"status": "ok",
"name": "Jat",
"network": "solana-devnet",
"stage": "pre-launch",
"program": "seuH78RmBPVzoKToLQVEZrDvuL5jDNBSbptozWK9PEm",
"programs": { "pool": "...", "announcer": "..." },
"token": null,
"version": "0.1.0"
}GET /api/token
The current token contract status. It returns pre-launch with a null address until a token exists, and never reports a fabricated address.
{ "status": "pre-launch", "ca": null, "symbol": null }Indexer
The indexer serves public on-chain data only. It never receives keys; your browser scans the raw results locally.
GET /api/indexer/announcementsreturns the raw stealth announcements to scan against your scan key.GET /api/indexer/pool/leavesreturns the public list of pool deposit leaves, used to rebuild the Merkle path in the browser.
Relayer
The relayer pays the network fee for a transaction you signed. See the fee relayer for the trust model.
GET /api/relayer/healthreports relayer availability.POST /api/relayer/relaysubmits a signed transaction for the relayer to pay the fee on. It rejects anything that would let it be drained.
Admin
A single authenticated endpoint manages the token contract address when one exists. It requires a bearer secret, compares it in constant time, and is disallowed in robots.txt for every crawler. It is not part of the public API and is documented here only for completeness.