DAPI Endpoints#

DAPI currently provides 2 types of endpoints: JSON-RPC and gRPC. The JSON-RPC endpoints expose some layer 1 information while the gRPC endpoints support layer 2 as well as streaming of events related to blocks and transactions/transitions.

JSON-RPC Endpoints#

Layer

Endpoint

Description

1

getBestBlockHash

Returns block hash of the chaintip

1

getBlockHash

Returns block hash of the requested block

1

getMnListDiff

Replaced by subscribeToMasternodeList in Dash Platform v1.0.0

gRPC Endpoints#

Core gRPC Service#

Layer

Endpoint

1

broadcastTransaction

Broadcasts the provided transaction

1

getBestBlockHeight

Added in Dash Platform v1.0.0
Return the best block height

1

getBlock

Disabled in Dash Platform v1.0.0
Returns information for the requested block

1

getBlockchainStatus

Added in Dash Platform v1.0.0
Returns blockchain status information

1

getMasternodeStatus

Disabled in Dash Platform v1.0.0
Returns masternode status information

1

getStatus

Deprecated in Dash Platform v1.0.0
Split into getBlockchainStatus and getMasternodeStatus.
Returns blockchain status information

1

getTransaction

Returns details for the requested transaction

1

subscribeTo BlockHeadersWithChainLocks

Returns the requested block headers along with the associated ChainLocks.

1

subscribeToMasternodeList

Added in Dash Platform v1.0.0
Returns the full masternode list from the genesis block to the chain tip as the first message and provides update messages with every new block

1

subscribeTo TransactionsWithProofs

Returns transactions matching the provided bloom filter along with the associated islock message and merkle block

Platform gRPC Service#

In addition to providing the request data, the following endpoints can also provide proofs that the data returned is valid and complete. The endpoints are versioned so updates can be made to them without introducing issues for endpoint consumers.

Layer

Endpoint

2

broadcastStateTransition

Broadcasts the provided State Transition

2

getContestedResources

Added in Dash Platform v1.0.0
Retrieves the contested resources for a specific contract, document type, and index.

2

getContestedResourceIdentityVotes

Added in Dash Platform v1.0.0
Retrieves the voting record of a specific identity.

2

getContestedResourceVotersForIdentity

Added in Dash Platform v1.0.0
Retrieves the voters for a specific identity associated with a contested resource.

2

getContestedResourceVoteState

Added in Dash Platform v1.0.0
Retrieves the state of a vote for a specific contested resource.

2

getCurrentQuorumsInfo

Added in Dash Platform v1.4.0
Retrieves current quorum details, including validator sets and metadata for each quorum.

2

getEvonodesProposedEpochBlocksByIds

Added in Dash Platform v1.3.0
Retrieves the number of blocks proposed by the specified evonodes in a certain epoch, based on their IDs

2

getEvonodesProposedEpochBlocksByRange

Added in Dash Platform v1.3.0
Retrieves the number of blocks proposed by evonodes for a specified epoch

2

getIdentity

Returns the requested identity

2

getIdentityBalance

Returns the requested identity’s balance

2

getIdentityBalanceAndRevision

Returns the requested identity’s balance and revision

2

getIdentityByPublicKeyHash

Returns the identity associated with the provided public key hash

2

getIdentityContractNonce

Returns the identity contract nonce

2

getIdentityKeys

Returns the requested identity keys

2

getIdentityNonce

Returns the current identity nonce

2

getIdentities

Removed in Dash Platform v1.0.0
Returns the requested identities

2

getIdentitiesBalances

Added in Dash Platform v1.3.0
Retrieves the balances for a list of identities

2

getIdentitiesContractKeys

Added in Dash Platform v1.0.0
Returns keys associated to a specific contract for multiple Identities

2

getIdentitiesByPublicKeyHashes

Removed in Dash Platform v1.0.0
Returns the identities associated with the provided public key hashes

2

getDataContract

Returns the requested data contract

2

getDataContracts

Returns the requested data contracts

2

getDataContractHistory

Returns the requested data contract history

2

getDocuments

Returns the requested document(s)

2

getEpochsInfo

Returns information about the requested epoch(s)

2

getPathElements

Added in Dash Platform v1.0.0
Returns elements for a specified path in the Platform

2

getPrefundedSpecializedBalance

Added in Dash Platform v1.0.0
Returns the pre-funded specialized balance for a specific identity

2

getProofs

Disabled for external use in Dash Platform v1.0.0
Returns proof information for the requested identities, contracts, and/or document(s)

2

getProtocolVersionUpgradeState

Returns the number of votes cast for each protocol version

2

getProtocolVersionUpgradeVoteStatus

Returns protocol version upgrade status

2

getStatus

Added in Dash Platform v1.2.0
Retrieves status information related to Dash Platform

2

getTotalCreditsInPlatform

Added in Dash Platform v1.1.0
Retrieves the total credits in the platform

2

getVotePollsByEndDate

Retrieves vote polls that will end within a specified date range

2

waitForStateTransitionResult

Responds with the state transition hash and either a proof that the state transition was confirmed in a block or an error

Note

The previous version of documentation can be viewed here.