Jito Labs Geyser Client
Project description
About
This library contains python code to interact with Jito's Geyser Plugin.
Downloading
$ pip install jito_geyser
Access Token
Please request access to geyser by emailing support@jito.wtf
Examples
Printing slot updates
from grpc import ssl_channel_credentials, secure_channel
from jito_geyser.generated.geyser_pb2 import SubscribeSlotUpdateRequest
from jito_geyser.generated.geyser_pb2_grpc import GeyserStub
GEYSER_URL = "mainnet.rpc.jito.wtf"
ACCESS_TOKEN = "ACCESS_TOKEN_HERE"
channel = secure_channel(GEYSER_URL, ssl_channel_credentials())
client = GeyserStub(channel)
for msg in client.SubscribeSlotUpdates(SubscribeSlotUpdateRequest(), metadata=[("access-token", ACCESS_TOKEN)]):
print(msg)
Listening to program account updates
This example listens to pyth-owned accounts
from grpc import ssl_channel_credentials, secure_channel
from solders.pubkey import Pubkey # note: probably need to install solders for this import
from jito_geyser.generated.geyser_pb2 import SubscribeProgramsUpdatesRequest
from jito_geyser.generated.geyser_pb2_grpc import GeyserStub
GEYSER_URL = "mainnet.rpc.jito.wtf"
ACCESS_TOKEN = "ACCESS_TOKEN_HERE"
ACCOUNTS = [bytes(Pubkey.from_string("FsJ3A3u2vn5cTVofAjvy6y5kwABJAqYWpe4975bi2epH"))]
channel = secure_channel(GEYSER_URL, ssl_channel_credentials())
client = GeyserStub(channel)
for msg in client.SubscribeProgramUpdates(SubscribeProgramsUpdatesRequest(programs=ACCOUNTS), metadata=[("access-token", ACCESS_TOKEN)]):
print(msg)
Functions available
- There are many functions available including:
- GetHeartbeatInterval
- SubscribeAccountUpdates
- SubscribeProgramUpdates
- SubscribePartialAccountUpdates
- SubscribeSlotUpdates
- SubscribeTransactionUpdates
- SubscribeBlockUpdates
Development
Install pip
$ curl -sSL https://bootstrap.pypa.io/get-pip.py | python 3 -
Install poetry
$ curl -sSL https://install.python-poetry.org | python3 -
Setup environment and build protobufs
$ poetry install
$ poetry shell
$ poetry protoc
Linting
$ poetry run black .
$ poetry run isort .
Publishing package
$ poetry protoc && poetry build && poetry publish
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
jito_geyser-0.1.0.tar.gz
(18.4 kB
view details)
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 jito_geyser-0.1.0.tar.gz.
File metadata
- Download URL: jito_geyser-0.1.0.tar.gz
- Upload date:
- Size: 18.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.3.2 CPython/3.10.8 Darwin/21.6.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
db1e6a2c1b7e178edfe9767e1da62080b3315e9fead9f6a51f3b7e9603da0b2a
|
|
| MD5 |
76102071fee23ef6bd124506109f12b5
|
|
| BLAKE2b-256 |
3997a841bf2dcdae71df28d02605381a0085080ce1976717c4c63093e6a580dd
|
File details
Details for the file jito_geyser-0.1.0-py3-none-any.whl.
File metadata
- Download URL: jito_geyser-0.1.0-py3-none-any.whl
- Upload date:
- Size: 22.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.3.2 CPython/3.10.8 Darwin/21.6.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
28fd93579d9b7a3c0cb774d51d59cd5bcc13aad8c9ac5dc1898251270a82a453
|
|
| MD5 |
3703dd09fb2a5520a27e26846d6c9d1b
|
|
| BLAKE2b-256 |
fa536c259cb254b89379c91693cc46689ccc119b5d3f4bba65486fe2a65ad4f4
|