Links
Comment on page

DPOPS

Note zachys (atomic units) are 10^6 in X-Cash

Stats

This method gets the stats
Method: GET
Inputs: None.
Results:
  • mostTotalRoundsDelegateName - string; The delegate name that has participated in the most X-Cash DPOPS rounds.
  • mostTotalRounds - unsigned int; The most total rounds.
  • bestBlockVerifierOnlinePercentageDelegateName - string; The delegate with the best online percentage.
  • bestBlockVerifierOnlinePercentage - unsigned int; The best online percentage.
  • mostBlockProducerTotalRoundsDelegateName - string; The delegate will the most block producer rounds.
  • mostBlockProducerTotalRounds - unsigned int; Total most block producer rounds.
  • totalVotes - unsigned long long; Total votes in zachys (atomic units).
  • totalVoters - unsigned int; Total voters.
  • averageVote - unsigned int; Average vote amount in zachys (atomic units).
  • votePercentage - unsigned int; The percentage of the amount of xcash ciruclating compared to how much is being voted.
  • roundNumber - unsigned int; The round number of X-Cash DPOPS.
  • totalRegisteredDelegates - unsigned int; Total registered delegates.
  • totalOnlineDelegates - unsigned int; Total online delegates.
  • currentBlockVerifiersMaximumAmount - unsigned int; The current amount of delegates that the system will use.
  • currentBlockVerifiersValidAmount - unsigned int; The current amount of delegates that is needed for verification.
$ curl -X GET https://api.xcash.foundation/v1/xpayment-twitter/twitter/unauthorized/stats/ -H 'Accept: application/json'
{
"mostTotalRoundsDelegateName": "europe3_xcash_foundation",
"mostTotalRounds": 121528,
"bestBlockVerifierOnlinePercentageDelegateName": "OnlyOne",
"bestBlockVerifierOnlinePercentage": 100,
"mostBlockProducerTotalRoundsDelegateName": "snakeway",
"mostBlockProducerTotalRounds": 2899,
"totalVotes": 38436931311445482,
"totalVoters": 1000,
"averageVote": 38436931311445,
"votePercentage": 57,
"roundNumber": 131677,
"totalRegisteredDelegates": 150,
"totalOnlineDelegates": 100,
"currentBlockVerifiersMaximumAmount": 50,
"currentBlockVerifiersValidAmount": 27
}

Registered Delegates

This method gets all of the registered delegates
Method: GET
Inputs: None.
Results:
Array of objects with the following structure:
  • votes - unsigned long long; Total votes in zachys (atomic units).
  • voters - unsigned int; Total voters.
  • IPAdress - string; The IP address or domain name.
  • delegateName - string; The delegate name.
  • sharedDelegate - bool;
  • seedNode - bool;
  • online - bool;
  • fee - unsigned int; The fee.
  • totalRounds - unsigned int; Total rounds.
  • totalBlockProducerRounds - unsigned int; Total block producer rounds.
  • onlinePercentage - unsigned int; The online percentage.
$ curl -X GET https://api.xcash.foundation/v1/xcash/dpops/unauthorized/delegates/registered/ -H 'Accept: application/json'
[
{
"votes": 100000000,
"voters": 10,
"IPAdress": "us1.xcash.foundation",
"delegateName": "us1_xcash_foundation",
"sharedDelegate": false,
"seedNode": true,
"online": true,
"fee": 0,
"totalRounds": 100,
"totalBlockProducerRounds": 10,
"onlinePercentage": 67
},
{
"votes": 0,
"voters": 10,
"IPAdress": "europe1.xcash.foundation",
"delegateName": "europe1_xcash_foundation",
"sharedDelegate": true,
"seedNode": false,
"online": true,
"fee": 5,
"totalRounds": 100,
"totalBlockProducerRounds": 10,
"onlinePercentage": 99
}
]

Online Delegates

This method gets all of the online delegates
Method: GET
Inputs: None.
Results:
Array of objects with the following structure:
  • votes - unsigned long long; Total votes in zachys (atomic units).
  • voters - unsigned int; Total voters.
  • IPAdress - string; The IP address or domain name.
  • delegateName - string; The delegate name.
  • sharedDelegate - bool;
  • seedNode - bool;
  • online - bool;
  • fee - unsigned int; The fee.
  • totalRounds - unsigned int; Total rounds.
  • totalBlockProducerRounds - unsigned int; Total block producer rounds.
  • onlinePercentage - unsigned int; The online percentage.
