pub.chive.governance.getProposal

chive.pub

Documentation

Get a single governance proposal by ID with full enrichment

main query

Get a single governance proposal by ID with full enrichment

Parameters

proposalId string Required

Proposal identifier

Output

Encodingapplication/json

Errors

NotFound
Try It

Requests are sent directly from your browser. Some servers may block requests due to CORS.

Base URL for XRPC calls (e.g., https://api.bsky.social)
Parameters
Proposal identifier
View raw schema
{
  "type": "query",
  "errors": [
    {
      "name": "NotFound"
    }
  ],
  "output": {
    "schema": {
      "ref": "#proposalView",
      "type": "ref"
    },
    "encoding": "application/json"
  },
  "parameters": {
    "type": "params",
    "required": [
      "proposalId"
    ],
    "properties": {
      "proposalId": {
        "type": "string",
        "description": "Proposal identifier"
      }
    }
  },
  "description": "Get a single governance proposal by ID with full enrichment"
}
consensusProgress object

No description available.

Properties

approvalPercentage integer Required

Current approval percentage (0-100)

minimum: 0maximum: 100
consensusReached boolean Required

Whether consensus has been reached

minimumVotes integer Required

Minimum votes required

minimum: 0
recommendedStatus string Required

Recommended status based on votes

Known values: approved, rejected, pending
threshold integer Required

Required threshold for approval (0-100)

minimum: 0maximum: 100
voterCount integer Required

Number of voters

minimum: 0
View raw schema
{
  "type": "object",
  "required": [
    "approvalPercentage",
    "threshold",
    "voterCount",
    "minimumVotes",
    "consensusReached",
    "recommendedStatus"
  ],
  "properties": {
    "threshold": {
      "type": "integer",
      "maximum": 100,
      "minimum": 0,
      "description": "Required threshold for approval (0-100)"
    },
    "voterCount": {
      "type": "integer",
      "minimum": 0,
      "description": "Number of voters"
    },
    "minimumVotes": {
      "type": "integer",
      "minimum": 0,
      "description": "Minimum votes required"
    },
    "consensusReached": {
      "type": "boolean",
      "description": "Whether consensus has been reached"
    },
    "recommendedStatus": {
      "type": "string",
      "description": "Recommended status based on votes",
      "knownValues": [
        "approved",
        "rejected",
        "pending"
      ]
    },
    "approvalPercentage": {
      "type": "integer",
      "maximum": 100,
      "minimum": 0,
      "description": "Current approval percentage (0-100)"
    }
  }
}
externalId object

No description available.

Properties

identifier string Required

Identifier in external system

matchType string Optional

Match type

Known values: exact, close, broader, narrower, related
system string Required

External system name

uri string uri Optional

URI in external system

View raw schema
{
  "type": "object",
  "required": [
    "system",
    "identifier"
  ],
  "properties": {
    "uri": {
      "type": "string",
      "format": "uri",
      "description": "URI in external system"
    },
    "system": {
      "type": "string",
      "description": "External system name"
    },
    "matchType": {
      "type": "string",
      "description": "Match type",
      "knownValues": [
        "exact",
        "close",
        "broader",
        "narrower",
        "related"
      ]
    },
    "identifier": {
      "type": "string",
      "description": "Identifier in external system"
    }
  }
}
proposalChanges object

Proposed changes to a node

Properties

alternateLabels array of string Optional

Alternate labels

description string Optional

Node description

externalIds array of ref#externalId Optional

External identifiers

kind string Optional

Node kind

Known values: type, object
label string Optional

Node label

mergeIntoUri string at-uri Optional

Merge target URI

metadata unknown Optional

Additional metadata

subkind string Optional

Node subkind

targetUri string at-uri Optional

Target URI for update/deprecate

View raw schema
{
  "type": "object",
  "properties": {
    "kind": {
      "type": "string",
      "description": "Node kind",
      "knownValues": [
        "type",
        "object"
      ]
    },
    "label": {
      "type": "string",
      "description": "Node label"
    },
    "subkind": {
      "type": "string",
      "description": "Node subkind"
    },
    "metadata": {
      "type": "unknown",
      "description": "Additional metadata"
    },
    "targetUri": {
      "type": "string",
      "format": "at-uri",
      "description": "Target URI for update/deprecate"
    },
    "description": {
      "type": "string",
      "description": "Node description"
    },
    "externalIds": {
      "type": "array",
      "items": {
        "ref": "#externalId",
        "type": "ref"
      },
      "description": "External identifiers"
    },
    "mergeIntoUri": {
      "type": "string",
      "format": "at-uri",
      "description": "Merge target URI"
    },
    "alternateLabels": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Alternate labels"
    }
  },
  "description": "Proposed changes to a node"
}
proposalView object

