{
"id": "app.tempomusic.moderation.defs",
"defs": {
"reasonType": {
"type": "string",
"maxLength": 100,
"description": "Canonical taxonomy of report reasons. Closed enum: clients must not submit values outside this list. `copyright` and `impersonation` lead because Tempo is a music platform where DMCA traffic dominates.",
"knownValues": [
"copyright",
"impersonation",
"spam",
"harassment",
"sexual",
"violence",
"selfHarm",
"misinformation",
"other"
]
},
"postSubject": {
"type": "object",
"required": [
"uri",
"cid"
],
"properties": {
"cid": {
"type": "string",
"format": "cid",
"description": "CID of the post version observed by the reporter at intake."
},
"uri": {
"type": "string",
"format": "at-uri",
"description": "AT-URI of the reported post, e.g. at://did:plc:xxx/app.tempomusic.feed.post/yyy."
}
},
"description": "Report subject identifying a single post record. Both uri and cid are captured at intake; the cid is the historical version of the post observed by the reporter and may differ from the live cid if the post was later edited."
},
"replySubject": {
"type": "object",
"required": [
"uri",
"cid"
],
"properties": {
"cid": {
"type": "string",
"format": "cid",
"description": "CID of the reply version observed by the reporter at intake."
},
"uri": {
"type": "string",
"format": "at-uri",
"description": "AT-URI of the reported reply, e.g. at://did:plc:xxx/app.tempomusic.feed.reply/yyy."
}
},
"description": "Report subject identifying a single reply record."
},
"accountSubject": {
"type": "object",
"required": [
"did"
],
"properties": {
"did": {
"type": "string",
"format": "did",
"description": "DID of the reported actor."
}
},
"description": "Report subject identifying an actor account."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}