PARACHUTE docs
v1.0.0
Live demo Get help
● Set up · Chain access

RPC
how PARACHUTE reads the chain.

Every number in PARACHUTE is read live from Robinhood Chain by the trader's browser. The default public RPC works without a key but is rate-limited per IP. For real traffic, bring your own provider and keep the public RPC as a fallback.

chainId 4663HTTP onlyFailover list

01Two RPC settings

SettingUsed byWhere
VITE_RPC_URLEvery trader's browser: feed, Trust Score, quotes, portfolio, Parachute rules..env.local, at build time. Public: it ships in the bundle.
Console → Integrations → Robinhood Chain RPC URL (server) (or PARACHUTE_RPC_URL)The operator server only: revenue view and status checks.Console or server environment. Never shown to traders.

02The public RPC and its limits

Default: https://rpc.mainnet.chain.robinhood.com, keyless, CORS open, HTTP only (no WebSocket). Measured by the author (FACTS.md §1, re-checked 2026-09-29):

LimitMeasuredHow PARACHUTE handles it
Rate limit per IP9 single requests per second for 30 s passed with no throttling; at 10/s about 1 in 9 were throttled; at 14/s almost half.A rate gate of 3 requests in flight and 130 ms spacing (about 7.7/s), retry with backoff, and a shared cool-down.
JSON-RPC batchesThrottled almost entirely.No batches are sent to the public RPC.
eth_getLogs result sizeAt most 10,000 logs per call.The window halves and retries.
eth_getLogs block span30,000 blocks without an address filter, 100,000 with an address list, 10,000,000 with one address.Each cap is learned from the first rejection.
Throttled repliesCarry a malformed CORS header.They show up in the browser console as a CORS error rather than HTTP 429. The gate keeps these rare.

What this means for traders on the public RPC: a Deep Trust report takes 10 to 40 seconds, and the first Positions or Portfolio visit of a wallet scans a 7-day window in about 200 requests (a minute or more, with visible progress; later visits read only new blocks). Block times are about 0.1 s.

03Use your own provider

  1. Get an endpointCreate a Robinhood Chain mainnet (chain ID 4663) HTTP endpoint with an RPC provider that supports this chain. Which providers do is outside this item; check their websites.
  2. Restrict the keyEvery VITE_* value is public, including a key inside the URL. If your provider supports it, restrict the key to your domain.
  3. Set a failover listIn .env.local, your provider first and the public RPC last:
    VITE_RPC_URL=https://<your-provider-url>,https://rpc.mainnet.chain.robinhood.com
  4. Build again
    npm run build
  5. CheckOpen /settings: it lists the endpoints in order (primary, failover 1, …). Your own endpoint is shown by host only, because provider URLs often carry a key.

How failover works: requests go to the first URL and move to the next when one fails. Each endpoint has its own rate gate.

04The server's RPC

The operator server reads fee revenue from the pons v2 factory deploy block onward and re-reads every 60 seconds. On the public RPC the first read can take a while. Set your provider in Console → Integrations, or lock it with PARACHUTE_RPC_URL in the server environment. Console → Status shows whether it answers ("chain 4663, block …").

05When the RPC struggles

PARACHUTE never fills a gap with a placeholder or a guessed number. It shows what is known, with its source and age, and says what is missing:

  • The block badge turns amber ("rate-limited") or red ("RPC down"); it never shows a fake block.
  • The feed shows a "not streaming" badge when polling stops, and older pages load on demand.
  • Trust signals that cannot be read become "unknown"; below 60% coverage no score is shown.
  • A swap without a quote shows "cannot quote" and no trade button.
  • Polling pauses in hidden tabs to save requests.

The full per-feature plan is in FACTS.md §5.