The BP.json is a way for block producer candidates to publish information about themselves using the website specified on the
regproducer action on the
eosio.system contract. Having a standard use across different EOSIO blockchains allows for compatibility between dApps and interfaces that require information about any block producer.
The first version of the BP JSON was published before Mainnet launch and became a standard used by virtually all BP Candidates on Mainnet and other chains.
Considering the evolution of the role of BPs and also focusing on making interfaces more intuitive and easier for developers, we are proposing minor changes and adaptations as follows:
node_type— On the original structure, BP Candidates had to declare if each of the nodes registered was a producer node (
is_producer) or if it was a full node, a concept that is too limited for the number of options we have on EOSIO. Those have been suppressed and changed to a
node_typefield that can assume the value of
producer: node ready to produce with signing key
query: node that provides HTTP or other APIs to the public, declaring one or more features (see item 2 below)
seed: node that provides P2P access to the public
d. One can also define the
node_typeas an array such as
[“query”, “seed”]for cases where the same node is providing both roles.
- API Features array — BPs will be able to inform about served APIs on their query nodes. Please refer to the github for the up to date list of supported features.
chain-api: basic eosio::chain_api_plugin (/v1/chain/*)
chain_resources (string) and
allow BPs to provide URLs for chain resources such as snapshots, downloads or any other relevant links/services owned by them.
e.g. If you have a snapshot website, that would be
github_user was included for the BPs to name a technical github user to serve as a point of contact that can be added to different chain repositories.
Other than that, minor fixes are included in this version 1.0.1 and the
bnet_endpoint was removed since the protocol was deprecated.
Different teams and services have been involved in suggesting and validating the standard and we expect the migration by BPs, applications and interfaces to happen over the following weeks.
→ BP Info Standard Github:
→ See all changes on the release changelog: