Interfacing via RPC and Websockets¶
Overview¶
APIs are separated into two categories, namely
- the Blockchain API which is used to query blockchain data (account, assets, trading history, etc.) and
- the CLI Wallet API which has your private keys loaded and is required when interacting with the blockchain with new transactions.
Blockchain API¶
The blockchain API (as provided by the witness_node
application),
allows to read the blockchain.
from peerplaysapi.node import PeerPlaysNodeRPC
ppy = PeerPlaysNodeRPC("wss://hostname")
print(ppy.get_account_by_name("init0"))
print(ppy.get_block(1))
Note
It is important to understand that the blockchain API does not know about private keys, and cannot sign transactions for you. All it does is validate and broadcast transactions to the P2P network.
CLI Wallet API¶
The cli-wallet api, as provided by the cli_wallet
binary, allows to
create and sign transactions and broadcast them.
from peerplaysapi.wallet import PeerPlaysWalletRPC
rpc = PeerPlaysWalletRPC("localhost", 8090)
print(rpc.info())