{
"id": "place.stream.moderation.createBlock",
"defs": {
"main": {
"type": "procedure",
"input": {
"schema": {
"type": "object",
"required": [
"streamer",
"subject"
],
"properties": {
"reason": {
"type": "string",
"maxLength": 300,
"description": "Optional reason for the block."
},
"subject": {
"type": "string",
"format": "did",
"description": "The DID of the user being blocked from chat."
},
"streamer": {
"type": "string",
"format": "did",
"description": "The DID of the streamer whose chat this block applies to."
}
}
},
"encoding": "application/json"
},
"errors": [
{
"name": "Unauthorized",
"description": "The request lacks valid authentication credentials."
},
{
"name": "Forbidden",
"description": "The caller does not have permission to create blocks for this streamer."
},
{
"name": "SessionNotFound",
"description": "The streamer's OAuth session could not be found or is invalid."
}
],
"output": {
"schema": {
"type": "object",
"required": [
"uri",
"cid"
],
"properties": {
"cid": {
"type": "string",
"format": "cid",
"description": "The CID of the created block record."
},
"uri": {
"type": "string",
"format": "at-uri",
"description": "The AT-URI of the created block record."
}
}
},
"encoding": "application/json"
},
"parameters": null,
"description": "Create a block (ban) on behalf of a streamer. Requires 'ban' permission. Creates an app.bsky.graph.block record in the streamer's repository."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}