OnFinality uses Response Units for both API Billing and Rate Limiting.

Each API Response has a Response Unit weighting based on the computational power required to serve the response, resulting in fairer usage of shared node resources.

Response Unit weightings

The default response unit weighting is 1 across the majority of our networks, with the following exceptions:

  • system_health has a Response Unit weighting of 0 across all networks. Many popular clients use system_health as a web sockets keep alive.

  • Ethereum Main Net and Goerli have higher Response Unit weightings for more intensive methods, see Ethereum Response Units for details

Why Responses instead of Requests?

With standard HTTPs JSON RPC (Remote Procedure Calls) one request receives one response. However, with web socket connections a single subscription can result in multiple responses per minute.

For example, subscribing to a chain’s head will receive a push response from the node every time there is a new block on the chain, usually every 6-12 seconds depending on the network. A single “subscription” request could go on to receive 600 responses over an hour.