Repository
https://github.com/steemit/devportal
Site
Issue
- What was the issue(s)?
As a node operator and/or witness, I would like to know exactly which plugins are required by which API, so I can fine-tune my node's resource requirements. - What was the solution?
Provide information about which APIs require which plugins, and which plugins get enabled automatically.
Once this PR is approved, the devportal site will have the following recipe:
title: Plugin & API List
position: 1
description: Run a `steemd` node with your preferred APIs.
exclude: true
layout: full
This is a list of the plugins, and their associated dependencies, required to enable specific apis.
When setting up the config file steemd will enable the chain, p2p, and webserver plugins regardless of other dependencies.
API's with their respective plugin dependencies
account_by_key_api
- Purpose: Used to lookup account information based on a public key.
- Requires:
account_by_key - Exposed Methods:
account_by_key_api.*
Example in chain.ini:
plugin = account_by_key
plugin = account_by_key_api
account_history_api
- Purpose: Used to lookup account history information.
- Requires:
account_historyoraccount_history_rocksdb - Exposed Methods:
account_history_api.*
Note, while the account_history_rocksdb plugin is a more efficient, the current implementation does not provide support for condenser_api.get_transaction
Example in chain.ini:
plugin = account_history
plugin = account_history_api
... or ...
plugin = account_history_rocksdb
plugin = account_history_api
block_api
- Purpose: Used to query values related to the block plugin.
- Requires: No additional
- Exposed Methods:
block_api.*
Example in chain.ini:
plugin = block_api
condenser_api
- Purpose: Intended to help ease the transition to AppBase. It is recommended that apps transition away from this API.
- Requires:
database_api(automatic) - Optional:
account_by_keytagsfollowmarket_historyaccount_history
- Exposed Methods:
condenser_api.*
Example in chain.ini:
plugin = account_by_key tags follow market_history account_history
plugin = condenser_api
database_api
- Purpose: Used to query information about accounts, transactions, and blockchain data.
- Requires: No additional
- Exposed Methods:
database_api.*
Example in chain.ini:
plugin = database_api
debug_node_api
- Purpose: Allows all sorts of creative "what-if" experiments with the chain.
- Requires:
debug_node - Exposed Methods:
debug_node_api.*
Example in chain.ini:
plugin = debug_node
plugin = debug_node_api
follow_api
- Purpose: Used to lookup information related to reputation and account follow operations.
- Requires:
follow(automatic) - Exposed Methods:
follow_api.*
Example in chain.ini:
plugin = follow_api
market_history_api
- Purpose: Used to lookup market history information. Can return the market and trade history of the internal STEEM:SBD market. The order book, recent trades and the market volume is made available through this plugin.
- Requires:
market_history(automatic) - Exposed Methods:
market_history_api.*
Example in chain.ini:
plugin = market_history_api
network_broadcast_api
- Purpose: Used to broadcast transactions and blocks.
- Requires:
rc(automatic) - Exposed Methods:
network_broadcast_api.*
Example in chain.ini:
plugin = network_broadcast_api
rc_api
- Purpose: Managing of resources - curation rewards, vesting shares, etc.
- Requires:
rc(automatic)database_api(automatic)
- Exposed Methods:
rc_api.*
Example in chain.ini:
plugin = rc_api
reputation_api
- Purpose: Manage account reputation (relevant to voting on content).
- Requires:
reputation(automatic) - Exposed Methods:
reputation_api.*
Example in chain.ini:
plugin = reputation_api
tags_api
- Purpose: Used to lookup information about tags, posts, and discussions as well as votes.
- Requires:
tags(automatic) - Exposed Methods:
tags_api.*
Example in chain.ini:
plugin = tags_api
transaction_status_api
- Purpose: Evaluates a transaction status after calling
condenser_api.broadcast_transaction - Requires:
transaction_status(automatic)database_api(automatic)
- Exposed Methods:
transaction_status_api.*
Example in chain.ini:
plugin = transaction_status_api
witness_api (deprecated)
- Purpose: The witness plugin contains all of the bandwidth logic (replaced by
rc). Can access the available bandwidth of an account and current reserve ratio. - Requires:
rc(automatic) - Exposed Methods:
witness_api.*
Example in chain.ini:
plugin = witness_api
Notes
Complete changes are detailed here:
https://github.com/steemit/devportal/pull/397/files
Thank you for your contribution.
Although this documentation work is essential and thank you for that, yet in itself does not represent a tutorial, more so "documentation work".
The PR hasn't been merged yet so from a documentation perspective this cannot yet be labelled as such from a utopian review perspective.
You could have adjusted this to a tutorial by providing some real tutorial content in additional to the standard documentation, i.e. by showcasing detailed examples of how the user could utilize those functions in real examples, using any language of your choice.
I suggest you would take every few of those documentation elements, and compile a relevant tutorial which would definitely be helpful to the community as a whole, if you wish to do so.
Need help? Write a ticket on https://support.utopian.io/.
Chat with us on Discord.
[utopian-moderator]
All good points. I'm with you. I may just be jumping the gun, including this before it's merged. I debated using the #blog tag, as in, "here's what I've documented."
Unfortunately, I'm just not sure if there's any priority at Steemit, Inc. to merge stuff like this at the moment.
Thank you for your review, @mcfarhat! Keep up the good work!
Hi @inertia!
Your post was upvoted by @steem-ua, new Steem dApp, using UserAuthority for algorithmic post curation!
Your UA account score is currently 6.474 which ranks you at #164 across all Steem accounts.
Your rank has improved 1 places in the last three days (old rank 165).
In our last Algorithmic Curation Round, consisting of 239 contributions, your post is ranked at #15.
Evaluation of your UA score:
Feel free to join our @steem-ua Discord server
Hi, @inertia!
You just got a 3.11% upvote from SteemPlus!
To get higher upvotes, earn more SteemPlus Points (SPP). On your Steemit wallet, check your SPP balance and click on "How to earn SPP?" to find out all the ways to earn.
If you're not using SteemPlus yet, please check our last posts in here to see the many ways in which SteemPlus can improve your Steem experience on Steemit and Busy.
This post was upvoted by SteeveBot!
SteeveBot regularly upvotes stories that are appreciated by the community around Steeve, an AI-powered Steem interface.
This post has been included in today's SOS Daily News - a digest of all you need to know about the State of Steem.
Promoter of The SOS Forums : Weekly Discussion Forums on the State of Steem.
Co-ordinator of SteemClub-UK.
Editor of the weekly listing of steem radio shows, podcasts & social broadcasts.
Founder of the A Dollar A Day charitable giving project.