Skip to main content

Ripple JSON-RPC API and Data API wrapper for Python

Project description

python-ripple-lib is a client library to access Ripple rippled API and Data API.
Currently it supports public and admin methods (some of them still are work in progress though). List of implemented methods is displayed below. Basically, it’s just a wrapper on top of http requests made to API.

Available on PyPi

Installation

To install the package from PyPi run the following command

pip install python-ripple-lib

If you want to install package from this repo, use setup.py

python setup.py install

If you want to install package just for development purposes, use another command

python setup.py develop

This command creates symlinks to package files instead of copying it to package directory

JSON-RPC Methods

Most of JSON-RPC methods are implemented inside, for the full list of methods please refer to list of Public and Admin methods from ripple documentation
How to use:
from ripple_api import RippleRPCClient

# module supports authentication as well
rpc = RippleRPCClient('http://s1.ripple.com:51234/', username='<username>', password='<password>')
account_info = rpc.account_info('r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59')

Data API Methods

Most of Data API requests are implemented here as well, fll list located in here
How to use:
from ripple_api import RippleDataAPIClient

api = RippleDataAPIClient('https://data.ripple.com')
identifier = '3170DA37CE2B7F045F889594CBC323D88686D2E90E8FFD2BBCD9BAD12E416DB5'
query_params = dict(transactions='true')
ledger_info = api.get_ledger(ledger_identifier=identifier, **query_params)
Example of get_transactions() query:
from ripple_api import RippleDataAPIClient
from pprint import pprint

api = RippleDataAPIClient('https://data.ripple.com')
# to get name of a specific transaction type please refer to this link:
# https://developers.ripple.com/transaction-types.html
query_params = dict(type="Payment")
txs = api.get_transactions(**query_params)
pprint(txs)

Additional methods

Send XRP from address tp address via Account instance:

from ripple_api import Account

taker = 'rYuHe4VogMzYmvHpSsgGxRH97UvqumgER'
issuer = 'rMEmLrfkfooLjdkerU5TKTcAVpfy9fpSxt'
seed = '<account_seed>'
account = Account('http://localhost:5005', issuer, seed)
tx_info = account.send_xrp(issuer=issuer, taker=taker, secret=seed, amount=10)

Contributing

  1. Fork this project
  2. Clone it locally
  3. Add your changes
  4. Run tests:
make test

or

python -m unittest -v
  1. If tests are successful and everything is OK, commit to your local fork
  2. Submit a pull request to this repo

Project details


Download files

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

Files for python-ripple-lib, version 1.0.8
Filename, size File type Python version Upload date Hashes
Filename, size python_ripple_lib-1.0.8-py3-none-any.whl (19.4 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size python-ripple-lib-1.0.8.tar.gz (19.5 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page