View of a governance proposal

Properties

cid string Required

Content identifier

createdAt string datetime Required

Creation timestamp

expiresAt string datetime Optional

Expiration timestamp

id string Required

Proposal identifier

label string Optional

Node label (from target node or proposed changes)

nodeUri string at-uri Optional

Target node URI (for update/merge/deprecate)

proposedBy string did Required

DID of the proposer

proposerName string Optional

Display name of the proposer

rationale string Optional

Rationale for the proposal

status string Required

Current proposal status

Known values: pending, approved, rejected, expired
type string Required

Proposal type

Known values: create, update, merge, deprecate
updatedAt string datetime Optional

Last update timestamp

uri string at-uri Required

Proposal AT-URI

votes ref #voteCounts Required

No description available.

View raw schema
{
  "type": "object",
  "required": [
    "id",
    "uri",
    "cid",
    "type",
    "changes",
    "status",
    "proposedBy",
    "votes",
    "consensus",
    "createdAt"
  ],
  "properties": {
    "id": {
      "type": "string",
      "description": "Proposal identifier"
    },
    "cid": {
      "type": "string",
      "description": "Content identifier"
    },
    "uri": {
      "type": "string",
      "format": "at-uri",
      "description": "Proposal AT-URI"
    },
    "type": {
      "type": "string",
      "description": "Proposal type",
      "knownValues": [
        "create",
        "update",
        "merge",
        "deprecate"
      ]
    },
    "label": {
      "type": "string",
      "description": "Node label (from target node or proposed changes)"
    },
    "votes": {
      "ref": "#voteCounts",
      "type": "ref"
    },
    "status": {
      "type": "string",
      "description": "Current proposal status",
      "knownValues": [
        "pending",
        "approved",
        "rejected",
        "expired"
      ]
    },
    "changes": {
      "ref": "#proposalChanges",
      "type": "ref",
      "description": "Proposed changes"
    },
    "nodeUri": {
      "type": "string",
      "format": "at-uri",
      "description": "Target node URI (for update/merge/deprecate)"
    },
    "consensus": {
      "ref": "#consensusProgress",
      "type": "ref"
    },
    "createdAt": {
      "type": "string",
      "format": "datetime",
      "description": "Creation timestamp"
    },
    "expiresAt": {
      "type": "string",
      "format": "datetime",
      "description": "Expiration timestamp"
    },
    "rationale": {
      "type": "string",
      "description": "Rationale for the proposal"
    },
    "updatedAt": {
      "type": "string",
      "format": "datetime",
      "description": "Last update timestamp"
    },
    "proposedBy": {
      "type": "string",
      "format": "did",
      "description": "DID of the proposer"
    },
    "proposerName": {
      "type": "string",
      "description": "Display name of the proposer"
    }
  },
  "description": "View of a governance proposal"
}
voteCounts object

No description available.

Properties

abstain integer Required

Number of abstain votes

minimum: 0
approve integer Required

Number of approve votes

minimum: 0
reject integer Required

Number of reject votes

minimum: 0
View raw schema
{
  "type": "object",
  "required": [
    "approve",
    "reject",
    "abstain"
  ],
  "properties": {
    "reject": {
      "type": "integer",
      "minimum": 0,
      "description": "Number of reject votes"
    },
    "abstain": {
      "type": "integer",
      "minimum": 0,
      "description": "Number of abstain votes"
    },
    "approve": {
      "type": "integer",
      "minimum": 0,
      "description": "Number of approve votes"
    }
  }
}

Lexicon Garden

@