API documentation

Everything you need to call the nodeS JSON-RPC gateway. You'll need an API key — create one or sign in to manage it.

Endpoint

Send a standard JSON-RPC request as an HTTP POST to the per-chain path:

POST /rpc/{chain}

Chains

ChainPath
BitcoinPOST /rpc/btc
LitecoinPOST /rpc/ltc
DogecoinPOST /rpc/doge
DashPOST /rpc/dash
ZcashPOST /rpc/zec

Authentication

Pass your API key with either header — both are accepted:

Authorization: Bearer <your-api-key>
X-API-Key: <your-api-key>

Requests without a valid key get 401. Keys are secret — treat them like passwords.

Capability selectors

Require a node with specific capabilities via query params. If none is available you get a 503 naming exactly what was missing — never a silent downgrade.

?archive=true   route to an archive node (full historical state)
?indexed=true   route to a tx-indexed node

Optional Tor egress

Set this header to route the outbound call to the backend node over Tor. Fail-closed: it never falls back to a direct dial. Ignored unless enabled server-side.

X-Tor-Egress: true

Method allowlist

Default-deny. Only these read-only methods pass through; wallet, admin and node-control methods are rejected with 403.

getblockchaininfogetblockcountgetbestblockhashgetblockhashgetblockgetblockheadergetrawtransactiongettxoutgetmempoolinfogetnetworkinfoestimatesmartfeesendrawtransaction

Response headers

Every response carries your current usage so clients can self-regulate before hitting 429:

X-RateLimit-Limit / X-RateLimit-Remaining / X-RateLimit-Reset
X-Quota-Limit / X-Quota-Remaining / X-Quota-Reset

Examples

Bearer auth — block count (BTC)

curl -s /rpc/btc \
  -H "Authorization: Bearer $NS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"1.0","id":"1","method":"getblockcount","params":[]}'

X-API-Key header — chain info (LTC)

curl -s /rpc/ltc \
  -H "X-API-Key: $NS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"1.0","id":"1","method":"getblockchaininfo","params":[]}'

Capability selectors — raw transaction from an archive+indexed node

curl -s "/rpc/btc?archive=true&indexed=true" \
  -H "Authorization: Bearer $NS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"1.0","id":"1","method":"getrawtransaction","params":["<txid>",true]}'

Tor egress

curl -s /rpc/btc \
  -H "Authorization: Bearer $NS_API_KEY" \
  -H "X-Tor-Egress: true" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"1.0","id":"1","method":"getblockcount","params":[]}'