chat_bsky_services library

Classes

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

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.
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>>
NOTE: This is under active development and should be considered unstable while this note is here. 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>>
NOTE: This is under active development and should be considered unstable while this note is here. 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>>
NOTE: This is under active development and should be considered unstable while this note is here. 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>>
NOTE: This is under active development and should be considered unstable while this note is here. 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>>
NOTE: This is under active development and should be considered unstable while this note is here. 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>>
NOTE: This is under active development and should be considered unstable while this note is here. 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 'pending' membership for all members, except the owner who is 'accepted'.
NOTE: This is under active development and should be considered unstable while this note is here. Creates a join link for the group convo.
NOTE: This is under active development and should be considered unstable while this note is here. 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>>
NOTE: This is under active development and should be considered unstable while this note is here. Edits group settings.
NOTE: This is under active development and should be considered unstable while this note is here. Edits the existing join link settings for the group convo.
NOTE: This is under active development and should be considered unstable while this note is here. 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>>
NOTE: This is under active development and should be considered unstable while this note is here. Get public information about groups from join links. Invalid or disabled codes are silently omitted from results.
chatBskyGroupListJoinRequests({required String convoId, int? limit, String? cursor, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<GroupListJoinRequestsOutput>>
NOTE: This is under active development and should be considered unstable while this note is here. 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>>
NOTE: This is under active development and should be considered unstable while this note is here. 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>>
NOTE: This is under active development and should be considered unstable while this note is here. 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>>
NOTE: This is under active development and should be considered unstable while this note is here. 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>>
NOTE: This is under active development and should be considered unstable while this note is here. Sends a request to join a group (via join link) to the group owner. Action taken by the prospective group member.
chatBskyModerationGetActorMetadata({required String actor, required ServiceContext $ctx, String? $service, Map<String, String>? $headers, Map<String, String>? $unknown}) Future<XRPCResponse<ModerationGetActorMetadataOutput>>
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>>