DASH budget information network (DBIN)

The cryptocurrency DASH introduced a budget system, that allows owners of full DASH nodes (masternodes) to vote on budget proposals. If a proposal got enough votes, it will be funded directly by the DASH blockchain. Proposals can be submitted by everybody and aim to improve the technical side, law and public awareness of DASH. DashCentral allows proposal owners present and describe their proposals. Masternode owners can comment and discuss on a proposal, to form a common opinion. Multiple proposal descriptions and discussion on different websites leads to loss of information and should be avoided.

To counter this problem, we are offering an API allowing everybody to conveniently pull the proposal data, description as well as the comments, to enhance the own website with a vivid DASH budget information section.

Benefits:

  • DASH proposal information and discussion is interesting an newsworthy content increasing retention of users on your website
  • Users can follow the budget proposals as well as the discussion directly on your website
  • Data is provided free of charge
  • Please link the "comment amount" and (if user comments have been integrated) a "comment reply link" to the respective DashCentral comment section, to allow users to post comments

How does it work?

  1. Call the "budget" API to get the list currently active proposals and store this information locally (e.g. mysql, redis, memcached)
  2. Display the list of proposals on your website
  3. The "budget" API also provides you with the proposal hash. Use the proposal hash to call the "proposal" API, giving your detailed proposal information including the description and comments
  4. Store the proposal information in a local database. Link the single entries of your proposal list with a separate page displaying detailed proposal information (description and comments)
  5. Check out the DashCentral budget page, to get an impression of how things could look like!

Overview

1. Budget API: list of all active proposals
2. Budget History API: list of all inactive and historic proposals
3. Proposal API: detailed proposal information including description and comments
4. Partner: become a partner of the DASH budget information network (DBIN)

Budget API

List of currently active budget proposals.

https://www.dashcentral.org/api/v1/budget
Group Values
budget
  • total_amount: total amount of available budget for next payment cycle in DASH [integer]
  • alloted_amount: total amount of DASH allocated to proposals which are within the budget [integer]
  • payment_date: next budget payment date [datetime, UTC]
  • payment_date_human: human readable payment date, eg. "5 days" [string]
  • superblock: blockheight of next superblock [integer]
proposals [array]
  • hash: proposal hash [string]
  • name: proposal name [string]
  • url: proposal URL set by the proposal owner during proposal submission [string]
  • dw_url: URL pointing to the DashCentral proposal page [string]
  • dw_url_comments: URL pointing to the comment section on the DashCentral proposal page [string]
  • title: proposal title entered by the proposal owner on DashCentral [string]
  • date_added: date, when the proposal was first seen on the network and has been added to the DashCentral database [datetime, UTC]
  • date_added_human: time since proposal has been added to the DashCentral database in words, eg. "6 days ago" [string]
  • date_end: date, when proposal payouts are expected to end [datetime, UTC]
  • voting_deadline: time until voting will be closed for this proposal [datetime, UTC]
  • voting_deadline_human: time until voting will be closed for this proposal, e.g "in 15 days" or "passed" [string]
  • will_be_funded: is true when proposal has enough yes votes to become funded [boolean]
  • remaining_yes_votes_until_funding: amount of yes votes required for funding of this proposal [integer]
  • in_next_budget: indicates, if proposal will be included within next budget and will be paid [boolean]
  • monthly_amount: amount of DASH that will be paid per month [integer]
  • total_payment_count: amount of payment cycles this proposal was intended to run [integer]
  • remaining_payment_count: remaining payment cycles [integer]
  • yes: yes votes on this proposal [integer]
  • no: no votes on this proposal [integer]
  • order: the order value should be used to sort proposals in case the JSON order is not preserved correctly. The order is defined by a reddit like algo covering the time and the upvotes and downvotes on DashCentral [integer]
  • comment_amount: amount of proposal comments posted on DashCentral [integer]
  • owner_username: username of the proposal owner on DashCentral [string]
status API status [ok, warning, error]
error_type API error type [empty, evaluation_mode, invalid_partner]

Budget History API

List of all inactive and historic proposals. 50 proposals on each page.

