Skip to main content

ape-alchemy: Alchemy provider plugins

Project description

Quick Start

Use the Alchemy provider plugin to interact with blockchains via APIs. The ape-alchemy plugin supports the following ecosystems:

  • Ethereum
  • Arbitrum
  • Base
  • Optimism
  • Polygon
  • Polygon-ZkEVM

Dependencies

Installation

via pip

You can install the latest release via pip:

pip install ape-alchemy

via setuptools

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

git clone https://github.com/ApeWorX/ape-alchemy.git
cd ape-alchemy
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_ALCHEMY_PROJECT_ID
  • WEB3_ALCHEMY_API_KEY
  • WEB3_<ecosystem>_<network>_ALCHEMY_PROJECT_ID
  • WEB3_<ecosystem>_<network>_ALCHEMY_PROJECT_ID

For example, to use both Arbitrum and Ethereum in the same session, you could set both WEB3_ARBITRUM_MAINNET_ALCHEMY_PROJECT_ID and WEB3_ETHEREUM_MAINNET_ALCHEMY_PROJECT_ID.

NOTE: If using non-Ethereum networks, take care to install the correct plugins, such as ape-arbitrum, ape-optimism, etc:

ape plugins install arbitrum

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

export WEB3_ALCHEMY_PROJECT_ID=MY_API_TOKEN=<value-of-secret-key>

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

ape console --network ethereum:sepolia:alchemy

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

from ape import networks

with networks.parse_network_choice("ethereum:mainnet:alchemy") as provider:
    ...

Transaction Traces

If you are using a paid tier of Alchemy, you have access to both Geth and Parity style traces. Parity traces are faster and thus are the ones uses in Ethereum receipts' show_trace() method:

from ape import networks

alchemy = networks.provider  # Assuming connected to Alchemy
txn_hash = "0x053cba5c12172654d894f66d5670bab6215517a94189a9ffc09bc40a589ec04d"
receipt = alchemy.get_transaction(txn_hash)
receipt.show_trace()  # Prints the Transaction trace

To access the raw CallTree, do:

from ape import networks

alchemy = networks.provider  # Assuming connected to Alchemy
txn_hash = "0x053cba5c12172654d894f66d5670bab6215517a94189a9ffc09bc40a589ec04d"
call_tree = alchemy.get_call_tree(txn_hash)

To learn more about transaction traces, view Ape's transaction guide.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ape-alchemy-0.8.1.tar.gz (63.4 kB view details)

Uploaded Source

Built Distribution

ape_alchemy-0.8.1-py3-none-any.whl (12.2 kB view details)

Uploaded Python 3

File details

Details for the file ape-alchemy-0.8.1.tar.gz.

File metadata

  • Download URL: ape-alchemy-0.8.1.tar.gz
  • Upload date:
  • Size: 63.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.14

File hashes

Hashes for ape-alchemy-0.8.1.tar.gz
Algorithm Hash digest
SHA256 53ecdd2280585ef504eba8b40a489bfa737172f426ffd56cd3da16e8bc65424c
MD5 9a0da5373b45a9562f47ac341f7aff34
BLAKE2b-256 bbf84ae5634918989ac2ae4ddcdd4da0c688e3bcae95b998411d49eaa21aad4c

See more details on using hashes here.

File details

Details for the file ape_alchemy-0.8.1-py3-none-any.whl.

File metadata

  • Download URL: ape_alchemy-0.8.1-py3-none-any.whl
  • Upload date:
  • Size: 12.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.14

File hashes

Hashes for ape_alchemy-0.8.1-py3-none-any.whl
Algorithm Hash digest
SHA256 2b00ae8e9f30ac46251de25fd813637213d2a9d072d713d3a798a3ae30e9a286
MD5 561df04ff7dfdcf8ec3f4cbe2cb0310d
BLAKE2b-256 77d42f73363ad5c01732eb41f719ea68885565c8555e5f5ceb45df2c5bf5d1e7

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page