Arc RPC Endpoint
Arc mainnet RPC — Chain ID 5042, USDC-native gas, 500 ms blocks. Public endpoint with no API key, or a keyed endpoint on any plan.
Arc is Circle's USDC-native L1. Gas is paid in USDC, blocks arrive every 500 ms, and consensus is Malachite BFT, so a block is final when it is decided. NodeFlare serves Arc from its own node in Frankfurt.
Endpoints
Public — no API key:
https://rpc.nodeflare.app/arc/publicKeyed — higher limits and heavy methods:
https://rpc.nodeflare.app/arc/v1/{YOUR_KEY}Quick start
curl https://rpc.nodeflare.app/arc/public \
-X POST \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":1}'Expected: {"jsonrpc":"2.0","id":1,"result":"0x13b2"} — that is 5042, Arc mainnet.
import { ethers } from 'ethers';
const provider = new ethers.JsonRpcProvider(
'https://rpc.nodeflare.app/arc/public'
);
console.log('Arc block:', await provider.getBlockNumber());Network details
| Chain ID | 5042 (0x13b2) |
| Gas token | USDC, 18 decimals on the EVM layer |
| Block time | 500 ms |
| Finality | deterministic, under 1 second |
| Consensus | Malachite BFT |
| Explorer | explorer.arc.io |
What is different about Arc
Gas is denominated in dollars. A transaction that costs 0.002 USDC costs 0.002 USDC tomorrow as well, which removes the usual step of holding a volatile asset purely to pay for execution.
Finality is deterministic. There is no probabilistic confirmation window and no reorg to design around, so a receipt you have read is a receipt that stands.
The validator set is permissioned. Circle selects who produces blocks. Running a read node, which is what serves this endpoint, requires no permission at all.
Methods
The full eth_, net_ and web3_ surface is available, plus debug_ and trace_
on our node. Compute-unit costs are the same as on every other chain — see
rate limits.