create_draft_proposal

@mount("proposals.external.create_draft_proposal") operation create_draft_proposal(title: text, category: text, duration: integer, description: text, options: list<option_spec>, vote_requirements: vote_requirements_struct)

Creates a draft proposal and initializes voting requirements.

Parameters

title
  • The title of the draft proposal.

category
  • The category under which the proposal falls.

duration
  • The duration (timestamp) for which the proposal will be active.

description
  • A detailed description of the proposal.

options
  • A list of options available for voting on the proposal.

vote_requirements
  • The requirements for voting on the proposal.

Throws

UnauthorizedError
  • If the citizen does not have the necessary privileges.

ProposalValidationError
  • If any of the provided parameters are invalid.

CooldownError
  • If the citizen is subject to a cooldown period for submitting draft proposals.