chat.bsky.moderation.subscribeModEvents
Subscribe to stream of chat events targeted to moderation. Private endpoint.
Details · subscription
| Kind | subscription |
|---|---|
| Authority | moderation.bsky.chat |
| Indexed |
Subscription
subscription · WebSocketParameters
query stringcursor
stringThe last known event seq number to backfill from. Use '2222222222222' to backfill from the beginning. Don't specify a cursor to listen only for new events.
Messages
DAG-CBOR frames#eventConvoFirstMessage
objectFired when the first message was sent on a convo.
#eventGroupChatCreated
objectFire when a group chat is created.
Fired when a member is added to a group chat. Note that members are added in the 'request' state.
Fired when a member joins a group chat via an join link that does not require approval.
Fired when a user requests to join a group chat via an join link that requires approval.
Fired when a join request is approved by the group owner.
Fired when a join request is rejected by the group owner.
#eventChatAccepted
objectFired when a user accepts a chat convo, either explicitly or by sending a message.
Fired when a member leaves or is removed from a group chat.
#eventGroupChatUpdated
objectFired when a group chat's metadata or status changes.
#eventRateLimitExceeded
objectFired when a user exceeds a rate limit.
Errors
FutureCursor
No description in schema.
ConsumerTooSlow
If the consumer of the stream can not keep up with events, and a backlog gets too large, the server will drop the connection.
#eventChatAccepted
objectFired when a user accepts a chat convo, either explicitly or by sending a message.
Properties
The DID of the person accepting the convo.
When the convo was originally created.
groupMemberCount
integerCurrent member count at the time of the event. Only present for group convos.
groupName
stringThe name of the group chat. Only present for group convos.
How the convo was accepted.
knownValues: explicit | message
ownerDid
string · didThe DID of the group chat owner. Only present for group convos.
#eventConvoFirstMessage
objectFired when the first message was sent on a convo.
#eventGroupChatCreated
objectFire when a group chat is created.
Properties
The DID of the actor performing the action. For this event, same as ownerDid.
When the group was originally created.
Current member count at the time of the event.
The name set at creation time.
DIDs of everyone added at creation time.
The DID of the group chat owner.
#eventGroupChatJoinRequest
objectFired when a user requests to join a group chat via an join link that requires approval.
Properties
The DID of the person requesting to join.
When the group was originally created.
Current member count at the time of the event.
The code of the join link used to request joining.
The DID of the group chat owner.
Whether the requesting member follows the group owner.
#eventGroupChatJoinRequestApproved
objectFired when a join request is approved by the group owner.
Properties
The DID of the owner approving the request.
When the group was originally created.
Current member count at the time of the event.
The DID of the group chat owner.
The DID of the member whose request was approved.
#eventGroupChatJoinRequestRejected
objectFired when a join request is rejected by the group owner.
Properties
The DID of the owner rejecting the request.
When the group was originally created.
Current member count at the time of the event.
The DID of the group chat owner.
The DID of the member whose request was rejected.
#eventGroupChatMemberAdded
objectFired when a member is added to a group chat. Note that members are added in the 'request' state.
Properties
The DID of the actor performing the action. For this event, same as ownerDid.
When the group was originally created.
Current member count at the time of the event.
The DID of the group chat owner.
The number of members who have not yet accepted the convo.
The DID of the member who was added.
Whether the added member follows the group owner.
#eventGroupChatMemberJoined
objectFired when a member joins a group chat via an join link that does not require approval.
Properties
The DID of the person joining.
When the group was originally created.
Current member count at the time of the event.
The code of the join link used to join.
The DID of the group chat owner.
Whether the joining member follows the group owner.
#eventGroupChatMemberLeft
objectFired when a member leaves or is removed from a group chat.
Properties
The DID of the actor. For voluntary: the person leaving. For kicked: the owner.
When the group was originally created.
Current member count at the time of the event.
How the member left.
knownValues: voluntary | kicked
The DID of the group chat owner.
The DID of the member who left or was removed.
#eventGroupChatUpdated
objectFired when a group chat's metadata or status changes.
Properties
The DID of the actor performing the action (the owner).
When the group was originally created.
Current member count at the time of the event.
Current group name.
joinLinkCode
stringThe code of the join link. Only present when updateType is join-link-related.
joinLinkFollowersOnly
booleanWhether the join link is restricted to followers of the owner. Only present when updateType is join-link-related.
joinLinkRequiresApproval
booleanWhether the join link requires owner approval to join. Only present when updateType is join-link-related.
lockReason
stringWhy the group was locked. Only present when updateType is 'locked'.
knownValues: owner_action | owner_left | owner_deactivated | owner_deleted | owner_suspended | owner_taken_down | label_applied | convo_taken_down
newName
stringThe new group name. Only present when updateType is 'name_changed'.
oldName
stringThe previous group name. Only present when updateType is 'name_changed'.
The DID of the group chat owner.
What changed.
knownValues: name_changed | locked | locked_permanently | unlocked | join_link_created | join_link_disabled | join_link_settings_changed
#eventRateLimitExceeded
objectFired when a user exceeds a rate limit.
Similar lexicons
semantic matchLexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.
-
Event indicating the viewer accepted a convo, and it can be moved out of the request inbox. Can be direct or group.
-
A view of a conversation for moderation purposes. Unlike chat.bsky.convo.defs#convoView, it does not include viewer-specific data (such as muted, unreadCount, status, lastMessage, lastReaction), since the requester is a moderator and not a member of the conversation. The member list is not included; use chat.bsky.moderation.getConvoMembers to list members.
-
Opens a WebSocket stream that transmits relevant events for the authenticated user.