{
"id": "social.pmsky.proposal",
"defs": {
"main": {
"key": "tid",
"type": "record",
"record": {
"type": "object",
"required": [
"typ",
"src",
"uri",
"val",
"cts"
],
"properties": {
"aid": {
"type": "string",
"description": "The persistent, anonymous identifier for the user creating the proposal."
},
"cid": {
"type": "string",
"format": "cid",
"description": "Optionally, CID specifying the specific version of 'uri' resource this proposal applies to."
},
"cts": {
"type": "string",
"format": "datetime",
"description": "Timestamp when this proposal was created."
},
"sig": {
"type": "bytes",
"description": "Signature of dag-cbor encoded proposal."
},
"src": {
"type": "string",
"format": "did",
"description": "DID of the actor who created this proposal."
},
"typ": {
"type": "string",
"description": "The type of moderation action being proposed. Currently expected values are 'allowed_user' or 'label'"
},
"uri": {
"type": "string",
"format": "uri",
"description": "AT URI of the record, repository (account), or other resource that this proposal applies to."
},
"val": {
"type": "string",
"maxLength": 128,
"description": "For 'label' proposals, the short string name of the value of the proposed label."
},
"ver": {
"type": "integer",
"description": "The AT Protocol version of the proposal object."
},
"note": {
"type": "string",
"description": "For 'label' proposals where 'val' is 'needs-context', the full text of any proposed annotation (e.g. community note) to be shown below the post."
},
"reasons": {
"type": "array",
"items": {
"type": "string"
},
"description": "An optional array of predefined reasons justifying the moderation action."
}
},
"description": "A proposed moderation action (e.g. adding a label or annotation to a post). Refers to some other resource via URI (e.g. an atproto post). Superset of 'com.atproto.proposal.defs#label."
}
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}