{
"id": "app.tempomusic.staff.listReports",
"defs": {
"main": {
"type": "query",
"errors": [
{
"name": "Forbidden",
"description": "Caller is not an active moderator."
},
{
"name": "InvalidCursor",
"description": "The cursor parameter was malformed or referenced state inconsistent with the rest of the filter set."
}
],
"output": {
"schema": {
"type": "object",
"required": [
"items"
],
"properties": {
"items": {
"type": "array",
"items": {
"ref": "app.tempomusic.staff.defs#reportView",
"type": "ref"
}
},
"cursor": {
"type": "string",
"maxLength": 1024
}
}
},
"encoding": "application/json"
},
"parameters": {
"type": "params",
"properties": {
"limit": {
"type": "integer",
"default": 50,
"maximum": 100,
"minimum": 1
},
"cursor": {
"type": "string",
"maxLength": 1024,
"description": "Opaque pagination cursor returned by a previous call."
},
"status": {
"type": "string",
"maxLength": 100,
"description": "Filter reports to a single status. Wire values of app.tempomusic.staff.defs#reportStatus, inlined because lexicon `params` cannot use `ref`. Omit to return all statuses.",
"knownValues": [
"open",
"underReview",
"actioned",
"dismissed"
]
},
"reasonType": {
"type": "string",
"maxLength": 100,
"description": "Wire values of app.tempomusic.moderation.defs#reasonType, inlined because lexicon `params` cannot use `ref`.",
"knownValues": [
"copyright",
"impersonation",
"spam",
"harassment",
"sexual",
"violence",
"selfHarm",
"misinformation",
"other"
]
},
"subjectDid": {
"type": "string",
"format": "did",
"description": "Filter to reports against this actor DID, via the reports.subject_did denormalization: matches both account-subject reports targeting this DID AND post/reply-subject reports against content authored by this DID."
},
"subjectUri": {
"type": "string",
"format": "at-uri",
"description": "Filter to reports filed against this exact post/reply at-uri (reports.subject_uri). Complements subjectDid for the report-detail cross-link: every report on the same subject."
},
"reporterDid": {
"type": "string",
"format": "did"
},
"subjectType": {
"type": "string",
"maxLength": 100,
"description": "Filter to a single subject type.",
"knownValues": [
"post",
"reply",
"account"
]
},
"createdAfter": {
"type": "string",
"format": "datetime"
},
"createdBefore": {
"type": "string",
"format": "datetime"
}
}
},
"description": "Cursored listing of moderation reports for the queue view. Filterable by status, subject type, reason, reporter, and subject author. Sorted by (created_at DESC, id DESC). Requires the caller to be an active moderator (any role)."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}