full diff

app.bulleted.admin.deny

From
bafyreidvqavamumc6vj5m3g3ogifwandi7hppkb5cjpaqcunszz4h7kgmu indexed 2026-08-06 10:44 UTC View this version
To
bafyreidvqavamumc6vj5m3g3ogifwandi7hppkb5cjpaqcunszz4h7kgmu indexed 2026-08-06 10:44 UTC View this version

Compatibility

backward compatible No changes detected.

Changes

11{
22 "$type": "com.atproto.lexicon.schema",
33 "defs": {
44 "main": {
55 "description": "Add a value to the appview's denylist and, by default, remove what it has already indexed. Requires the administrative credential. Adding to the list stops future indexing; nuking removes what is already there, which is why nuke defaults to true.",
66 "errors": [
77 {
88 "description": "The value is not a DID, an AT-URI, an http(s) endpoint, or a canonical CIDv1.",
99 "name": "UnknownKind"
1010 },
1111 {
1212 "description": "No administrative credential is configured, so the administrative surface does not exist.",
1313 "name": "AdminDisabled"
1414 }
1515 ],
1616 "input": {
1717 "encoding": "application/json",
1818 "schema": {
1919 "properties": {
2020 "comment": {
2121 "description": "Free-text moderation note. Not the audit field: who performed the action is taken from the administrative credential and recorded separately, because a moderation log has to answer 'who removed this and when' as a queryable field rather than as a convention about comment text.",
2222 "maxLength": 2048,
2323 "type": "string"
2424 },
2525 "nuke": {
2626 "default": true,
2727 "description": "Remove what is already indexed. True by default and the reason this endpoint exists: adding to the list only stops future indexing. Pass false to pre-emptively block something that has not been indexed yet.",
2828 "type": "boolean"
2929 },
3030 "value": {
3131 "description": "What to deny. The kind is DERIVED from this value and is never supplied by the caller: did: is a repository, at:// is one record, http:// or https:// is a PDS endpoint, and a canonical CIDv1 is a blob. A value matching none of the four is a 400 rather than a guess.",
3232 "maxLength": 2048,
3333 "type": "string"
3434 }
3535 },
3636 "required": [
3737 "value"
3838 ],
3939 "type": "object"
4040 }
4141 },
4242 "output": {
4343 "encoding": "application/json",
4444 "schema": {
4545 "properties": {
4646 "blobs": {
4747 "description": "Cached blob files removed.",
4848 "type": "integer"
4949 },
5050 "kind": {
5151 "description": "The kind derived from the value.",
5252 "knownValues": [
5353 "did",
5454 "aturi",
5555 "pds",
5656 "cid"
5757 ],
5858 "type": "string"
5959 },
6060 "nuked": {
6161 "description": "Rows removed from the appview. Zero when nuke was false.",
6262 "type": "integer"
6363 },
6464 "repos": {
6565 "description": "Repositories emptied. One for a did nuke; zero or more for a pds nuke.",
6666 "type": "integer"
6767 },
6868 "value": {
6969 "description": "The value as stored. A PDS endpoint is normalized to one spelling, so this may differ from the input.",
7070 "type": "string"
7171 }
7272 },
7373 "required": [
7474 "value",
7575 "kind",
7676 "nuked"
7777 ],
7878 "type": "object"
7979 }
8080 },
8181 "type": "procedure"
8282 }
8383 },
8484 "id": "app.bulleted.admin.deny",
8585 "lexicon": 1
8686}