Are there any ways to avoid limitation for api calls (5/sec)?

I need the info about transactions and balance (of certain account), UTXOs and the ability to broadcast my transaction.

Currently I am using public blockchain explorers such as




However they have limits on their calls, which is unacceptable for cases if my service in use of at least 1000-2000 people.

I am begginer, so after some surfing I understood that the only way to tackle that issue is by saving the info in my own database or run my own full nodes (for each currency I have - eth/etc/bitcoin/btc/doge/dash.. etc) which might be pretty expensive and time-consuming.

Can you suggest any good solution?

Thank you!

  • 1
    Looks like you've already found the solution, which is to run your own nodes. Free services have API limits for a reason, and bypassing them is likely against the terms of service. Moreover, you should not be relying on a third party to confirm such things - if they lie to you, you have little recourse against false balances and withdrawals. Mar 19, 2019 at 8:52
  • @RaghavSood seems like cashing data about my transactions in my own database (mapping account_address => array of transactions) would be much faster Even if I had my own node, it would take a lot of time to scan all blocks and receive the info I need, Idk how it is implemented in etherscan or chain.so but seems like they use special data structures etc (since I didnt find the method in JSON RPC to receive transactions by address)
    – newbie
    Mar 19, 2019 at 10:45
  • All the APIs you mention essentially extract all the information block by block into separate DBs and query it - You can check the source for open source explorers such as Insight to get an idea of how they are structured. Mar 19, 2019 at 10:49


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.