Voting on proposals
Intermediate
Tutorial
Overview
Since version | 1.7.0 |
Idempotent? | Yes |
Minimal access level | hotkey |
This section will show you how to use Rosetta to vote on existing proposals.
Fetch existing proposals
First you will need to know which proposals currenty exist on the NNS. You can read up on how to do this here. If you already know the proposal id you want to vote on you can also fetch the information about the proposal to check that what your are voting on is what you expected.
Vote on a proposal
In this tutorial you will be voting on the proposal with the proposal id 12
.
You also have to decide on what to vote, meaning:
- Register a vote, but neither vote for nor against the proposal: 0
- Vote for the proposal to be adopted: 1
- Vote for the proposal to be rejected: 2
In this case, you will be voting against the proposal.
An example call for the construction/payloads
endpoint resembles the following:
curl --location '0.0.0.0:8081/construction/payloads' --header 'Content-Type: application/json' --data '{
"network_identifier": {
"blockchain": "Internet Computer",
"network": "00000000000000020101"
},
"public_keys": [
{
"hex_bytes": "047a83e378053f87b49aeae53b3ed274c8b2ffbe59d9a51e3c4d850ca8ac1684f7131b778317c0db04de661c7d08321d60c0507868af41fe3150d21b3c6c757367",
"curve_type": "secp256k1"
}
],
"operations": [
{
"operation_identifier": {
"index": 0
},
"type": "REGISTER_VOTE",
"account": {
"address": "8b84c3a3529d02a9decb5b1a27e7c8d886e17e07ea0a538269697ef09c2a27b4"
},
"metadata": {
"neuron_index": 1,
"proposal": 12,
"vote": 2
}
}
],
"metadata": null
}'