{
"id": "social.colibri.sync.subscribeHums",
"defs": {
"main": {
"type": "subscription",
"errors": [
{
"name": "AuthRequired",
"description": "Missing, malformed, or unverifiable service auth."
},
{
"name": "NotEnabled",
"description": "Humming is disabled on this AppView."
},
{
"name": "TooManySubscribers",
"description": "The hub is at its subscribeHums connection limit."
}
],
"message": {
"schema": {
"refs": [
"lex:social.colibri.sync.subscribeEvents#humEnvelope"
],
"type": "union"
}
},
"parameters": {
"type": "params",
"properties": {
"communities": {
"type": "array",
"items": {
"type": "string",
"format": "did"
},
"description": "DIDs of the communities the peer wants Hums for, repeated once per community. Narrowing only: the intersection with what the peer is authorised for is what gets streamed, so declaring a community grants nothing. Omit it entirely to receive every authorised community."
}
}
},
"description": "Egress-only WebSocket stream of Hums this AppView is relaying. Peers subscribe to receive off-protocol events for shared communities, optionally narrowing to declared `communities` (repeated query param). Requires inter-service auth (subprotocol-carried, as with subscribeEvents). Clients cannot send messages on this stream."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}