concierge.v1.GovernanceService

CancelUserProposal

Withdraw a user proposal the caller opened, while it is still OPEN.

post/concierge.v1.GovernanceService/CancelUserProposal

Request

  • The document declares no server URL.
  • Auth: none required

Headers

Connect-Protocol-Version1 required

Define the version of the Connect protocol

Connect-Timeout-Msnumber

Define the timeout, in ms

Request body

proposal_idstring

Response

Success

idstring
kind'USER_PROPOSAL_KIND_UNSPECIFIED' | 'USER_PROPOSAL_KIND_SUSPENSION' | 'USER_PROPOSAL_KIND_REINSTATEMENT' | 'USER_PROPOSAL_KIND_ADMIN_ADMISSION'

What a UserProposal decides. Three kinds share one message because all three are the same question — "do the owners agree to change this person's standing?" — differing only in what the verdict writes.

state'USER_PROPOSAL_STATE_UNSPECIFIED' | 'USER_PROPOSAL_STATE_OPEN' | 'USER_PROPOSAL_STATE_EXECUTED' | 'USER_PROPOSAL_STATE_REJECTED' | 'USER_PROPOSAL_STATE_EXPIRED' | 'USER_PROPOSAL_STATE_CANCELLED' | 'USER_PROPOSAL_STATE_VOID'

The six states, again as their own enum: proto enum VALUES share one namespace per package, so the identical states have to be spelled three times even though the domain models them with one type.

subject_user_idstring

Any user — NOT necessarily an owner. That is the difference from OwnerAdmission, and the reason none of its roster checks have an analogue here.

subject_emailstring
initiator_user_idstring
initiator_emailstring
reasonstring

Why, in the initiator's words. Required, and shown to every voter.

owner_countinteger

Owners at open. The initiator is counted but does not vote.

thresholdinteger

How many of peers must vote FOR, frozen at open — so a surface shows the bar this proposal is actually measured against, not one re-derived from a roster that moved.

void_reasonstring

Changes

No recorded changes to this operation across all 1 revision of this API.