chat_bsky_services library

Classes

ActorDeclarationRecordAccessor
ActorService
chat.bsky.actor.*
ConvoService
chat.bsky.convo.*
GroupService
chat.bsky.group.*
ModerationService
chat.bsky.moderation.*
NotificationService
chat.bsky.notification.*

Functions

chatBskyActorDeleteAccount({required ServiceContext $ctx, String? $service, Map<String, String>? $headers}) Future<XRPCResponse<EmptyData>>
chatBskyActorExportAccountData({required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<Uint8List>>
chatBskyActorGetStatus({required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<ActorGetStatusOutput>>
Get the authenticated viewer's chat status: whether their account is chat-disabled and whether their group-membership additions are restricted to accounts they follow.
chatBskyConvoAcceptConvo({required String convoId, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<ConvoAcceptConvoOutput>>
Marks a conversation as accepted, so it is shown in the list of accepted convos instead on the request convos.
chatBskyConvoAddReaction({required String convoId, required String messageId, required String value, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<ConvoAddReactionOutput>>
Adds an emoji reaction to a message. Requires authentication. It is idempotent, so multiple calls from the same user with the same emoji result in a single reaction.
chatBskyConvoDeleteMessageForSelf({required String convoId, required String messageId, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<DeletedMessageView>>
Marks a message as deleted for the viewer, so they won't see that message in future enumerations.
chatBskyConvoGetConvo({required String convoId, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<ConvoGetConvoOutput>>
Gets an existing conversation by its ID.
chatBskyConvoGetConvoAvailability({required List<String> members, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<ConvoGetConvoAvailabilityOutput>>
Check whether the requester and the other members can start a 1-1 chat. Only applicable to direct (non-group) conversations. If an existing convo is found for these members, it is returned. Does not create a new convo if it doesn't exist.
chatBskyConvoGetConvoForMembers({required List<String> members, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<ConvoGetConvoForMembersOutput>>
Get or create a 1-1 conversation for the given members. Always returns the same direct (non-group) conversation. To create a group conversation, use createGroup.
chatBskyConvoGetConvoMembers({required String convoId, int? limit, String? cursor, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<ConvoGetConvoMembersOutput>>
Returns a paginated list of members from a conversation.
chatBskyConvoGetLog({String? cursor, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<ConvoGetLogOutput>>
chatBskyConvoGetMessages({required String convoId, int? limit, String? cursor, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<ConvoGetMessagesOutput>>
Returns a page of messages from a conversation.
chatBskyConvoGetUnreadCounts({bool? includeGroupChats, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<ConvoGetUnreadCountsOutput>>
Returns unread conversation counts for conversations that are unlocked, not muted, split by convo status. Direct convos are excluded when a block relationship exists between the actor and the other member, or when the other member's account is deleted or deactivated. Group convos are considered unread if they have unread join request counts.
chatBskyConvoLeaveConvo({required String convoId, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<ConvoLeaveConvoOutput>>
Leaves a conversation (direct or group). For group, this effectively removes membership. For direct, membership is never removed, only changed to remove from enumerations by the user who left.
chatBskyConvoListConvoRequests({int? limit, String? cursor, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<ConvoListConvoRequestsOutput>>
Returns a page of incoming conversation requests for the user. Direct convo requests are returned as convoView; group join requests made by the user are returned as joinRequestConvoView.
chatBskyConvoListConvos({int? limit, String? cursor, ConvoListConvosReadState? readState, ConvoListConvosStatus? status, ConvoListConvosKind? kind, ConvoListConvosLockStatus? lockStatus, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<ConvoListConvosOutput>>
Returns a page of conversations (direct or group) for the user.
chatBskyConvoLockConvo({required String convoId, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<ConvoLockConvoOutput>>
Locks a group convo so no more content (messages, reactions) can be added to it.
chatBskyConvoMuteConvo({required String convoId, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<ConvoMuteConvoOutput>>
Mutes a conversation, preventing notifications related to it.
chatBskyConvoRemoveReaction({required String convoId, required String messageId, required String value, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<ConvoRemoveReactionOutput>>
Removes an emoji reaction from a message. Requires authentication. It is idempotent, so multiple calls from the same user with the same emoji result in that reaction not being present, even if it already wasn't.
chatBskyConvoSendMessage({required String convoId, required MessageInput message, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<MessageView>>
Sends a message to a conversation.
chatBskyConvoSendMessageBatch({required List<BatchItem> items, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<ConvoSendMessageBatchOutput>>
Sends a batch of messages to a conversation.
chatBskyConvoUnlockConvo({required String convoId, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<ConvoUnlockConvoOutput>>
Unlocks a group convo so it is able to receive new content.
chatBskyConvoUnmuteConvo({required String convoId, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<ConvoUnmuteConvoOutput>>
Unmutes a conversation, allowing notifications related to it.
chatBskyConvoUpdateAllRead({ConvoUpdateAllReadStatus? status, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<ConvoUpdateAllReadOutput>>
Sets conversations from a user as read to the latest message, with filters.
chatBskyConvoUpdateRead({required String convoId, String? messageId, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<ConvoUpdateReadOutput>>
Updates the read state of a conversation from, optionally specifying the last read message.
chatBskyGroupAddMembers({required String convoId, required List<String> members, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<GroupAddMembersOutput>>
Adds members to a group. The members are added in 'request' status, so they have to accept it. This creates convo memberships.
chatBskyGroupApproveJoinRequest({required String convoId, required String member, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<GroupApproveJoinRequestOutput>>
Approves a request to join a group (via join link) the user owns. Action taken by the group owner.
chatBskyGroupCreateGroup({required List<String> members, required String name, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<GroupCreateGroupOutput>>
Creates a group convo, specifying the members to be added to it. Unlike getConvoForMembers, this isn't idempotent. It will create new groups even if the membership is identical to pre-existing groups. Will create 'request' membership for all members, except the owner who is 'accepted'.
Creates a join link for the group convo.
Disables the active join link for the group convo.
chatBskyGroupEditGroup({required String convoId, required String name, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<GroupEditGroupOutput>>
Edits group settings.
Edits the existing join link settings for the group convo.
Re-enables a previously disabled join link for the group convo.
chatBskyGroupGetJoinLinkPreviews({required List<String> codes, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<GroupGetJoinLinkPreviewsOutput>>
Get public information about groups from join links. The output array matches the input codes one-to-one by position (and each view also carries its 'code'). Disabled codes return a disabledJoinLinkPreviewView, and codes that do not map to a previewable link return an invalidJoinLinkPreviewView.
chatBskyGroupListJoinRequests({required String convoId, int? limit, String? cursor, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<GroupListJoinRequestsOutput>>
Lists a page of request to join a group (via join link) the user owns. Shows the data from the owner's point of view.
chatBskyGroupListMutualGroups({required String subject, int? limit, String? cursor, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<GroupListMutualGroupsOutput>>
Returns a page of group conversations that both the requester and the specified actor are members of.
chatBskyGroupRejectJoinRequest({required String convoId, required String member, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<EmptyData>>
Rejects a request to join a group (via join link) the user owns. Action taken by the group owner.
chatBskyGroupRemoveMembers({required String convoId, required List<String> members, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<GroupRemoveMembersOutput>>
Removes members from a group. This deletes convo memberships, doesn't just set a status.
chatBskyGroupRequestJoin({required String code, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<GroupRequestJoinOutput>>
Sends a request to join a group (via join link) to the group owner. Action taken by the prospective group member.
chatBskyGroupUpdateJoinRequestsRead({required String convoId, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<EmptyData>>
Marks all join requests as read for the group owner.
chatBskyGroupWithdrawJoinRequest({required String convoId, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<EmptyData>>
Withdraws a pending request to join a group. Action taken by the prospective member who originally requested to join.
chatBskyModerationGetActorMetadata({required String actor, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<ModerationGetActorMetadataOutput>>
chatBskyModerationGetConvo({required String convoId, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<ModerationGetConvoOutput>>
Gets an existing conversation by its ID, for moderation purposes. Does not require the requester to be a member of the conversation.
chatBskyModerationGetConvoMembers({required String convoId, int? limit, String? cursor, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<ModerationGetConvoMembersOutput>>
Returns a paginated list of members from a conversation, for moderation purposes. Does not require the requester to be a member of the conversation.
chatBskyModerationGetConvos({required List<String> convoIds, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<ModerationGetConvosOutput>>
Gets existing conversations by their IDs, for moderation purposes. Does not require the requester to be a member of the conversations. Unknown IDs are silently omitted from the response.
chatBskyModerationGetMessageContext({String? convoId, required String messageId, int? before, int? after, int? maxInterleavedSystemMessages, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<ModerationGetMessageContextOutput>>
chatBskyModerationSubscribeModEvents({String? cursor, required ServiceContext $ctx}) Future<XRPCResponse<Subscription<Uint8List>>>
Subscribe to stream of chat events targeted to moderation. Private endpoint.
chatBskyModerationUpdateActorAccess({required String actor, required bool allowAccess, String? ref, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<EmptyData>>
chatBskyNotificationGetPreferences({required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<NotificationGetPreferencesOutput>>
Get the requesting account's chat notification preferences. Defaults are returned for accounts that have not set any preferences. Requires auth.
chatBskyNotificationPutPreferences({ChatPreference? chat, ChatPreference? chatRequest, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<NotificationPutPreferencesOutput>>
Set the requesting account's chat notification preferences. Only the provided preferences are updated; omitted preferences are left unchanged.