$ curl -X GET https://api.xcash.foundation/v1/xcash/dpops/unauthorized/delegates/online/ -H 'Accept: application/json'
[
{
"votes": 100000000,
"voters": 10,
"IPAdress": "us1.xcash.foundation",
"delegateName": "us1_xcash_foundation",
"sharedDelegate": false,
"seedNode": true,
"online": true,
"fee": 0,
"totalRounds": 100,
"totalBlockProducerRounds": 10,
"onlinePercentage": 67
},
{
"votes": 0,
"voters": 10,
"IPAdress": "europe1.xcash.foundation",
"delegateName": "europe1_xcash_foundation",
"sharedDelegate": true,
"seedNode": false,
"online": true,
"fee": 5,
"totalRounds": 100,
"totalBlockProducerRounds": 10,
"onlinePercentage": 99
}
]

Active Delegates

This method gets the current active delegates (top 50) during the round
Method: GET
Inputs: None.
Results:
Array of objects with the following structure:
  • votes - unsigned long long; Total votes in zachys (atomic units).
  • voters - unsigned int; Total voters.
  • IPAdress - string; The IP address or domain name.
  • delegateName - string; The delegate name.
  • sharedDelegate - bool;
  • seedNode - bool;
  • online - bool;
  • fee - unsigned int; The fee.
  • totalRounds - unsigned int; Total rounds.
  • totalBlockProducerRounds - unsigned int; Total block producer rounds.
  • onlinePercentage - unsigned int; The online percentage.
$ curl -X GET https://api.xcash.foundation/v1/xcash/dpops/unauthorized/delegates/active/ -H 'Accept: application/json'
[
{
"votes": 100000000,
"voters": 10,
"IPAdress": "us1.xcash.foundation",
"delegateName": "us1_xcash_foundation",
"sharedDelegate": false,
"seedNode": true,
"online": true,
"fee": 0,
"totalRounds": 100,
"totalBlockProducerRounds": 10,
"onlinePercentage": 67
},
{
"votes": 0,
"voters": 10,
"IPAdress": "europe1.xcash.foundation",
"delegateName": "europe1_xcash_foundation",
"sharedDelegate": true,
"seedNode": false,
"online": true,
"fee": 5,
"totalRounds": 100,
"totalBlockProducerRounds": 10,
"onlinePercentage": 99
}
]

Delegates

This method gets the delegates data
Method: GET
Resources:
  • delegateName - Required - The delegates name.
Inputs: None.
Results:
  • votes - unsigned long long; Total votes in zachys (atomic units).
  • voters - unsigned int; Total voters.
  • IPAdress - string; The IP address or domain name.
  • delegateName - string; The delegate name.
  • publicAddress - string; The public address.
  • about - string; about.
  • website - string; website.
  • team - string; team.
  • specifications - string; server Specifications.
  • sharedDelegate - bool;
  • seedNode - bool;
  • online - bool;
  • fee - unsigned int; The fee.
  • totalRounds - unsigned int; Total rounds.
  • totalBlockProducerRounds - unsigned int; Total block producer rounds.
  • onlinePercentage - unsigned int; The online percentage.
  • rank - unsigned int; The delegates current rank.
$ curl -X GET https://api.xcash.foundation/v1/xcash/dpops/unauthorized/delegates/us1_xcash_foundation/ -H 'Accept: application/json'
{
"votes": 100000000,
"voters": 10,
"IPAdress": "us1.xcash.foundation",
"delegateName": "us1_xcash_foundation",
"publicAddress": "XCA1a9usG2UKajV1Dqzp8fL1BbN3hzuaaJMYjCo7qDoC4C3Vvc5owiLAqKbVw2cRbwRqx3mgrau1Z7LkX6cxR2NC4ZmFBLe2Mf",
"about": "",
"website": "",
"team": "",
"specifications": "",
"sharedDelegate": false,
"seedNode": true,
"online": true,
"fee": 0,
"totalRounds": 100,
"totalBlockProducerRounds": 10,
"onlinePercentage": 67,
"rank": 1
}

