This week, we released a new version of all integrations. This release brings a
new flag to grant network access to indexers. Use the --allow-net
flag to let
your indexer access the outside world, optionally restricting access only to
predetermined hosts for maximum security.
Until today, Apibara indexers were fully deterministic and could only use onchain data to compute derived data. Theoretically, this is good since it speeds up indexing significantly and removes any path dependency on indexers. In practice, we have found that data that is readily available with a single RPC call requires stitching together many unrelated onchain data sources at indexing and query time. This is far from the developer experience we strive to deliver with Apibara, so we decided to change it.
Use cases
RPC calls
Sometimes data is challenging to derive from events, but there is an RPC call that provides precisely what your indexer needs. You can now call the RPC directly from your indexer while indexing. Notice that making too many RPC calls will negatively affect your indexing speed.
Caching data
Connect your indexer to a key-value store like Redis to cache and share data between subsequent calls to the transform function. For example, you can keep a cache of token decimals to format token amounts quickly. You should not use this mechanism to store mutable data like token balances since they can be subject to chain reorganizations.