Public API
Overview
The Public API is a signed HTTPS JSON interface for merchants on a dedicated host. It exposes account plan/usage, management of your JSON-RPC endpoints (UUID URLs), and Address Watch (subscribe to on-chain address activity, list events, configure a delivery webhook). JSON-RPC traffic itself still goes to each endpoint URL — not through this API host.
Base URL
Production host is https://api.rpcnode.dev. Paths start at /v1/… — there is no /api prefix.
Production base
https://api.rpcnode.dev
# Account (plan / usage)
https://api.rpcnode.dev/v1/account
https://api.rpcnode.dev/v1/account/usage
# JSON-RPC endpoints (UUID URLs)
https://api.rpcnode.dev/v1/endpoints
# Address Watch prefix
https://api.rpcnode.dev/v1/address-watch
# Example resource
https://api.rpcnode.dev/v1/address-watch/accountCreate an API key
Open the connect dashboard → API keys (/app/api-keys) and create a key.
You receive a key prefix (e.g. pk_live_…) for the X-Api-Key header, and a secret shown once — store it securely. The secret is required to sign every request and cannot be recovered later.
Optional per-key IP allowlist: if configured, requests from other client IPs receive HTTP 403.
Authentication
Every request must include X-Api-Key, X-Timestamp, and X-Signature. Sign the path starting with /v1/… (see Authentication).
Response and error shape
Successful responses are JSON with ok: true and resource fields (plan, usage, items, pagination, webhook, …).
Auth and API failures use ok: false and a string error. HTTP status is typically 401 (auth/signature), 403 (IP not allowed), 400 (validation / business error), or 500 (server).
Error example
{
"ok": false,
"error": "Invalid signature."
}What you can do
GET /v1/account — current plan limits and usage snapshot.
GET /v1/account/usage — credit/request series for the last 7, 30, or 90 days.
GET / POST /v1/endpoints — list and create JSON-RPC endpoints; GET …/available-networks; GET …/usage and …/{id}/usage; PATCH …/{id}/status and …/{id}/allowed-ips (no DELETE — pause via status).
GET /v1/address-watch/account — address-slot usage and webhook status.
GET / POST / DELETE /v1/address-watch/addresses — manage watched addresses (paginated list with filters).
GET /v1/address-watch/events — list recorded activity (paginated; payload fields flattened).
GET / PUT /v1/address-watch/webhook — read or set webhook URL and enabled flag.
Outbound webhook deliveries are signed so you can verify authenticity (see Webhook delivery).
Tips
- JSON-RPC full-node calls use each endpoint’s URL (UUID) — do not send X-Api-Key / X-Signature on those URLs.
- Empty request bodies are allowed (GET); the signature still hashes the empty body.
- Address slots are a hard plan cap (webhook_address_slots). Endpoint count is plan.endpoints_limit.