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": 18686
}