app.tempomusic.staff.listReports
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).
Details · query
| Kind | query |
|---|---|
| Authority | staff.tempomusic.app |
| Indexed |
Checks
Valid Lint pass{
"$type": "com.atproto.lexicon.schema",
"defs": {
"main": {
"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).",
"errors": [
{
"description": "Caller is not an active moderator.",
"name": "Forbidden"
},
{
"description": "The cursor parameter was malformed or referenced state inconsistent with the rest of the filter set.",
"name": "InvalidCursor"
}
],
"output": {
"encoding": "application/json",
"schema": {
"properties": {
"cursor": {
"maxLength": 1024,
"type": "string"
},
"items": {
"items": {
"ref": "app.tempomusic.staff.defs#reportView",
"type": "ref"
},
"type": "array"
}
},
"required": [
"items"
],
"type": "object"
}
},
"parameters": {
"properties": {
"createdAfter": {
"format": "datetime",
"type": "string"
},
"createdBefore": {
"format": "datetime",
"type": "string"
},
"cursor": {
"description": "Opaque pagination cursor returned by a previous call.",
"maxLength": 1024,
"type": "string"
},
"limit": {
"default": 50,
"maximum": 100,
"minimum": 1,
"type": "integer"
},
"reasonType": {
"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"
],
"maxLength": 100,
"type": "string"
},
"reporterDid": {
"format": "did",
"type": "string"
},
"status": {
"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"
],
"maxLength": 100,
"type": "string"
},
"subjectDid": {
"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.",
"format": "did",
"type": "string"
},
"subjectType": {
"description": "Filter to a single subject type.",
"knownValues": [
"post",
"reply",
"account"
],
"maxLength": 100,
"type": "string"
},
"subjectUri": {
"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.",
"format": "at-uri",
"type": "string"
}
},
"type": "params"
},
"type": "query"
}
},
"id": "app.tempomusic.staff.listReports",
"lexicon": 1
}