Voting
Overview
If you have staked ASTRO into the Staking contract, you may be eligible to vote on proposals. Staking must have occured before the submission of the proposal you are voting on.
Additionally, proposal submitters cannot vote on their own proposal.
Casting a Vote
cast_vote
To vote on a proposal, you need to execute a contract message pointing to the cast_vote endpoint in the Assembly contract.
cast_vote takes in the proposal_id and the vote option (for or against)
_6{_6  "cast_vote": {_6    "proposal_id": 92,_6    "vote": "for"_6  }_6}
feather.js example
The code in this section is an example implementation of a cast_vote message using feather.js.
_24const assemblyAddress = 'terra195m6n5xq4rkjy47fn5y3s08tfmj3ryknj55jqvgq2y55zul9myzsgy06hk';_24_24const vote = new MsgExecuteContract(_24  wallet.key.accAddress('terra'),_24  assemblyAddress,_24  {_24    "cast_vote": {_24      "proposal_id": 92,_24      "vote": "for"_24    }_24  }_24)_24_24let fee = new Fee(2000000, { uluna: 100000 });_24_24let tx = await wallet.createAndSignTx({_24  msgs: [vote],_24  fee,_24  chainID: 'pisco-1',_24});_24_24let result = await lcd.tx.broadcast(tx, 'pisco-1');_24_24console.log(result);
cast_vote
To vote on a proposal, you need to execute a contract message pointing to the cast_vote endpoint in the Assembly contract.
cast_vote takes in the proposal_id and the vote option (for or against)
feather.js example
The code in this section is an example implementation of a cast_vote message using feather.js.
_6{_6  "cast_vote": {_6    "proposal_id": 92,_6    "vote": "for"_6  }_6}