A Python library for interacting with the Immutable X API
Project description
py-immutablex
0xF610975E70674b7b6429da6266a1a5d8C1C99238
A Python library for interacting with the Immutable X API. This library provides tools to derive Stark keys from Ethereum keys, register users, perform transfers, and more—aiming to eventually cover all Immutable X API resources.
Features
- Derive Stark keys from Ethereum private keys for Immutable X.
- Register users on Immutable X with Ethereum and Stark signatures.
- Perform transfers (e.g., ETH) using the Immutable X API.
- (In progress) Full coverage of Immutable X API endpoints: assets, orders, trades, balances, and more.
Installation
Install via pip:
pip install py-immutablex
Quickstart
Here’s how to initialize the client and perform a transfer:
from py_immutablex import IMXClient
# Initialize with your Ethereum private key
client = IMXClient('0xYourEthereumPrivateKeyHere')
# Transfer 1 ETH (in wei) to another address
transfer_id = client.transfer(
transfer_to='0xRecipientAddress',
token='ETH',
amount='1000000000000000000' # 1 ETH in wei
)
print(f'Transfer ID: {transfer_id}')
Prerequisites
- Python 3.7+
- An Ethereum private key (keep it secure!)
- Dependencies (installed automatically via pip):
- requests
- bip32
- eth-account
- starkware-crypto-signature
Development Status
This library is under active development. Current focus:
- Robust key derivation and user registration.
- Transfer functionality.
Planned features:
- Full Immutable X API support (assets, orders, trades, etc.).
- Comprehensive error handling and logging.
- Unit tests and CI/CD.
Check the Issues tab for progress or to request features!
Contributing
Contributions are welcome! Fork the repo, create a branch, and submit a pull request. See CONTRIBUTING.md for details.
- Fork the repo.
- Install dependencies: pip install -r requirements.txt
- Run tests (WIP): pytest
- Submit a PR!
License
This project is licensed under the MIT License - see the LICENSE file for details.
Acknowledgments
- Built with inspiration from the Immutable X developer community.
Questions? Bugs? Open an issue or reach out: @luizrrodrigues.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file py_immutablex-0.1.0.tar.gz.
File metadata
- Download URL: py_immutablex-0.1.0.tar.gz
- Upload date:
- Size: 11.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f4fc49370866d1d0e640184708483f5f9561142810bc62b7ad18c581bc0f3a0f
|
|
| MD5 |
c17c54e317e4f95b20c15cd4ee86260f
|
|
| BLAKE2b-256 |
74f96d784c043fedf3f56f5ac9afc96e885fefb0a61044ab2b33bbe7e647f011
|
Provenance
The following attestation bundles were made for py_immutablex-0.1.0.tar.gz:
Publisher:
publish.yml on luizrrodrigues/py-immutablex
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
py_immutablex-0.1.0.tar.gz -
Subject digest:
f4fc49370866d1d0e640184708483f5f9561142810bc62b7ad18c581bc0f3a0f - Sigstore transparency entry: 173929202
- Sigstore integration time:
-
Permalink:
luizrrodrigues/py-immutablex@c830c8068d4e4bd3abd0a4c6f7d02fa5aa0bf2d4 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/luizrrodrigues
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@c830c8068d4e4bd3abd0a4c6f7d02fa5aa0bf2d4 -
Trigger Event:
release
-
Statement type:
File details
Details for the file py_immutablex-0.1.0-py3-none-any.whl.
File metadata
- Download URL: py_immutablex-0.1.0-py3-none-any.whl
- Upload date:
- Size: 9.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
512c33a6296bb72ad6dde3c4feb0ace176b46e2383fbf411080c71626b419693
|
|
| MD5 |
66b4a2fa45edd5ca919b443c400f2bb9
|
|
| BLAKE2b-256 |
0a56ff04502f0b712ed7046ab873eae9502c87cc9a4467f1e619285773f4c8d9
|
Provenance
The following attestation bundles were made for py_immutablex-0.1.0-py3-none-any.whl:
Publisher:
publish.yml on luizrrodrigues/py-immutablex
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
py_immutablex-0.1.0-py3-none-any.whl -
Subject digest:
512c33a6296bb72ad6dde3c4feb0ace176b46e2383fbf411080c71626b419693 - Sigstore transparency entry: 173929204
- Sigstore integration time:
-
Permalink:
luizrrodrigues/py-immutablex@c830c8068d4e4bd3abd0a4c6f7d02fa5aa0bf2d4 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/luizrrodrigues
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@c830c8068d4e4bd3abd0a4c6f7d02fa5aa0bf2d4 -
Trigger Event:
release
-
Statement type: