a collection of lightweight TypeScript packages for AT Protocol, the protocol powering Bluesky
atproto bluesky typescript npm
101
fork

Configure Feed

Select the types of activity you want to include in your feed.

chore(bluesky): pull latest Bluesky lexicons

no codegen changes though!

Mary 5d004a8c 0ab98879

+507 -23
+1 -1
packages/definitions/bluesky/lexicons/README.md
··· 3 3 this directory contains lexicon documents pulled from the following sources: 4 4 5 5 - https://github.com/bluesky-social/atproto.git 6 - - commit: 1168691c36c7dff488362059867e955c74befd17 6 + - commit: 046efb3f71e14be4364e08577d005ababc668eb5
+31
packages/definitions/bluesky/lexicons/app/bsky/authCreatePosts.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "app.bsky.authCreatePosts", 4 + "defs": { 5 + "main": { 6 + "type": "permission-set", 7 + "title": "Create Bluesky Posts", 8 + "title:lang": {}, 9 + "detail": "Can not update or delete posts.", 10 + "detail:lang": {}, 11 + "permissions": [ 12 + { 13 + "type": "permission", 14 + "resource": "rpc", 15 + "inheritAud": true, 16 + "lxm": [ 17 + "app.bsky.video.uploadVideo", 18 + "app.bsky.video.getJobStatus", 19 + "app.bsky.video.getUploadLimits" 20 + ] 21 + }, 22 + { 23 + "type": "permission", 24 + "resource": "repo", 25 + "action": ["create"], 26 + "collection": ["app.bsky.feed.post", "app.bsky.feed.postgate", "app.bsky.feed.threadgate"] 27 + } 28 + ] 29 + } 30 + } 31 + }
+137
packages/definitions/bluesky/lexicons/app/bsky/authFullApp.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "app.bsky.authFullApp", 4 + "defs": { 5 + "main": { 6 + "type": "permission-set", 7 + "title": "Full Bluesky Social App Permissions", 8 + "title:lang": {}, 9 + "detail": "Manage all public content and interactions, private preferences and subscriptions, and other Bluesky-specific app features and data.", 10 + "detail:lang": {}, 11 + "permissions": [ 12 + { 13 + "type": "permission", 14 + "resource": "rpc", 15 + "inheritAud": true, 16 + "lxm": [ 17 + "app.bsky.actor.getPreferences", 18 + "app.bsky.actor.getProfile", 19 + "app.bsky.actor.getProfiles", 20 + "app.bsky.actor.getSuggestions", 21 + "app.bsky.actor.putPreferences", 22 + "app.bsky.actor.searchActors", 23 + "app.bsky.actor.searchActorsTypeahead", 24 + "app.bsky.bookmark.createBookmark", 25 + "app.bsky.bookmark.deleteBookmark", 26 + "app.bsky.bookmark.getBookmarks", 27 + "app.bsky.contact.dismissMatch", 28 + "app.bsky.contact.getMatches", 29 + "app.bsky.contact.getSyncStatus", 30 + "app.bsky.contact.importContacts", 31 + "app.bsky.contact.removeData", 32 + "app.bsky.contact.startPhoneVerification", 33 + "app.bsky.contact.verifyPhone", 34 + "app.bsky.feed.describeFeedGenerator", 35 + "app.bsky.feed.getActorFeeds", 36 + "app.bsky.feed.getActorLikes", 37 + "app.bsky.feed.getAuthorFeed", 38 + "app.bsky.feed.getFeed", 39 + "app.bsky.feed.getFeedGenerator", 40 + "app.bsky.feed.getFeedGenerators", 41 + "app.bsky.feed.getFeedSkeleton", 42 + "app.bsky.feed.getLikes", 43 + "app.bsky.feed.getListFeed", 44 + "app.bsky.feed.getPostThread", 45 + "app.bsky.feed.getPosts", 46 + "app.bsky.feed.getQuotes", 47 + "app.bsky.feed.getRepostedBy", 48 + "app.bsky.feed.getSuggestedFeeds", 49 + "app.bsky.feed.getTimeline", 50 + "app.bsky.feed.searchPosts", 51 + "app.bsky.feed.sendInteractions", 52 + "app.bsky.graph.getActorStarterPacks", 53 + "app.bsky.graph.getBlocks", 54 + "app.bsky.graph.getFollowers", 55 + "app.bsky.graph.getFollows", 56 + "app.bsky.graph.getKnownFollowers", 57 + "app.bsky.graph.getList", 58 + "app.bsky.graph.getListBlocks", 59 + "app.bsky.graph.getListMutes", 60 + "app.bsky.graph.getLists", 61 + "app.bsky.graph.getListsWithMembership", 62 + "app.bsky.graph.getMutes", 63 + "app.bsky.graph.getRelationships", 64 + "app.bsky.graph.getStarterPack", 65 + "app.bsky.graph.getStarterPacks", 66 + "app.bsky.graph.getStarterPacksWithMembership", 67 + "app.bsky.graph.getSuggestedFollowsByActor", 68 + "app.bsky.graph.muteActor", 69 + "app.bsky.graph.muteActorList", 70 + "app.bsky.graph.muteThread", 71 + "app.bsky.graph.searchStarterPacks", 72 + "app.bsky.graph.unmuteActor", 73 + "app.bsky.graph.unmuteActorList", 74 + "app.bsky.graph.unmuteThread", 75 + "app.bsky.labeler.getServices", 76 + "app.bsky.notification.getPreferences", 77 + "app.bsky.notification.getUnreadCount", 78 + "app.bsky.notification.listActivitySubscriptions", 79 + "app.bsky.notification.listNotifications", 80 + "app.bsky.notification.putActivitySubscription", 81 + "app.bsky.notification.putPreferences", 82 + "app.bsky.notification.putPreferencesV2", 83 + "app.bsky.notification.registerPush", 84 + "app.bsky.notification.registerPush", 85 + "app.bsky.notification.unregisterPush", 86 + "app.bsky.notification.updateSeen", 87 + "app.bsky.unspecced.getAgeAssuranceState", 88 + "app.bsky.unspecced.getConfig", 89 + "app.bsky.unspecced.getOnboardingSuggestedStarterPacks", 90 + "app.bsky.unspecced.getPopularFeedGenerators", 91 + "app.bsky.unspecced.getPostThreadOtherV2", 92 + "app.bsky.unspecced.getPostThreadV2", 93 + "app.bsky.unspecced.getSuggestedFeeds", 94 + "app.bsky.unspecced.getSuggestedFeedsSkeleton", 95 + "app.bsky.unspecced.getSuggestedStarterPacks", 96 + "app.bsky.unspecced.getSuggestedStarterPacksSkeleton", 97 + "app.bsky.unspecced.getSuggestedUsers", 98 + "app.bsky.unspecced.getSuggestedUsersSkeleton", 99 + "app.bsky.unspecced.getSuggestionsSkeleton", 100 + "app.bsky.unspecced.getTaggedSuggestions", 101 + "app.bsky.unspecced.getTrendingTopics", 102 + "app.bsky.unspecced.getTrends", 103 + "app.bsky.unspecced.getTrendsSkeleton", 104 + "app.bsky.unspecced.initAgeAssurance", 105 + "app.bsky.unspecced.searchActorsSkeleton", 106 + "app.bsky.unspecced.searchPostsSkeleton", 107 + "app.bsky.unspecced.searchStarterPacksSkeleton", 108 + "app.bsky.video.getJobStatus", 109 + "app.bsky.video.getUploadLimits", 110 + "app.bsky.video.uploadVideo" 111 + ] 112 + }, 113 + { 114 + "type": "permission", 115 + "resource": "repo", 116 + "action": ["create", "update", "delete"], 117 + "collection": [ 118 + "app.bsky.actor.profile", 119 + "app.bsky.actor.status", 120 + "app.bsky.feed.like", 121 + "app.bsky.feed.post", 122 + "app.bsky.feed.postgate", 123 + "app.bsky.feed.repost", 124 + "app.bsky.feed.threadgate", 125 + "app.bsky.graph.block", 126 + "app.bsky.graph.follow", 127 + "app.bsky.graph.list", 128 + "app.bsky.graph.listblock", 129 + "app.bsky.graph.listitem", 130 + "app.bsky.graph.starterpack", 131 + "app.bsky.notification.declaration" 132 + ] 133 + } 134 + ] 135 + } 136 + } 137 + }
+21
packages/definitions/bluesky/lexicons/app/bsky/authManageFeedDeclarations.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "app.bsky.authManageFeedDeclarations", 4 + "defs": { 5 + "main": { 6 + "type": "permission-set", 7 + "title": "Manage Hosted Feeds", 8 + "title:lang": {}, 9 + "detail": "Configure feed generator declaration records.", 10 + "detail:lang": {}, 11 + "permissions": [ 12 + { 13 + "type": "permission", 14 + "resource": "repo", 15 + "action": ["create", "update", "delete"], 16 + "collection": ["app.bsky.feed.generator"] 17 + } 18 + ] 19 + } 20 + } 21 + }
+21
packages/definitions/bluesky/lexicons/app/bsky/authManageLabelerService.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "app.bsky.authManageLabelerService", 4 + "defs": { 5 + "main": { 6 + "type": "permission-set", 7 + "title": "Manage Hosted Labeling Service", 8 + "title:lang": {}, 9 + "detail": "Configure labeler declaration records.", 10 + "detail:lang": {}, 11 + "permissions": [ 12 + { 13 + "type": "permission", 14 + "resource": "repo", 15 + "action": ["create", "update", "delete"], 16 + "collection": ["app.bsky.labeler.service"] 17 + } 18 + ] 19 + } 20 + } 21 + }
+36
packages/definitions/bluesky/lexicons/app/bsky/authManageModeration.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "app.bsky.authManageModeration", 4 + "defs": { 5 + "main": { 6 + "type": "permission-set", 7 + "title": "Manage Personal Moderation", 8 + "title:lang": {}, 9 + "detail": "Control over blocks, mutes, mod lists, mod services, and preferences.", 10 + "detail:lang": {}, 11 + "permissions": [ 12 + { 13 + "type": "permission", 14 + "resource": "rpc", 15 + "inheritAud": true, 16 + "lxm": [ 17 + "app.bsky.actor.getPreferences", 18 + "app.bsky.actor.putPreferences", 19 + "app.bsky.graph.muteActor", 20 + "app.bsky.graph.muteActorList", 21 + "app.bsky.graph.muteThread", 22 + "app.bsky.graph.unmuteActor", 23 + "app.bsky.graph.unmuteActorList", 24 + "app.bsky.graph.unmuteThread" 25 + ] 26 + }, 27 + { 28 + "type": "permission", 29 + "resource": "repo", 30 + "action": ["create", "update", "delete"], 31 + "collection": ["app.bsky.graph.block", "app.bsky.graph.listblock"] 32 + } 33 + ] 34 + } 35 + } 36 + }
+32
packages/definitions/bluesky/lexicons/app/bsky/authManageNotifications.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "app.bsky.authManageNotifications", 4 + "defs": { 5 + "main": { 6 + "type": "permission-set", 7 + "title": "Manage Bluesky Notifications", 8 + "title:lang": {}, 9 + "detail": "View and configure notifications for the Bluesky app.", 10 + "detail:lang": {}, 11 + "permissions": [ 12 + { 13 + "type": "permission", 14 + "resource": "rpc", 15 + "inheritAud": true, 16 + "lxm": [ 17 + "app.bsky.notification.getPreferences", 18 + "app.bsky.notification.getUnreadCount", 19 + "app.bsky.notification.listActivitySubscriptions", 20 + "app.bsky.notification.listNotifications", 21 + "app.bsky.notification.putActivitySubscription", 22 + "app.bsky.notification.putPreferences", 23 + "app.bsky.notification.putPreferencesV2", 24 + "app.bsky.notification.registerPush", 25 + "app.bsky.notification.unregisterPush", 26 + "app.bsky.notification.updateSeen" 27 + ] 28 + } 29 + ] 30 + } 31 + } 32 + }
+25
packages/definitions/bluesky/lexicons/app/bsky/authManageProfile.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "app.bsky.authManageProfile", 4 + "defs": { 5 + "main": { 6 + "type": "permission-set", 7 + "title": "Manage Bluesky Profile", 8 + "title:lang": {}, 9 + "detail": "Update profile data, as well as status and public chat visibility.", 10 + "detail:lang": {}, 11 + "permissions": [ 12 + { 13 + "type": "permission", 14 + "resource": "repo", 15 + "action": ["create", "update", "delete"], 16 + "collection": [ 17 + "app.bsky.actor.profile", 18 + "app.bsky.actor.status", 19 + "app.bsky.notification.declaration" 20 + ] 21 + } 22 + ] 23 + } 24 + } 25 + }
+88
packages/definitions/bluesky/lexicons/app/bsky/authViewAll.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "app.bsky.authViewAll", 4 + "defs": { 5 + "main": { 6 + "type": "permission-set", 7 + "title": "Read-only access to all content", 8 + "title:lang": {}, 9 + "detail": "View Bluesky network content from account perspective, and read all notifications and preferences.", 10 + "detail:lang": {}, 11 + "permissions": [ 12 + { 13 + "type": "permission", 14 + "resource": "rpc", 15 + "inheritAud": true, 16 + "lxm": [ 17 + "app.bsky.actor.getProfile", 18 + "app.bsky.actor.getProfiles", 19 + "app.bsky.actor.getSuggestions", 20 + "app.bsky.actor.searchActors", 21 + "app.bsky.actor.searchActorsTypeahead", 22 + "app.bsky.bookmark.getBookmarks", 23 + "app.bsky.feed.describeFeedGenerator", 24 + "app.bsky.feed.getActorFeeds", 25 + "app.bsky.feed.getActorLikes", 26 + "app.bsky.feed.getAuthorFeed", 27 + "app.bsky.feed.getFeed", 28 + "app.bsky.feed.getFeedGenerator", 29 + "app.bsky.feed.getFeedGenerators", 30 + "app.bsky.feed.getFeedSkeleton", 31 + "app.bsky.feed.getLikes", 32 + "app.bsky.feed.getListFeed", 33 + "app.bsky.feed.getPostThread", 34 + "app.bsky.feed.getPosts", 35 + "app.bsky.feed.getQuotes", 36 + "app.bsky.feed.getRepostedBy", 37 + "app.bsky.feed.getSuggestedFeeds", 38 + "app.bsky.feed.getTimeline", 39 + "app.bsky.feed.searchPosts", 40 + "app.bsky.graph.getActorStarterPacks", 41 + "app.bsky.graph.getBlocks", 42 + "app.bsky.graph.getFollowers", 43 + "app.bsky.graph.getFollows", 44 + "app.bsky.graph.getKnownFollowers", 45 + "app.bsky.graph.getListBlocks", 46 + "app.bsky.graph.getListMutes", 47 + "app.bsky.graph.getLists", 48 + "app.bsky.graph.getListsWithMembership", 49 + "app.bsky.graph.getMutes", 50 + "app.bsky.graph.getRelationships", 51 + "app.bsky.graph.getStarterPack", 52 + "app.bsky.graph.getStarterPacks", 53 + "app.bsky.graph.getStarterPacksWithMembership", 54 + "app.bsky.graph.getSuggestedFollowsByActor", 55 + "app.bsky.graph.searchStarterPacks", 56 + "app.bsky.labeler.getServices", 57 + "app.bsky.notification.getPreferences", 58 + "app.bsky.notification.getUnreadCount", 59 + "app.bsky.notification.listActivitySubscriptions", 60 + "app.bsky.notification.listNotifications", 61 + "app.bsky.notification.updateSeen", 62 + "app.bsky.unspecced.getAgeAssuranceState", 63 + "app.bsky.unspecced.getConfig", 64 + "app.bsky.unspecced.getOnboardingSuggestedStarterPacks", 65 + "app.bsky.unspecced.getPopularFeedGenerators", 66 + "app.bsky.unspecced.getPostThreadOtherV2", 67 + "app.bsky.unspecced.getPostThreadV2", 68 + "app.bsky.unspecced.getSuggestedFeeds", 69 + "app.bsky.unspecced.getSuggestedFeedsSkeleton", 70 + "app.bsky.unspecced.getSuggestedStarterPacks", 71 + "app.bsky.unspecced.getSuggestedStarterPacksSkeleton", 72 + "app.bsky.unspecced.getSuggestedUsers", 73 + "app.bsky.unspecced.getSuggestedUsersSkeleton", 74 + "app.bsky.unspecced.getSuggestionsSkeleton", 75 + "app.bsky.unspecced.getTaggedSuggestions", 76 + "app.bsky.unspecced.getTrendingTopics", 77 + "app.bsky.unspecced.getTrends", 78 + "app.bsky.unspecced.getTrendsSkeleton", 79 + "app.bsky.unspecced.searchActorsSkeleton", 80 + "app.bsky.unspecced.searchPostsSkeleton", 81 + "app.bsky.unspecced.searchStarterPacksSkeleton", 82 + "app.bsky.video.getUploadLimits" 83 + ] 84 + } 85 + ] 86 + } 87 + } 88 + }
+5 -3
packages/definitions/bluesky/lexicons/app/bsky/contact/dismissMatch.json
··· 4 4 "defs": { 5 5 "main": { 6 6 "type": "procedure", 7 - "description": "WARNING: This is unstable and under active development, don't use it while this warning is here. Removes a match that was found via contact import. It shouldn't appear again if the same contact is re-imported. Requires authentication.", 7 + "description": "Removes a match that was found via contact import. It shouldn't appear again if the same contact is re-imported. Requires authentication.", 8 8 "input": { 9 9 "encoding": "application/json", 10 10 "schema": { ··· 28 28 }, 29 29 "errors": [ 30 30 { 31 - "name": "TODO", 32 - "description": "TODO" 31 + "name": "InvalidDid" 32 + }, 33 + { 34 + "name": "InternalError" 33 35 } 34 36 ] 35 37 }
+11 -3
packages/definitions/bluesky/lexicons/app/bsky/contact/getMatches.json
··· 4 4 "defs": { 5 5 "main": { 6 6 "type": "query", 7 - "description": "WARNING: This is unstable and under active development, don't use it while this warning is here. Returns the matched contacts (contacts that were mutually imported). Excludes dismissed matches. Requires authentication.", 7 + "description": "Returns the matched contacts (contacts that were mutually imported). Excludes dismissed matches. Requires authentication.", 8 8 "parameters": { 9 9 "type": "params", 10 10 "properties": { ··· 40 40 }, 41 41 "errors": [ 42 42 { 43 - "name": "TODO", 44 - "description": "TODO" 43 + "name": "InvalidDid" 44 + }, 45 + { 46 + "name": "InvalidLimit" 47 + }, 48 + { 49 + "name": "InvalidCursor" 50 + }, 51 + { 52 + "name": "InternalError" 45 53 } 46 54 ] 47 55 }
+5 -3
packages/definitions/bluesky/lexicons/app/bsky/contact/getSyncStatus.json
··· 4 4 "defs": { 5 5 "main": { 6 6 "type": "query", 7 - "description": "WARNING: This is unstable and under active development, don't use it while this warning is here. Gets the user's current contact import status. Requires authentication.", 7 + "description": "Gets the user's current contact import status. Requires authentication.", 8 8 "parameters": { 9 9 "type": "params", 10 10 "properties": {} ··· 24 24 }, 25 25 "errors": [ 26 26 { 27 - "name": "TODO", 28 - "description": "TODO" 27 + "name": "InvalidDid" 28 + }, 29 + { 30 + "name": "InternalError" 29 31 } 30 32 ] 31 33 }
+14 -3
packages/definitions/bluesky/lexicons/app/bsky/contact/importContacts.json
··· 4 4 "defs": { 5 5 "main": { 6 6 "type": "procedure", 7 - "description": "WARNING: This is unstable and under active development, don't use it while this warning is here. Import contacts for securely matching with other users. This follows the protocol explained in https://docs.bsky.app/blog/contact-import-rfc. Requires authentication.", 7 + "description": "Import contacts for securely matching with other users. This follows the protocol explained in https://docs.bsky.app/blog/contact-import-rfc. Requires authentication.", 8 8 "input": { 9 9 "encoding": "application/json", 10 10 "schema": { ··· 46 46 }, 47 47 "errors": [ 48 48 { 49 - "name": "TODO", 50 - "description": "TODO" 49 + "name": "InvalidDid" 50 + }, 51 + { 52 + "name": "InvalidContacts" 53 + }, 54 + { 55 + "name": "TooManyContacts" 56 + }, 57 + { 58 + "name": "InvalidToken" 59 + }, 60 + { 61 + "name": "InternalError" 51 62 } 52 63 ] 53 64 }
+5 -3
packages/definitions/bluesky/lexicons/app/bsky/contact/removeData.json
··· 4 4 "defs": { 5 5 "main": { 6 6 "type": "procedure", 7 - "description": "WARNING: This is unstable and under active development, don't use it while this warning is here. Removes all stored hashes used for contact matching, existing matches, and sync status. Requires authentication.", 7 + "description": "Removes all stored hashes used for contact matching, existing matches, and sync status. Requires authentication.", 8 8 "input": { 9 9 "encoding": "application/json", 10 10 "schema": { ··· 21 21 }, 22 22 "errors": [ 23 23 { 24 - "name": "TODO", 25 - "description": "TODO" 24 + "name": "InvalidDid" 25 + }, 26 + { 27 + "name": "InternalError" 26 28 } 27 29 ] 28 30 }
+1 -1
packages/definitions/bluesky/lexicons/app/bsky/contact/sendNotification.json
··· 4 4 "defs": { 5 5 "main": { 6 6 "type": "procedure", 7 - "description": "WARNING: This is unstable and under active development, don't use it while this warning is here. System endpoint to send notifications related to contact imports. Requires role authentication.", 7 + "description": "System endpoint to send notifications related to contact imports. Requires role authentication.", 8 8 "input": { 9 9 "encoding": "application/json", 10 10 "schema": {
+11 -3
packages/definitions/bluesky/lexicons/app/bsky/contact/startPhoneVerification.json
··· 4 4 "defs": { 5 5 "main": { 6 6 "type": "procedure", 7 - "description": "WARNING: This is unstable and under active development, don't use it while this warning is here. Starts a phone verification flow. The phone passed will receive a code via SMS that should be passed to `app.bsky.contact.verifyPhone`. Requires authentication.", 7 + "description": "Starts a phone verification flow. The phone passed will receive a code via SMS that should be passed to `app.bsky.contact.verifyPhone`. Requires authentication.", 8 8 "input": { 9 9 "encoding": "application/json", 10 10 "schema": { ··· 27 27 }, 28 28 "errors": [ 29 29 { 30 - "name": "TODO", 31 - "description": "TODO" 30 + "name": "RateLimitExceeded" 31 + }, 32 + { 33 + "name": "InvalidDid" 34 + }, 35 + { 36 + "name": "InvalidPhone" 37 + }, 38 + { 39 + "name": "InternalError" 32 40 } 33 41 ] 34 42 }
+14 -3
packages/definitions/bluesky/lexicons/app/bsky/contact/verifyPhone.json
··· 4 4 "defs": { 5 5 "main": { 6 6 "type": "procedure", 7 - "description": "WARNING: This is unstable and under active development, don't use it while this warning is here. Verifies control over a phone number with a code received via SMS and starts a contact import session. Requires authentication.", 7 + "description": "Verifies control over a phone number with a code received via SMS and starts a contact import session. Requires authentication.", 8 8 "input": { 9 9 "encoding": "application/json", 10 10 "schema": { ··· 37 37 }, 38 38 "errors": [ 39 39 { 40 - "name": "TODO", 41 - "description": "TODO" 40 + "name": "RateLimitExceeded" 41 + }, 42 + { 43 + "name": "InvalidDid" 44 + }, 45 + { 46 + "name": "InvalidPhone" 47 + }, 48 + { 49 + "name": "InvalidCode" 50 + }, 51 + { 52 + "name": "InternalError" 42 53 } 43 54 ] 44 55 }
+49
packages/definitions/bluesky/lexicons/chat/bsky/authFullChatClient.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "chat.bsky.authFullChatClient", 4 + "defs": { 5 + "main": { 6 + "type": "permission-set", 7 + "title": "Full Chat Client (All Conversations)", 8 + "title:lang": {}, 9 + "detail": "Control of all chat conversations and configuration management.", 10 + "detail:lang": { 11 + "en": "All Chat Conversations" 12 + }, 13 + "permissions": [ 14 + { 15 + "type": "permission", 16 + "resource": "rpc", 17 + "inheritAud": true, 18 + "lxm": [ 19 + "chat.bsky.actor.deleteAccount", 20 + "chat.bsky.convo.acceptConvo", 21 + "chat.bsky.convo.addReaction", 22 + "chat.bsky.convo.deleteMessageForSelf", 23 + "chat.bsky.convo.exportAccountData", 24 + "chat.bsky.convo.getConvo", 25 + "chat.bsky.convo.getConvoAvailability", 26 + "chat.bsky.convo.getConvoForMembers", 27 + "chat.bsky.convo.getLog", 28 + "chat.bsky.convo.getMessages", 29 + "chat.bsky.convo.leaveConvo", 30 + "chat.bsky.convo.listConvos", 31 + "chat.bsky.convo.muteConvo", 32 + "chat.bsky.convo.removeReaction", 33 + "chat.bsky.convo.sendMessage", 34 + "chat.bsky.convo.sendMessageBatch", 35 + "chat.bsky.convo.unmuteConvo", 36 + "chat.bsky.convo.updateAllRead", 37 + "chat.bsky.convo.updateRead" 38 + ] 39 + }, 40 + { 41 + "type": "permission", 42 + "resource": "repo", 43 + "action": ["create", "update", "delete"], 44 + "collection": ["chat.bsky.actor.declaration"] 45 + } 46 + ] 47 + } 48 + } 49 + }