Delegate Rounds Stats

This method gets the stats about the blocks the delegate produced
Method: GET
Resources:
  • delegateName - Required - The delegate name.
Inputs: None.
Results:
  • totalBlocksProduced - unsigned int; The total blocks produced by the delegate
  • totalBlockRewards - unsigned long long; The total xcash from the blocks produced in zachys (atomic units).
  • averagePercentage - unsigned int; The average the delegate has produced a block. (100 is average, 200 is twice as good etc etc)
  • averageTime - unsigned int; The average time (in minutes) it takes for the delegate to produce a block.
  • blocksProduced - an arrray with the following structure:
    • blockHeight - unsigned int; The block height.
    • blockReward - unsigned long long; The block reward in zachys (atomic units).
    • time - unsigned int; The time stamp.
$ curl -X GET https://api.xcash.foundation/v1/xcash/dpops/unauthorized/delegates/rounds/us1_xcash_foundation/ -H 'Accept: application/json'
{
"totalBlocksProduced": 100,
"totalBlockRewards": 1000000000,
"averagePercentage": 100,
"averageTime": 500,
"blocksProduced": [
{
"blockHeight": 810000,
"blockReward": 100000000,
"time": 1654228489
},
{
"blockHeight": 811000,
"blockReward": 100000000,
"time": 1654228489
}
]
}

Delegates Votes

This method gets the vote data for a delegate
Method: GET
Resources:
  • delegateName - Required - The delegate name.
  • start - Required - The start item to return data (0 is the first item).
  • limit - Required - The maximum amount of items to return (Maximum of 1000).
Inputs: None.
Results:
An array of objects with the following structure:
  • publicAddress - string; The public address who created the vote.
  • amount - unsigned long long; The vote amount in zachys (atomic units).
  • reserveProof - string; The reserve proof.
$ curl -X GET https://api.xcash.foundation/v1/xcash/dpops/unauthorized/delegates/votes/us1_xcash_foundation/1/2/ -H 'Accept: application/json'
[
{
"publicAddress": "XCA1a9usG2UKajV1Dqzp8fL1BbN3hzuaaJMYjCo7qDoC4C3Vvc5owiLAqKbVw2cRbwRqx3mgrau1Z7LkX6cxR2NC4ZmFBLe2Mf",
"amount": 1000000000,
"reserveProof": "ReserveProofV1"
},
{
"publicAddress": "XCA1a9usG2UKajV1Dqzp8fL1BbN3hzuaaJMYjCo7qDoC4C3Vvc5owiLAqKbVw2cRbwRqx3mgrau1Z7LkX6cxR2NC4ZmFBLe2Mf",
"amount": 1000000000,
"reserveProof": "ReserveProofV1"
}
]

Vote Details

This method gets the vote data from a specific address
Method: GET
Resources:
  • address - Required - The public address.
Inputs: None.
Results:
  • delegateName - string; The delegate name voted for.
  • amount - unsigned long long; The vote amount in zachys (atomic units).
$ curl -X GET https://api.xcash.foundation/v1/xcash/dpops/unauthorized/votes/XCA1a9usG2UKajV1Dqzp8fL1BbN3hzuaaJMYjCo7qDoC4C3Vvc5owiLAqKbVw2cRbwRqx3mgrau1Z7LkX6cxR2NC4ZmFBLe2Mf/ -H 'Accept: application/json'
{
"delegateName": "us1_xcash_foundation",
"amount": 1000000000
}

Round Details

This method gets the round details
Method: GET
Resources:
  • blockHeight - Required - The block height for the round.
Inputs: None.
Results:
An array of delegate names that verified the block
$ curl -X GET https://api.xcash.foundation/v1/xcash/dpops/unauthorized/rounds/810000/ -H 'Accept: application/json'
{
"delegates": [
"us1_xcash_foundation",
"europe1_xcash_foundation"
]
}

Last Block Producer

This method gets the last block producer
Method: GET
Inputs: None.
Results:
  • lastBlockProducer - The last block producer.
$ curl -X GET https://api.xcash.foundation/v1/xcash/dpops/unauthorized/lastBlockProducer/ -H 'Accept: application/json'
{
"lastBlockProducer": "us1_xcash_foundation"
}