Documentation
One key. One bill. Every chain.
Everything below is served by the same gateway you'll call — chains, limits, and tools are rendered live, never stale. Machine-readable version: /llms.txt.
Try it live — no signup
Pick a chain and a method, hit send — the request goes through the real gateway: same relay, same automatic failover, same upstreams. You'll see the response time and which provider actually served you.
// the JSON-RPC response appears here
Demo methods only — sign up free for the full JSON-RPC surface with your own key. Full reference in the docs.
Quickstart
- Sign up (free tier, e-mail only).
- Create an API key in the dashboard — the
fy_…token is shown exactly once. - Relay a request:
curl -X POST https://flexyield.io/rpc/eth_mainnet \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"eth_blockNumber"}'
Authentication
Every endpoint takes the same bearer key: Authorization: Bearer fy_….
Keys are account-scoped; issue one per app or agent, set an optional monthly request cap
per key, and revoke instantly from the dashboard.
Supported chains
| Slug | Network |
|---|---|
arbitrum_one | Arbitrum One |
base_mainnet | Base Mainnet |
eth_mainnet | Ethereum Mainnet |
optimism_mainnet | OP Mainnet |
polygon_pos | Polygon PoS |
solana_mainnet | Solana Mainnet |
Every chain is served by multiple upstream providers with automatic failover and circuit breakers — measured uptime and latency are public on /status.
Endpoints
| Endpoint | What it does |
|---|---|
POST /rpc/{chain} |
JSON-RPC 2.0 relay to the best healthy upstream. 2xx bodies pass through verbatim.
Omitting {chain} defaults to eth_mainnet. |
GET /data/{chain}/balances/{address} |
Native balance on every chain; ERC-20 token balances on chains with a data-capable upstream. |
GET /data/{chain}/history/{address} |
Recent asset transfers (sent + received, newest first). EVM chains. |
Rate limits & response headers
Free: 1,000,000 requests/month included · burst up to 100 requests per 15 minutes — free.
Builder: Unlimited requests · fair-use burst up to 1,800 requests/min.
Pro: 15,000,000 requests/month included · burst up to 3,000 requests/min.
Pro (yearly): 15,000,000 requests/month included · burst up to 3,000 requests/min.
Every authenticated response carries X-RateLimit-Limit and
X-RateLimit-Remaining; plans with a monthly included quota add
X-Quota-Limit and X-Quota-Remaining. A 429 adds
Retry-After (seconds). An exhausted monthly quota answers with error
code -32007; optional per-key monthly caps answer with -32006.
Supply is tiered by design: free-tier traffic is served by the public RPC endpoints in our pool (with the same automatic failover). Premium credentialed providers are onboarding and will serve paid plans first once live; the data API activates with premium supply (paid plans only).
Errors
| Code | Meaning |
|---|---|
-32001 | Invalid or missing API key (HTTP 401) |
-32005 | Rate limit exceeded (HTTP 429, see Retry-After) |
-32006 | Monthly request cap reached for this key (HTTP 429) |
-32007 | Plan's monthly included requests used up (HTTP 429) |
-32009 | Account suspended (HTTP 403) |
-32010 | Data API requires a paid plan (HTTP 403) |
-32600 / -32602 / -32700 | Invalid request / params / JSON |
-32603 | All upstream endpoints unavailable (HTTP 502) |
Every error includes error.data.request_id — quote it when contacting
hello@flexyield.io and we can trace the exact call.
For AI agents (MCP)
The gateway is an MCP server at https://flexyield.io/mcp (HTTP+SSE).
Account tools authenticate with the same bearer API key. Current tools:
create_api_key— Create a new FlexYield API key for the authenticated account. Returns the plaintext token exactly once — store it securely, it cannot be retrieved again.revoke_api_key— Revoke one of the authenticated account's API keys. Requests using the key stop working immediately. Idempotent.usage_report— Report the authenticated account's RPC gateway usage: total requests, success rate, latency (avg + p95), per-key volume/latency/errors/last-used, and per-method and per-chain counts.list_plans— List FlexYield's public subscription plans: prices in integer USD cents, billing interval, monthly included request quota, and burst rate limits. No authentication required.join_waitlist— Join the FlexYield early-access waitlist. Qualifier must be one of: developer, investor, curious. No authentication required.get_balances— Native balance (all supported chains) and ERC-20 token balances (chains with a data-capable upstream) for an address. Chains: e.g. eth_mainnet, base_mainnet, arbitrum_one, optimism_mainnet, polygon_pos, solana_mainnet.get_history— Recent asset transfers (sent + received, newest first) for an address on chains with a data-capable upstream. EVM chains only in v1.