https://www.dashcentral.org/api/v1/budgethistory?pageid=<pageid>
Group Values
proposals [array]
  • hash: proposal hash [string]
  • name: proposal name [string]
  • url: proposal URL set by the proposal owner during proposal submission [string]
  • dw_url: URL pointing to the DashCentral proposal page [string]
  • dw_url_comments: URL pointing to the comment section on the DashCentral proposal page [string]
  • title: proposal title entered by the proposal owner on DashCentral [string]
  • date_added: date, when the proposal was first seen on the network and has been added to the DashCentral database [datetime, UTC]
  • date_added_human: time since proposal has been added to the DashCentral database in words, eg. "6 days ago" [string]
  • date_end: date, when proposal payouts are expected to end [datetime, UTC]
  • voting_deadline: time until voting will be closed for this proposal [datetime, UTC]
  • voting_deadline_human: time until voting will be closed for this proposal, e.g "in 15 days" or "passed" [string]
  • will_be_funded: is true when proposal has enough yes votes to become funded [boolean]
  • remaining_yes_votes_until_funding: amount of yes votes required for funding of this proposal [integer]
  • in_next_budget: indicates, if proposal will be included within next budget and will be paid [boolean]
  • monthly_amount: amount of DASH that will be paid per month [integer]
  • total_payment_count: amount of payment cycles this proposal was intended to run [integer]
  • remaining_payment_count: remaining payment cycles [integer]
  • yes: yes votes on this proposal [integer]
  • no: no votes on this proposal [integer]
  • order: the order value should be used to sort proposals in case the JSON order is not preserved correctly. The order is defined by a reddit like algo covering the time and the upvotes and downvotes on DashCentral [integer]
  • comment_amount: amount of proposal comments posted on DashCentral [integer]
  • owner_username: username of the proposal owner on DashCentral [string]
status API status [ok, warning, error]
error_type API error type [empty, evaluation_mode, invalid_partner]

Proposal API

This API provides you with detailed proposal information incudling proposal description and comments

https://www.dashcentral.org/api/v1/proposal?hash=<proposal_hash>
Group Values
proposal [array]
  • hash: proposal hash [string]
  • name: proposal name [string]
  • url: proposal URL set by the proposal owner during proposal submission [string]
  • dw_url: URL pointing to the DashCentral proposal page [string]
  • dw_url_comments: URL pointing to the comment section on the DashCentral proposal page [string]
  • title: proposal title entered by the proposal owner on DashCentral [string]
  • date_added: date, when the proposal was first seen on the network and has been added to the DashCentral database [datetime, UTC]
  • date_added_human: time since proposal has been added to the DashCentral database in words, eg. "6 days ago" [string]
  • date_end: date, when proposal payouts are expected to end [datetime, UTC]
  • voting_deadline: time until voting will be closed for this proposal [datetime, UTC]
  • voting_deadline_human: time until voting will be closed for this proposal, e.g "in 15 days" or "passed" [string]
  • will_be_funded: is true when proposal has enough yes votes to become funded [boolean]
  • remaining_yes_votes_until_funding: amount of yes votes required for funding of this proposal [integer]
  • in_next_budget: indicates, if proposal will be included within next budget and will be paid [boolean]
  • monthly_amount: amount of DASH that will be paid per month [integer]
  • total_payment_count: amount of payment cycles this proposal was intended to run [integer]
  • remaining_payment_count: remaining payment cycles [integer]
  • yes: yes votes on this proposal [integer]
  • no: no votes on this proposal [integer]
  • comment_amount: amount of proposal comments posted on DashCentral [integer]
  • description_base64_bb: proposal description entered by the proposal owner on DashCentral. This description contains bbcode and is base64 encoded to avoid JSON format problems [base64]
  • description_base64_html: proposal description entered by the proposal owner on DashCentral. Contained bbcode has already been parsed to HTML. This content is used as it is on the DashCentral website and should be safe. [base64]
  • owner_username: username of the proposal owner on DashCentral [string]
comments [array]
  • id: unique comment identifier [string]
  • username: DashCentral username of the comment poster [string]
  • date: comment date [datetime, UTC]
  • date_human: time since comment has been posted in words e.g. "3 days ago" [string]
  • order: sort comments using this order value [integer]
  • level: use the level value to add a css padding (e.g. $level*13px) to the comments in order to create the impression of a tree [integer]
  • recently_posted: use this value to highlight comments that have been posted recently [boolean]
  • posted_by_owner: highlight comments posted by the owner of the proposal [boolean]
  • reply_url: add a reply link to each comment and use this URL [string]
  • content: comment content [string]
status API status [ok, warning, error]
error_type API error type [empty, evaluation_mode, invalid_partner, proposal_not_existing]

Register as a DBIN partner

You are free to develop your app with the APIs provided above.

Before putting your app live, we highly recommend to request your personal partner key, which will be appended to the API (e.g. https://www.dashcentral.org/api/v1/budget?partner=XXX).

Simply send a short email to support at dashcentral.org providing us with the name and the URL of your project. It's free of charge and we are happy to welcome and list you as a DBIN partner.