app.bulleted.admin.deny

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.

Details · procedure
Kindprocedure
Authorityadmin.bulleted.app
Indexed

Procedure

procedure · POST

Input

application/json

comment

string

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.

  • maxLength: 2048

nuke

boolean

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.

  • default: true

value

requiredstring

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.

  • maxLength: 2048

Output

application/json

blobs

integer

Cached blob files removed.

kind

requiredstring

The kind derived from the value.

  • knownValues: did | aturi | pds | cid

nuked

requiredinteger

Rows removed from the appview. Zero when nuke was false.

repos

integer

Repositories emptied. One for a did nuke; zero or more for a pds nuke.

value

requiredstring

The value as stored. A PDS endpoint is normalized to one spelling, so this may differ from the input.

Errors

UnknownKind

The value is not a DID, an AT-URI, an http(s) endpoint, or a canonical CIDv1.

AdminDisabled

No administrative credential is configured, so the administrative surface does not exist.

Similar lexicons

semantic match

Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.

  • Remove a value from the appview's denylist and rebuild the membership filter. Requires the administrative credential. A denylist with no removal path means one mistyped DID is permanent. Undeny does NOT restore rows a nuke removed; the restoration field says what brings the content back, if anything does.

  • Page through the appview's denylist, newest first. Requires the administrative credential. You cannot operate a list you cannot read: without this, the only way to audit a takedown is to open the database.

  • Deny a subject. It stops serving within one broadcast, whether it is reached through a site, a tile, or a parameter. Denying a space stops every domain registered to it.