We get one question about the OpenScan REST API more than any other: “what are the rate limits?” Short answer: generous enough that well-behaved integrations never notice them. Here’s the longer version.
The defaults
Anonymous requests to xdcscan.io/api/v2 are rate-limited per source IP, with a burst allowance for interactive use (dashboards, wallets refreshing a balance) and a sustained rate for polling. Limits are applied per chain deployment — XDC Network, EVS, Wanchain, and Velas each have their own budget.
Designing around limits
- Cache what the chain already finalized. Block and transaction data past finality is immutable. If you fetch it twice, that’s a client bug, not an API problem.
- Use pagination cursors, not offsets. Cursor-paginated endpoints are cheaper for us to serve and get higher effective throughput.
- Back off on 429. Responses include retry hints; honor them instead of hammering.
Need more headroom?
If you’re building something that genuinely needs higher sustained throughput — an analytics pipeline, an indexer of your own, a wallet backend — tell us what you’re building via the contact form. Full endpoint documentation lives at xdcscan.io/api-docs.