Skip to content

ApeWorX/ape-infura

Repository files navigation

Quick Start

Use the Infura provider plugin to interact with blockchains via APIs. This plugin supports the following ecosystems:

  • Arbitrum
  • Avalanche
  • Blast
  • Ethereum
  • Linea (awaiting ape-linea update)
  • Optimism
  • Polygon

Dependencies

Installation

via pip

You can install the latest release via pip:

pip install ape-infura

via setuptools

You can clone the repository and use setuptools for the most up-to-date version:

git clone https://github.com/ApeWorX/ape-infura.git
cd ape-infura
python3 setup.py install

Quick Usage

First, make sure you have one of the following environment variables set (it doesn't matter which one):

  • WEB3_INFURA_PROJECT_ID
  • WEB3_INFURA_API_KEY

Either in your current terminal session or in your root RC file (e.g. .bashrc), add the following:

export WEB3_INFURA_PROJECT_ID=MY_API_TOKEN

# Multple tokens
export WEB3_INFURA_PROJECT_ID=MY_API_TOKEN1, MY_API_TOKEN2

To use the Infura provider plugin in most commands, set it via the --network option:

ape console --network ethereum:sepolia:infura

To connect to Infura from a Python script, use the networks top-level manager:

from ape import networks

with networks.parse_network_choice("ethereum:mainnet:infura") as provider:
    # Also, access the websocket URI:
    print(provider.ws_uri)