An SDK to use the Alchemy API
- Python 3.7 or higher
- You'll know you've done it right if you can run
python3 --version
in your terminal and see something likePython 3.10.6
- You'll know you've done it right if you can run
pip3 install alchemy_sdk_py
After installing, you'll need to sign up for an API key and set it as an ALCHEMY_API_KEY
environment variable. You can place them in a .env
file if you like just please don't push the .env
file to GitHub.
.env
ALCHEMY_API_KEY="asdfasfsfasf
If you're unfamiliar with environment variables, you can use the API to set the key directly using the SDK - please don't do this in production code.
from alchemy_sdk_py import Alchemy
alchemy = Alchemy(api_key="asdfasfsfasf", network="eth_mainnet")
If you have your environment variable set, and you want to use eth mainnet, you can just do this:
from alchemy_sdk_py import Alchemy
alchemy = Alchemy()
You can also set the network ID using the chainId, or hex, and even update it later.
# For Goerli ETH
alchemy = Alchemy(network=5)
# For Polygon ("0x89" is hex for 137)
alchemy.set_network("0x89")
from alchemy_sdk_py import Alchemy
alchemy = Alchemy()
current_block_number = alchemy.get_current_block_number()
print(current_block_number)
# prints the current block number
With web3.py
from alchemy_sdk_py import Alchemy
from web3 import Web3
alchemy = Alchemy()
w3 = Web3(Web3.HTTPProvider(alchemy.base_url))
The following code will get you every transfer in and out of a single wallet address.
from alchemy_sdk_py import Alchemy
alchemy = Alchemy()
address = "YOUR_ADDRESS_HERE"
transfers, page_key = alchemy.get_asset_transfers(from_address=address)
print(transfers)
# prints every transfer in or out that's ever happened on the address
ENS = "0x57f1887a8BF19b14fC0dF6Fd9B2acc9Af147eA85"
contract_metadata = alchemy.get_contract_metadata(ENS)
print(contract_metadata["contractMetadata"]["openSea"]["collectionName"])
# prints "ENS: Ethereum Name Service"
Just about everything in the Alchemy SDK section of the docs.
-
batchRequests
-
web sockets
-
Notify API
&filters
ieeth_newFilter
-
Async support
- ENS Support for addresses
- Double check the NFT, Transact, and Token docs for function
- Trace API
- Debug API