Skip to main content
Version: 2.0.0

Vocdoni API

The Vocdoni API is a REST API that substitutes the previous RPCs in order to make it easier for developers/integrators to build on top of the voting protocol. This API facilitates creating votings using Vocdoni, without the hassle of learning a complex blockchain platform, allowing to perform all the features that enable the voting protocol such as creating an account, entity, voting process, census & vote, abstracting as much as possible the complexity and offering simple and straightforward methods to perform those actions.

You can review the API endpoints documentation in this section, the main entities are:

  • Chain: The Vocdoni blockchain is named Vochain. It is a Byzantine fault-tolerant network based on Tendermint that executes the Vocdoni Protocol logic represented as a state machine. Its main purpose is to register votes in a decentralized and verifiable format. In those endpoints, you can consult the state of the chain, transactions costs, list organizations and get more Vochain info.
  • Accounts: Identified by an Ethereum like address. An account can create and manage elections, transfer tokens, give power to other accounts on his behalf (delegates) and manage its metadata.
  • Elections: Is a rule-set of options and requirements for creating a process in which people vote a series of options. To know more about the params of an election and its lifecycle go here. In this section you will find all information related to an election as its information, election keys, submitted votes & how to create a new election.
  • Censuses: The census is a key component of any voting process. It specifies the set of users (identified by a public key or address) eligible for participating in an election. To understand more about the Censuses you can check here. Here you will be able to get censuses information like the Merkle root, total weight & size, import/export the censuses and create new ones.
  • Votes: All the information related to the vote issued by a participant in a vote, you can check the validity of the vote, consult your information and send a vote.
  • SIK: The Secret Identity Key is a user-generated piece of information that proves the user's identity without revealing it. It is the hash of the user's address, the signature of a public message and an optional secret part. It is used to ensure anonymous voting. All registered accounts or anonymous voters must register a SIK, and they are all stored in a Merkle tree. The /siks endpoints help to generate a proof of membership, get the current valid SIK roots, or check if an account has a valid SIK.

Errors

Backend error messages list are defined here: https://github.com/vocdoni/vocdoni-node/blob/master/api/errors.go

About the 204 no content error: this message will be returned only if the asset being queried cannot be found but no other errors have occurred. This response is commonly used to prevent Javascript errors that may arise when a client is waiting for a transaction to be published. During this waiting period, the client can repeatedly query the endpoint until a successful response with a status code of 200 is received, thereby avoiding any errors that may occur due to the transaction not being published yet.

Authentication

Security Scheme Type:http
HTTP Authorization Scheme:basic
Bearer format:

Resources

Guides
Soon

Tutorials
Soon

Copyright © 2024 Vocdoni, Inc. All rights reserved.