Skip to content

Network, limits and errors

Chain id4663
CurrencyETH (18 decimals)
Nodehttps://rpc.mainnet.chain.robinhood.com
Explorerhttps://robin.etherscan.io

GET /chain answers all of this, with every contract a swap touches (Uniswap’s Universal Router, Permit2, the Uniswap factories, the launchpads), the current fees, and how far Uprally has read the chain (data.indexedThroughBlock, data.stale). Read it when your code starts. Every transaction the API builds carries chainId 4663; a wallet on another network refuses it, which is the point.

There is no testnet: every answer is about real coins and real money. Quote and build freely (nothing is sent); send only what you mean to.

Per address, per minute: reads 300, quotes 120, swaps and launches 60, image uploads 20. Past one, 429 RATE_LIMITED with retry-after. No key needed, no tiers.

Every error is one shape, with an HTTP status:

{ "error": { "code": "NO_ROUTE", "message": "…", "fix": "…", "field": "amount", "detail": [] } }

Act on code: it never changes. fix says what to do; field names the input at fault. Every code, and live at GET /api/v1/errors with whether a retry can succeed.

In: decimal strings in whole units ("0.05" ETH). Out: both, { "amount": "0.05", "wei": "50000000000000000" }. Never JavaScript numbers for money.