* Docs: Fixed keyring examples * Docs: Added Rx examples * [Docs] Added timeout to showcase unsubscribe method in ApiPromise * [Docs] Added timeout to showcase unsubscribe method in ApiPromise * [Docs] Added comments to read_storage example * [Docs] Renamed "transfer_dots' to a more generic 'make_transfer' since it's not only DOT's * [Docs] ApiRx examples for simple_connect, listen_to_blocks (incl. unsubscribe), listen_to_balance_change and read_storage * [Docs] changed back keyring import syntax to require * [Docs] Removed provider from read storage example * [Docs] ApiRx "make transfer" example * [Docs] ApiRx "system events" example * [Docs] ApiRx "transfer events" example * [Docs] Removed unused utility functions import * [Docs] ApiRx 'upgrade chain' example * [Docs] removed generated html files * [Docs] Ficed wrong Readme of listen to blocks example * [Docs added missing import] * [Docs] Removed unsubscribe() example from 'listen to blocks' * [Docs] Added Unsubscribe example for ApiPromise and ApiRx * [Docs] Added links to summary * [Docs] Removed duplicate info/comment from 04_unsubscribe * [Docs] Fixed wording * [Docs] Log actual transaction status in "make_transfer" * [Docs] Changed author name * [Docs] Log actual transaction status in "make_transfer" * [Docs] changed headline of make_transfer example README's * [Docs] changed status.value to status.asFinalised * [Docs] Removed auto-generated html * [Docs] Changed all occurances of status.value.toHex() to status.asFinalised.toHex() * [Docs] Remove call to nonce observable from signAndSend examples * [Docs] Use RxJs' zip() operator instead of 'await Promise.all()' * [Docs] Remove call to nonce observable from 'upgrade_chain' example * [Docs] Changed author * [Docs] Changed wording of balance change example * [Docs] smaller code-review fixes * [Docs] Fix Rx read_storage example * [Docs] use pairwise together with startWith in the Rx balance_change example * [Docs] Wording & little less code * [Docs] Added whitespace * [Docs] Use switchMap instead fo subscribe inside subscribe syntax * [Docs] Fixed import syntax for RxJs examples * [Docs] removed provider * [Docs] WIP read storage make-over * [Docs] update Rx read_storage * [Docs] Read storage example with piped switchMap() * [Docs] Turn null into observable * [Docs] Read storage example added 2nd version using tap() * [Docs] fixed name typo * [Docs] removed tap() example
@polkadot/api
This library provides a clean wrapper around all the methods exposed by a Polkadot/Subtrate network client and defines all the types exposed by a node. For complete documentation around the classes, interfaces and their use, visit the documentation portal.
tutorials
Looking for tutorials to get started? Look at examples for guides on how to use the API to make queries and submit transactions.
overview
The API is split up into a number of internal packages -
- @polkadot/api The API library, providing both Promise and RxJS Observable-based interfaces. This is the main user-facing entry point.
- @polkadot/api-derive Derived results that are injected into the API, allowing for combinations of various query results (only used internally and exposed on the Api instances via
api.derive.*) - @polkadot/rpc-core Wrapper around all JSON-RPC methods exposed by a Polkadot network client
- @polkadot/rpc-provider Providers for connecting to nodes, including WebSockets and Http
- @polkadot/rpc-rx A RxJs Observable wrapper around @polkadot/rpc-provider
Type definitions for interfaces as exposed by Polkadot & Substrate clients -
- @polkadot/extrinsics Base extrinsic definitions & codecs
- @polkadot/jsonrpc Definitions for JSONRPC endpoints
- @polkadot/storage Definitions for storage entries
- @polkadot/types Codecs for all Polkadot primitives
development
Contributions are welcome!
To start off, this repo (along with others in the @polkadot family) uses yarn workspaces to organise the code. As such, after cloning, its dependencies should be installed via yarn, not via npm; the latter will result in broken dependencies.
To get started -
- Clone the repo locally, via
git clone https://github.com/polkadot-js/api <optional local path> - Ensure that you have a recent version of Node.js, for development purposes Node 10 is recommended.
- Ensure that you have a recent version of Yarn, for development purposes Yarn >=1.10.1 is required.
- Install the dependencies by running
yarn - Build the API Docs, via
yarn run build - Ready! Now you can launch the API Docs, via
yarn gitbook serve - Access the API Docs via http://localhost:4000