{
"id": "app.tempomusic.staff.disableInviteCodes",
"defs": {
"main": {
"type": "procedure",
"input": {
"schema": {
"type": "object",
"required": [
"codes"
],
"properties": {
"codes": {
"type": "array",
"items": {
"type": "string",
"maxLength": 128
},
"minLength": 1,
"description": "Suffix-only invite codes to disable. The env prefix is re-prepended by the handler before the PDS call."
}
}
},
"encoding": "application/json"
},
"errors": [
{
"name": "Forbidden",
"description": "The caller is not a super-admin."
},
{
"name": "InvalidRequest",
"description": "`codes` is empty."
},
{
"name": "PdsUnavailable",
"description": "The PDS returned a transient failure — nothing is audited locally, retry."
}
],
"output": {
"schema": {
"type": "object",
"properties": {}
},
"encoding": "application/json"
},
"description": "Disable one or more PDS invite codes (TEM-502). Requires the caller to have the `superAdmin` role. Codes are provided as suffix-only strings; the handler re-prepends the env prefix stored under `APPVIEW_PDS_INVITE_CODE_PREFIX` before calling `com.atproto.admin.disableInviteCodes`. On success, writes one `inviteCodeDisabled` audit row per code (payload = SHA-256 hash of the suffix, never the plain code)."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}