There have been a number of times over the past year that the explorer has provided data to services that benefit the community. This proposal intends to provide an offical API with the full capability of navexplorer.com to all current and future projects that depend on the chain data. To do this, a new RESTful API will be developed to provide full unlimited access to all of the data held within the explorers database.
To be able to serve explorer data in realtime to additional consumers the explorer will need a system upgrade. The upgrade will be to decommision the current undocumented Java API. It will be replaced with a new load balanced Golang API that will be powered by a new ElasticSearch index.
The first stage of development will be to deploy the new ElasticSeaarch cluster and Golang API supporting the queries listed below. This should take around 3 months to develop, test and deploy live. This stage means that network and staking pages will be added to navexplorer.com.
Once live, the second stage will be to improve the API based on user feedback and include any/all feature requests that come in from the community. All new features requested and approved during this consulation period will be included in the API and additional supported navexplorer.com.
/api/address - Get list of addresses ordered by balance descending (rich list)
/api/address/:hash - Get details for an address by hash
/api/address/:hash/tx - Get transactions for an address by hash
/api/address/:hash/age - Get the first and last seen dates for an address
/api/address/:hash/rich-list - Get the rich list position for an address
/api/block - Get blocks
/api/block/:hash - Get details for a block by hash
/api/tx/:hash - Get transactions for a block by hash
Community Fund API
/api/community-fund/stats - Get stats for the community fund
/api/community-fund/block-cycle - Get data for the current cfund blockcycle
/api/community-fund/proposal - Get list of proposals (filterable by state)
/api/community-fund/proposal/:hash - Get proposal by hash
/api/community-fund/proposal/:hash/trend - Get voting trend data for a proposal
/api/community-fund/proposal/:hash/vote/:vote - Get votes for a proposal by hash (vote=true|false)
/api/community-fund/proposal/:hash/payment-request - Get payment requests by proposal (filterable by state)
/api/community-fund/payment-request - Get all payment requests (filterable by state)
/api/community-fund/payment-request/:hash - Get payment request by hash
/api/community-fund/payment-request/:hash/trend - Get voting trend data for a payment request
/api/community-fund/payment-request/:hash/vote/:vote - Get votes for a payment request by hash (vote=true|false)
/api/stakers - Get statistics on current stakers
/api/soft-fork - Get list of active and pending Navcoin soft forks
/api/peers - Get a list of all known peers on the network
/api/coin/price - Get the current trading price of NavCoin (BTC/USD)
/api/coin/market-cap - Get the current market cap of NavCoin
/api/coin/outstanding - Get total nav outstanding