A Python JSON-RPC client for the NEO blockchain.
Project description
NeoJsonRPC is a Python JSON-RPC client for the NEO blockchain. It implements the JSON-RPC methods of the API interface provided by NEO nodes (minus the methods requiring an opened wallet). The client also provides a high-level interface to invoke contract methods on the NEO blockchain.
Documentation
Online browsable documentation is available at https://neojsonrpc.readthedocs.io.
Requirements
Installation
To install NeoJsonRPC, please use pip (or pipenv) as follows:
$ pip install neojsonrpc
Basic usage
The first step to interact with the NEO JSON-RPC interface is to initialize a neojsonrpc.Client instance. The following examples respectively show how to get clients for the TestNet, the MainNet and an hypothetical local PrivNet:
>>> from neojsonrpc import Client
>>> testnet_client = Client.for_testnet()
>>> mainnet_client = Client.for_mainnet()
>>> privnet_client = Client(host='localhost', port='30333')
Then you can easily call some of the JSON-RPC methods provided by NEO nodes. Here are some examples:
>>> from neojsonrpc import Client
>>> client = Client.for_testnet()
>>> client.get_block_count()
973369
>>> client.get_contract_state('2c0fdfa9592814b0a938219e218e3a6b08615acd')
{'author': 'foobar',
'code_version': '0.3',
# [...]
}
You can also invoke smart contract functions using the following methods:
>>> from neojsonrpc import Client
>>> client = Client.for_testnet()
>>> result = client.invoke_function('34af1b6634fcd7cfcff0158965b18601d3837e32', 'symbol', [])
{'gas_consumed': '0.217',
'stack': [{'type': 'ByteArray', 'value': bytearray(b'TKN')}],
'state': 'HALT, BREAK'}
>>> # Another convenient way to do the same operation is as follows:
>>> client.contract('34af1b6634fcd7cfcff0158965b18601d3837e32').symbol()
{'gas_consumed': '0.217',
'stack': [{'type': 'ByteArray', 'value': bytearray(b'TKN')}],
'state': 'HALT, BREAK'}
License
MIT. See LICENSE for more details.
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
File details
Details for the file neojsonrpc-0.1.1.tar.gz
.
File metadata
- Download URL: neojsonrpc-0.1.1.tar.gz
- Upload date:
- Size: 21.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e0176d4cc20cd2b21830e1c8d6cf8f0fdca938ded3aa8fdd267209acb7217ef8 |
|
MD5 | 81f60c5e2df834700e999eb6c15f9941 |
|
BLAKE2b-256 | 181c519c45ab8391449bf4619be1ea52c2e32a76412837dfd074524ebfa39cd0 |
File details
Details for the file neojsonrpc-0.1.1-py2.py3-none-any.whl
.
File metadata
- Download URL: neojsonrpc-0.1.1-py2.py3-none-any.whl
- Upload date:
- Size: 12.7 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4c9bb835eea6610b77484ef35a829b1f10705a37a5cfe663bb4dd5e0684ee42d |
|
MD5 | 3719eab9bab18f957334780462df0573 |
|
BLAKE2b-256 | 1f12e7748b9ab3cd6ed310d68041df206ff6b8b47e28297eed0ce6d6d724ec92 |