OUTCOME · Create or advance
What changes
Creates or advances only the proposal resource described by this contract after authorization, validation, policy, and idempotency gates pass.
v2Governance
/api/v2/governance/proposalsPURPOSE + BUSINESS CONTEXT
WHEN THIS CALL IS USEFUL
Call this when a workspace governor, policy administrator, custody participant, or governance agent needs to apply the documented proposal transition after re-reading the current authoritative state so it can make a proposal, authority, decision, or ceremony transition under the correct quorum and policy.
OUTCOME · Create or advance
Creates or advances only the proposal resource described by this contract after authorization, validation, policy, and idempotency gates pass.
WHY IT MATTERS
ISOLATION + AUTHORITY
Tenant, workspace, proposal, voter, authority assignment, quorum, custody participant, and signing-session boundaries remain separate. A proposal, recorded decision, assigned role, or ceremony request does not by itself activate a contract, produce a threshold signature, move value, or grant publisher, matching, or trading authority.
BEFORE YOU CALL
WHAT TO DO NEXT
AGENT GUIDANCE
The exact deployed parameters, schemas, responses, security requirements, and Hybrid-Chain agent metadata are authoritative at this operation's production OpenAPI JSON Pointer. The readable tables below add integration guidance; the deployed OpenAPI controls if guidance and the machine contract ever differ.
Open the authoritative production contract ↗EXTENDED INTEGRATION GUIDANCE
Examples illustrate integration intent; the referenced OpenAPI operation and component schemas define the executable shape.
PARAMETERS
AuthorizationheaderRequiredBearer tokenCredential containing governance:propose authority.EXAMPLEBearer hc_live_…
Idempotency-KeyheaderRequiredASCII string · 1–128Caller-generated stable key reused for retries of the same logical mutation.EXAMPLEpost-api-v2-governance-proposals-request-001
X-Request-IDheaderOptionalstringOptional caller correlation identifier. The gateway emits the effective value on the response.
Content-DigestheaderRequiredstringRFC 9530 sha-256 digest of the exact transmitted request-body bytes.
Signature-InputheaderRequiredstringRFC 9421 sig1 input covering @method, @path, content-digest, content-type, and idempotency-key, with created, expires, nonce, keyid, and alg=ed25519.
SignatureheaderRequiredstringRFC 9421 sig1 Ed25519 signature made by an active key registered to the bearer client.
chainTransactionbodyOptionalobjectExact unsigned transaction; signing material is forbidden.EXAMPLE[object Object]
riskbodyRequiredGovernanceRiskDeclared policy risk. It is validated as part of the request body before any operation is attempted.Allowed: STANDARD | ELEVATEDEXAMPLErisk-01
safeIdbodyRequiredidentifierGoverned safe or application boundary. It is validated as part of the request body before any operation is attempted.EXAMPLEsafeId-01
safeNamebodyRequiredstring · max 160Human-readable authority name. It is validated as part of the request body before any operation is attempted.EXAMPLEsafeName-01
summarybodyRequiredstring · 1–1000Auditable proposal rationale. It is validated as part of the request body before any operation is attempted.EXAMPLEsummary-01
titlebodyRequiredstring · 1–160Proposal title. It is validated as part of the request body before any operation is attempted.EXAMPLEtitle-01
typebodyRequiredGovernanceProposalTypeGoverned proposal type. It is validated as part of the request body before any operation is attempted.Allowed: SAFE_DEPLOYMENT | OWNER_CHANGE | THRESHOLD_CHANGE | CONTRACT_CALLEXAMPLEtype-01
walletBindingsbodyRequiredMPC wallet identifier[] · 1–10Activated workspace MPC authorities. It is validated as part of the request body before any operation is attempted.
REQUEST
{
"chainTransaction": "example-chaintransaction",
"risk": "STANDARD",
"safeId": "example-safeid",
"safeName": "example-safename",
"summary": "example-summary",
"title": "example-title",
"type": "SAFE_DEPLOYMENT",
"walletBindings": [
"example-walletbinding"
]
}RESPONSES
{
"proposal": "example-proposal"
}{
"code": "invalid_credentials",
"message": "the supplied Hybrid credential is invalid"
}invalid_credentials{
"code": "invalid_credentials",
"message": "the supplied Hybrid credential is invalid"
}invalid_credentials{
"code": "invalid_credentials",
"message": "the supplied Hybrid credential is invalid"
}invalid_credentials{
"code": "invalid_credentials",
"message": "the supplied Hybrid credential is invalid"
}invalid_credentials{
"code": "invalid_credentials",
"message": "the supplied Hybrid credential is invalid"
}invalid_credentials{
"code": "invalid_credentials",
"message": "the supplied Hybrid credential is invalid"
}invalid_credentialsOPERATIONAL NOTES
This route is implemented in canonical gateway source and appears in the production OpenAPI snapshot observed 2026-09-11T06:35:11.572Z. Authentication, tenant, feature, venue, and market policy still apply.
Verify the exact production OpenAPI operation ↗Return to the V2 directory ↗