Skip to content

JPLeoRX/thornode-py

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Introduction

Python client for THORNode API

THORChain has several APIs - Midgard, THORNode, Cosmos RPC, CometBFT RPC. This python client focuses on interactions with the basic THORNode API.

Built for API version 3.11.0.

API Swagger Docs

Progress

Below is the implementation status of the major sections of THORNode API in this Python client:

Section Implemented Notes
Auth
Bank
Health
Pools
Pool Slip
Liquidity Providers
Codes Not supported in current API
Oracle
TCY Stakers
TCY Claimers
RUNE Pool
Savers
Borrowers
Transactions
Nodes
Vaults
Network Partially implemented
Streaming Swap
Clout
Trade Unit
Trade Account
Secured Assets
Swap
Queue Partially implemented
TSS
Thornames
Mimir
Quote Loan & saver features not active in current API
Invariants
Block
Export Not supported in current API

If you notice any discrepancy or want a section prioritized, please open an issue or PR.

TODOs

  • Exceptions handling and keeping API response's error message
  • More detailed tests
  • Fill in missing endpoints in partially implemented sections

Installation

Normal installation

pip install thornode-py

Development installation

git clone https://github.com/jpleorx/thornode-py.git
cd thornode-py
pip install --editable .

Usage

from thornode_py import THORNodeAPI

api = THORNodeAPI()

# Check that it's online
ping = api.ping()

# Check API version
version = api.version()

# Get nodes
nodes = api.nodes()

# Get pools
pools = api.pools()

# Get thorname
thorname = api.thorname("example")

# Get swap quote
quote = api.quote_swap(
    from_asset="BTC.BTC",
    to_asset="ETH.ETH",
    amount=100000,
    destination="0x1c7b17362c84287bd1184447e6dfeaf920c31bbe",
)

Links

In case you’d like to check my other work or contact me:

About

Python client for THORNode API

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages