@atproto/bsky 0.0.29 → 0.0.31

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (239) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/dist/api/app/bsky/feed/getAuthorFeed.d.ts +1 -0
  3. package/dist/db/index.js +285 -15
  4. package/dist/db/index.js.map +3 -3
  5. package/dist/index.js +1010 -415
  6. package/dist/index.js.map +3 -3
  7. package/dist/lexicon/lexicons.d.ts +153 -5
  8. package/dist/lexicon/types/app/bsky/actor/defs.d.ts +1 -0
  9. package/dist/lexicon/types/app/bsky/actor/getPreferences.d.ts +2 -2
  10. package/dist/lexicon/types/app/bsky/actor/getProfile.d.ts +2 -2
  11. package/dist/lexicon/types/app/bsky/actor/getProfiles.d.ts +2 -2
  12. package/dist/lexicon/types/app/bsky/actor/getSuggestions.d.ts +2 -2
  13. package/dist/lexicon/types/app/bsky/actor/searchActors.d.ts +2 -2
  14. package/dist/lexicon/types/app/bsky/actor/searchActorsTypeahead.d.ts +2 -2
  15. package/dist/lexicon/types/app/bsky/feed/describeFeedGenerator.d.ts +2 -2
  16. package/dist/lexicon/types/app/bsky/feed/getActorFeeds.d.ts +2 -2
  17. package/dist/lexicon/types/app/bsky/feed/getActorLikes.d.ts +2 -2
  18. package/dist/lexicon/types/app/bsky/feed/getAuthorFeed.d.ts +2 -2
  19. package/dist/lexicon/types/app/bsky/feed/getFeed.d.ts +2 -2
  20. package/dist/lexicon/types/app/bsky/feed/getFeedGenerator.d.ts +2 -2
  21. package/dist/lexicon/types/app/bsky/feed/getFeedGenerators.d.ts +2 -2
  22. package/dist/lexicon/types/app/bsky/feed/getFeedSkeleton.d.ts +2 -2
  23. package/dist/lexicon/types/app/bsky/feed/getLikes.d.ts +2 -2
  24. package/dist/lexicon/types/app/bsky/feed/getListFeed.d.ts +2 -2
  25. package/dist/lexicon/types/app/bsky/feed/getPostThread.d.ts +2 -2
  26. package/dist/lexicon/types/app/bsky/feed/getPosts.d.ts +2 -2
  27. package/dist/lexicon/types/app/bsky/feed/getRepostedBy.d.ts +2 -2
  28. package/dist/lexicon/types/app/bsky/feed/getSuggestedFeeds.d.ts +2 -2
  29. package/dist/lexicon/types/app/bsky/feed/getTimeline.d.ts +2 -2
  30. package/dist/lexicon/types/app/bsky/feed/searchPosts.d.ts +2 -2
  31. package/dist/lexicon/types/app/bsky/graph/getBlocks.d.ts +2 -2
  32. package/dist/lexicon/types/app/bsky/graph/getFollowers.d.ts +2 -2
  33. package/dist/lexicon/types/app/bsky/graph/getFollows.d.ts +2 -2
  34. package/dist/lexicon/types/app/bsky/graph/getList.d.ts +2 -2
  35. package/dist/lexicon/types/app/bsky/graph/getListBlocks.d.ts +2 -2
  36. package/dist/lexicon/types/app/bsky/graph/getListMutes.d.ts +2 -2
  37. package/dist/lexicon/types/app/bsky/graph/getLists.d.ts +2 -2
  38. package/dist/lexicon/types/app/bsky/graph/getMutes.d.ts +2 -2
  39. package/dist/lexicon/types/app/bsky/graph/getRelationships.d.ts +2 -2
  40. package/dist/lexicon/types/app/bsky/graph/getSuggestedFollowsByActor.d.ts +2 -2
  41. package/dist/lexicon/types/app/bsky/notification/getUnreadCount.d.ts +2 -2
  42. package/dist/lexicon/types/app/bsky/notification/listNotifications.d.ts +2 -2
  43. package/dist/lexicon/types/app/bsky/unspecced/getPopularFeedGenerators.d.ts +2 -2
  44. package/dist/lexicon/types/app/bsky/unspecced/getTaggedSuggestions.d.ts +2 -2
  45. package/dist/lexicon/types/app/bsky/unspecced/searchActorsSkeleton.d.ts +2 -2
  46. package/dist/lexicon/types/app/bsky/unspecced/searchPostsSkeleton.d.ts +2 -2
  47. package/dist/lexicon/types/com/atproto/admin/createCommunicationTemplate.d.ts +2 -2
  48. package/dist/lexicon/types/com/atproto/admin/defs.d.ts +9 -0
  49. package/dist/lexicon/types/com/atproto/admin/emitModerationEvent.d.ts +3 -3
  50. package/dist/lexicon/types/com/atproto/admin/getAccountInfo.d.ts +2 -2
  51. package/dist/lexicon/types/com/atproto/admin/getAccountInfos.d.ts +2 -2
  52. package/dist/lexicon/types/com/atproto/admin/getInviteCodes.d.ts +2 -2
  53. package/dist/lexicon/types/com/atproto/admin/getModerationEvent.d.ts +2 -2
  54. package/dist/lexicon/types/com/atproto/admin/getRecord.d.ts +2 -2
  55. package/dist/lexicon/types/com/atproto/admin/getRepo.d.ts +2 -2
  56. package/dist/lexicon/types/com/atproto/admin/getSubjectStatus.d.ts +2 -2
  57. package/dist/lexicon/types/com/atproto/admin/listCommunicationTemplates.d.ts +2 -2
  58. package/dist/lexicon/types/com/atproto/admin/queryModerationEvents.d.ts +4 -2
  59. package/dist/lexicon/types/com/atproto/admin/queryModerationStatuses.d.ts +4 -2
  60. package/dist/lexicon/types/com/atproto/admin/searchRepos.d.ts +2 -2
  61. package/dist/lexicon/types/com/atproto/admin/sendEmail.d.ts +2 -2
  62. package/dist/lexicon/types/com/atproto/admin/updateCommunicationTemplate.d.ts +2 -2
  63. package/dist/lexicon/types/com/atproto/admin/updateSubjectStatus.d.ts +2 -2
  64. package/dist/lexicon/types/com/atproto/identity/resolveHandle.d.ts +2 -2
  65. package/dist/lexicon/types/com/atproto/label/queryLabels.d.ts +2 -2
  66. package/dist/lexicon/types/com/atproto/moderation/createReport.d.ts +2 -2
  67. package/dist/lexicon/types/com/atproto/repo/createRecord.d.ts +2 -2
  68. package/dist/lexicon/types/com/atproto/repo/describeRepo.d.ts +2 -2
  69. package/dist/lexicon/types/com/atproto/repo/getRecord.d.ts +2 -2
  70. package/dist/lexicon/types/com/atproto/repo/listRecords.d.ts +2 -2
  71. package/dist/lexicon/types/com/atproto/repo/putRecord.d.ts +2 -2
  72. package/dist/lexicon/types/com/atproto/repo/uploadBlob.d.ts +2 -2
  73. package/dist/lexicon/types/com/atproto/server/createAccount.d.ts +2 -2
  74. package/dist/lexicon/types/com/atproto/server/createAppPassword.d.ts +2 -2
  75. package/dist/lexicon/types/com/atproto/server/createInviteCode.d.ts +2 -2
  76. package/dist/lexicon/types/com/atproto/server/createInviteCodes.d.ts +2 -2
  77. package/dist/lexicon/types/com/atproto/server/createSession.d.ts +2 -2
  78. package/dist/lexicon/types/com/atproto/server/describeServer.d.ts +2 -2
  79. package/dist/lexicon/types/com/atproto/server/getAccountInviteCodes.d.ts +2 -2
  80. package/dist/lexicon/types/com/atproto/server/getSession.d.ts +2 -2
  81. package/dist/lexicon/types/com/atproto/server/listAppPasswords.d.ts +2 -2
  82. package/dist/lexicon/types/com/atproto/server/refreshSession.d.ts +2 -2
  83. package/dist/lexicon/types/com/atproto/server/requestEmailUpdate.d.ts +2 -2
  84. package/dist/lexicon/types/com/atproto/server/reserveSigningKey.d.ts +2 -2
  85. package/dist/lexicon/types/com/atproto/sync/getBlob.d.ts +2 -2
  86. package/dist/lexicon/types/com/atproto/sync/getBlocks.d.ts +2 -2
  87. package/dist/lexicon/types/com/atproto/sync/getCheckout.d.ts +2 -2
  88. package/dist/lexicon/types/com/atproto/sync/getHead.d.ts +2 -2
  89. package/dist/lexicon/types/com/atproto/sync/getLatestCommit.d.ts +2 -2
  90. package/dist/lexicon/types/com/atproto/sync/getRecord.d.ts +2 -2
  91. package/dist/lexicon/types/com/atproto/sync/getRepo.d.ts +2 -2
  92. package/dist/lexicon/types/com/atproto/sync/listBlobs.d.ts +2 -2
  93. package/dist/lexicon/types/com/atproto/sync/listRepos.d.ts +2 -2
  94. package/dist/lexicon/types/com/atproto/temp/checkSignupQueue.d.ts +2 -2
  95. package/dist/lexicon/types/com/atproto/temp/fetchLabels.d.ts +2 -2
  96. package/dist/lexicon/types/com/atproto/temp/importRepo.d.ts +2 -2
  97. package/dist/lexicon/types/com/atproto/temp/transferAccount.d.ts +2 -2
  98. package/dist/services/feed/index.d.ts +2 -1
  99. package/package.json +7 -7
  100. package/src/api/app/bsky/feed/getAuthorFeed.ts +12 -4
  101. package/src/lexicon/lexicons.ts +401 -123
  102. package/src/lexicon/types/app/bsky/actor/defs.ts +2 -0
  103. package/src/lexicon/types/app/bsky/actor/getPreferences.ts +2 -2
  104. package/src/lexicon/types/app/bsky/actor/getProfile.ts +3 -2
  105. package/src/lexicon/types/app/bsky/actor/getProfiles.ts +2 -2
  106. package/src/lexicon/types/app/bsky/actor/getSuggestions.ts +2 -2
  107. package/src/lexicon/types/app/bsky/actor/profile.ts +3 -0
  108. package/src/lexicon/types/app/bsky/actor/putPreferences.ts +1 -1
  109. package/src/lexicon/types/app/bsky/actor/searchActors.ts +2 -2
  110. package/src/lexicon/types/app/bsky/actor/searchActorsTypeahead.ts +2 -2
  111. package/src/lexicon/types/app/bsky/embed/external.ts +1 -0
  112. package/src/lexicon/types/app/bsky/embed/images.ts +4 -0
  113. package/src/lexicon/types/app/bsky/embed/record.ts +1 -0
  114. package/src/lexicon/types/app/bsky/feed/defs.ts +1 -0
  115. package/src/lexicon/types/app/bsky/feed/describeFeedGenerator.ts +2 -2
  116. package/src/lexicon/types/app/bsky/feed/getActorFeeds.ts +2 -2
  117. package/src/lexicon/types/app/bsky/feed/getActorLikes.ts +2 -2
  118. package/src/lexicon/types/app/bsky/feed/getAuthorFeed.ts +3 -2
  119. package/src/lexicon/types/app/bsky/feed/getFeed.ts +2 -2
  120. package/src/lexicon/types/app/bsky/feed/getFeedGenerator.ts +5 -2
  121. package/src/lexicon/types/app/bsky/feed/getFeedGenerators.ts +2 -2
  122. package/src/lexicon/types/app/bsky/feed/getFeedSkeleton.ts +3 -2
  123. package/src/lexicon/types/app/bsky/feed/getLikes.ts +4 -2
  124. package/src/lexicon/types/app/bsky/feed/getListFeed.ts +3 -2
  125. package/src/lexicon/types/app/bsky/feed/getPostThread.ts +5 -2
  126. package/src/lexicon/types/app/bsky/feed/getPosts.ts +3 -2
  127. package/src/lexicon/types/app/bsky/feed/getRepostedBy.ts +4 -2
  128. package/src/lexicon/types/app/bsky/feed/getSuggestedFeeds.ts +2 -2
  129. package/src/lexicon/types/app/bsky/feed/getTimeline.ts +3 -2
  130. package/src/lexicon/types/app/bsky/feed/post.ts +5 -1
  131. package/src/lexicon/types/app/bsky/feed/searchPosts.ts +2 -2
  132. package/src/lexicon/types/app/bsky/feed/threadgate.ts +1 -0
  133. package/src/lexicon/types/app/bsky/graph/block.ts +1 -0
  134. package/src/lexicon/types/app/bsky/graph/getBlocks.ts +2 -2
  135. package/src/lexicon/types/app/bsky/graph/getFollowers.ts +2 -2
  136. package/src/lexicon/types/app/bsky/graph/getFollows.ts +2 -2
  137. package/src/lexicon/types/app/bsky/graph/getList.ts +3 -2
  138. package/src/lexicon/types/app/bsky/graph/getListBlocks.ts +2 -2
  139. package/src/lexicon/types/app/bsky/graph/getListMutes.ts +2 -2
  140. package/src/lexicon/types/app/bsky/graph/getLists.ts +3 -2
  141. package/src/lexicon/types/app/bsky/graph/getMutes.ts +2 -2
  142. package/src/lexicon/types/app/bsky/graph/getRelationships.ts +4 -2
  143. package/src/lexicon/types/app/bsky/graph/getSuggestedFollowsByActor.ts +2 -2
  144. package/src/lexicon/types/app/bsky/graph/list.ts +1 -0
  145. package/src/lexicon/types/app/bsky/graph/listblock.ts +1 -0
  146. package/src/lexicon/types/app/bsky/graph/listitem.ts +2 -0
  147. package/src/lexicon/types/app/bsky/graph/muteActor.ts +1 -1
  148. package/src/lexicon/types/app/bsky/graph/muteActorList.ts +1 -1
  149. package/src/lexicon/types/app/bsky/graph/unmuteActor.ts +1 -1
  150. package/src/lexicon/types/app/bsky/graph/unmuteActorList.ts +1 -1
  151. package/src/lexicon/types/app/bsky/notification/getUnreadCount.ts +2 -2
  152. package/src/lexicon/types/app/bsky/notification/listNotifications.ts +2 -2
  153. package/src/lexicon/types/app/bsky/notification/registerPush.ts +1 -1
  154. package/src/lexicon/types/app/bsky/notification/updateSeen.ts +1 -1
  155. package/src/lexicon/types/app/bsky/richtext/facet.ts +5 -4
  156. package/src/lexicon/types/app/bsky/unspecced/getPopularFeedGenerators.ts +2 -2
  157. package/src/lexicon/types/app/bsky/unspecced/getTaggedSuggestions.ts +2 -2
  158. package/src/lexicon/types/app/bsky/unspecced/searchActorsSkeleton.ts +2 -2
  159. package/src/lexicon/types/app/bsky/unspecced/searchPostsSkeleton.ts +2 -2
  160. package/src/lexicon/types/com/atproto/admin/createCommunicationTemplate.ts +2 -2
  161. package/src/lexicon/types/com/atproto/admin/defs.ts +24 -0
  162. package/src/lexicon/types/com/atproto/admin/deleteAccount.ts +1 -1
  163. package/src/lexicon/types/com/atproto/admin/deleteCommunicationTemplate.ts +1 -1
  164. package/src/lexicon/types/com/atproto/admin/disableAccountInvites.ts +1 -1
  165. package/src/lexicon/types/com/atproto/admin/disableInviteCodes.ts +1 -1
  166. package/src/lexicon/types/com/atproto/admin/emitModerationEvent.ts +3 -2
  167. package/src/lexicon/types/com/atproto/admin/enableAccountInvites.ts +1 -1
  168. package/src/lexicon/types/com/atproto/admin/getAccountInfo.ts +2 -2
  169. package/src/lexicon/types/com/atproto/admin/getAccountInfos.ts +2 -2
  170. package/src/lexicon/types/com/atproto/admin/getInviteCodes.ts +2 -2
  171. package/src/lexicon/types/com/atproto/admin/getModerationEvent.ts +2 -2
  172. package/src/lexicon/types/com/atproto/admin/getRecord.ts +2 -2
  173. package/src/lexicon/types/com/atproto/admin/getRepo.ts +2 -2
  174. package/src/lexicon/types/com/atproto/admin/getSubjectStatus.ts +2 -2
  175. package/src/lexicon/types/com/atproto/admin/listCommunicationTemplates.ts +2 -2
  176. package/src/lexicon/types/com/atproto/admin/queryModerationEvents.ts +6 -2
  177. package/src/lexicon/types/com/atproto/admin/queryModerationStatuses.ts +4 -2
  178. package/src/lexicon/types/com/atproto/admin/searchRepos.ts +2 -2
  179. package/src/lexicon/types/com/atproto/admin/sendEmail.ts +2 -2
  180. package/src/lexicon/types/com/atproto/admin/updateAccountEmail.ts +1 -1
  181. package/src/lexicon/types/com/atproto/admin/updateAccountHandle.ts +1 -1
  182. package/src/lexicon/types/com/atproto/admin/updateCommunicationTemplate.ts +2 -2
  183. package/src/lexicon/types/com/atproto/admin/updateSubjectStatus.ts +2 -2
  184. package/src/lexicon/types/com/atproto/identity/resolveHandle.ts +2 -2
  185. package/src/lexicon/types/com/atproto/identity/updateHandle.ts +2 -1
  186. package/src/lexicon/types/com/atproto/label/queryLabels.ts +2 -2
  187. package/src/lexicon/types/com/atproto/label/subscribeLabels.ts +1 -1
  188. package/src/lexicon/types/com/atproto/moderation/createReport.ts +3 -2
  189. package/src/lexicon/types/com/atproto/repo/applyWrites.ts +7 -6
  190. package/src/lexicon/types/com/atproto/repo/createRecord.ts +6 -6
  191. package/src/lexicon/types/com/atproto/repo/deleteRecord.ts +3 -3
  192. package/src/lexicon/types/com/atproto/repo/describeRepo.ts +5 -2
  193. package/src/lexicon/types/com/atproto/repo/getRecord.ts +3 -3
  194. package/src/lexicon/types/com/atproto/repo/listRecords.ts +2 -2
  195. package/src/lexicon/types/com/atproto/repo/putRecord.ts +6 -6
  196. package/src/lexicon/types/com/atproto/repo/uploadBlob.ts +2 -2
  197. package/src/lexicon/types/com/atproto/server/confirmEmail.ts +1 -1
  198. package/src/lexicon/types/com/atproto/server/createAccount.ts +10 -2
  199. package/src/lexicon/types/com/atproto/server/createAppPassword.ts +3 -2
  200. package/src/lexicon/types/com/atproto/server/createInviteCode.ts +2 -2
  201. package/src/lexicon/types/com/atproto/server/createInviteCodes.ts +2 -2
  202. package/src/lexicon/types/com/atproto/server/createSession.ts +2 -2
  203. package/src/lexicon/types/com/atproto/server/deleteAccount.ts +1 -1
  204. package/src/lexicon/types/com/atproto/server/deleteSession.ts +1 -1
  205. package/src/lexicon/types/com/atproto/server/describeServer.ts +5 -2
  206. package/src/lexicon/types/com/atproto/server/getAccountInviteCodes.ts +3 -2
  207. package/src/lexicon/types/com/atproto/server/getSession.ts +2 -2
  208. package/src/lexicon/types/com/atproto/server/listAppPasswords.ts +2 -2
  209. package/src/lexicon/types/com/atproto/server/refreshSession.ts +2 -2
  210. package/src/lexicon/types/com/atproto/server/requestAccountDelete.ts +1 -1
  211. package/src/lexicon/types/com/atproto/server/requestEmailConfirmation.ts +1 -1
  212. package/src/lexicon/types/com/atproto/server/requestEmailUpdate.ts +2 -2
  213. package/src/lexicon/types/com/atproto/server/requestPasswordReset.ts +1 -1
  214. package/src/lexicon/types/com/atproto/server/reserveSigningKey.ts +4 -4
  215. package/src/lexicon/types/com/atproto/server/resetPassword.ts +1 -1
  216. package/src/lexicon/types/com/atproto/server/revokeAppPassword.ts +1 -1
  217. package/src/lexicon/types/com/atproto/server/updateEmail.ts +1 -1
  218. package/src/lexicon/types/com/atproto/sync/getBlob.ts +3 -3
  219. package/src/lexicon/types/com/atproto/sync/getBlocks.ts +2 -2
  220. package/src/lexicon/types/com/atproto/sync/getCheckout.ts +2 -2
  221. package/src/lexicon/types/com/atproto/sync/getHead.ts +2 -2
  222. package/src/lexicon/types/com/atproto/sync/getLatestCommit.ts +2 -2
  223. package/src/lexicon/types/com/atproto/sync/getRecord.ts +3 -2
  224. package/src/lexicon/types/com/atproto/sync/getRepo.ts +3 -3
  225. package/src/lexicon/types/com/atproto/sync/listBlobs.ts +2 -2
  226. package/src/lexicon/types/com/atproto/sync/listRepos.ts +3 -2
  227. package/src/lexicon/types/com/atproto/sync/notifyOfUpdate.ts +2 -2
  228. package/src/lexicon/types/com/atproto/sync/requestCrawl.ts +2 -2
  229. package/src/lexicon/types/com/atproto/sync/subscribeRepos.ts +17 -5
  230. package/src/lexicon/types/com/atproto/temp/checkSignupQueue.ts +2 -2
  231. package/src/lexicon/types/com/atproto/temp/fetchLabels.ts +2 -2
  232. package/src/lexicon/types/com/atproto/temp/importRepo.ts +2 -2
  233. package/src/lexicon/types/com/atproto/temp/pushBlob.ts +1 -1
  234. package/src/lexicon/types/com/atproto/temp/requestPhoneVerification.ts +1 -1
  235. package/src/lexicon/types/com/atproto/temp/transferAccount.ts +2 -2
  236. package/src/services/feed/index.ts +10 -4
  237. package/src/services/feed/views.ts +3 -1
  238. package/tests/auto-moderator/labeler.test.ts +2 -0
  239. package/tests/views/author-feed.test.ts +29 -9
@@ -303,6 +303,12 @@ export const schemaDict = {
303
303
  type: 'string',
304
304
  format: 'datetime',
305
305
  },
306
+ tags: {
307
+ type: 'array',
308
+ items: {
309
+ type: 'string',
310
+ },
311
+ },
306
312
  },
307
313
  },
308
314
  reportViewDetail: {
@@ -897,6 +903,33 @@ export const schemaDict = {
897
903
  },
898
904
  },
899
905
  },
906
+ modEventTag: {
907
+ type: 'object',
908
+ description: 'Add/Remove a tag on a subject',
909
+ required: ['add', 'remove'],
910
+ properties: {
911
+ add: {
912
+ type: 'array',
913
+ items: {
914
+ type: 'string',
915
+ },
916
+ description:
917
+ "Tags to be added to the subject. If already exists, won't be duplicated.",
918
+ },
919
+ remove: {
920
+ type: 'array',
921
+ items: {
922
+ type: 'string',
923
+ },
924
+ description:
925
+ "Tags to be removed to the subject. Ignores a tag If it doesn't exist, won't be duplicated.",
926
+ },
927
+ comment: {
928
+ type: 'string',
929
+ description: 'Additional comment about added/removed tags.',
930
+ },
931
+ },
932
+ },
900
933
  communicationTemplateView: {
901
934
  type: 'object',
902
935
  required: [
@@ -1075,6 +1108,7 @@ export const schemaDict = {
1075
1108
  'lex:com.atproto.admin.defs#modEventReverseTakedown',
1076
1109
  'lex:com.atproto.admin.defs#modEventUnmute',
1077
1110
  'lex:com.atproto.admin.defs#modEventEmail',
1111
+ 'lex:com.atproto.admin.defs#modEventTag',
1078
1112
  ],
1079
1113
  },
1080
1114
  subject: {
@@ -1503,6 +1537,22 @@ export const schemaDict = {
1503
1537
  description:
1504
1538
  'If specified, only events where all of these labels were removed are returned',
1505
1539
  },
1540
+ addedTags: {
1541
+ type: 'array',
1542
+ items: {
1543
+ type: 'string',
1544
+ },
1545
+ description:
1546
+ 'If specified, only events where all of these tags were added are returned',
1547
+ },
1548
+ removedTags: {
1549
+ type: 'array',
1550
+ items: {
1551
+ type: 'string',
1552
+ },
1553
+ description:
1554
+ 'If specified, only events where all of these tags were removed are returned',
1555
+ },
1506
1556
  reportTypes: {
1507
1557
  type: 'array',
1508
1558
  items: {
@@ -1620,6 +1670,18 @@ export const schemaDict = {
1620
1670
  maximum: 100,
1621
1671
  default: 50,
1622
1672
  },
1673
+ tags: {
1674
+ type: 'array',
1675
+ items: {
1676
+ type: 'string',
1677
+ },
1678
+ },
1679
+ excludeTags: {
1680
+ type: 'array',
1681
+ items: {
1682
+ type: 'string',
1683
+ },
1684
+ },
1623
1685
  cursor: {
1624
1686
  type: 'string',
1625
1687
  },
@@ -1912,7 +1974,7 @@ export const schemaDict = {
1912
1974
  defs: {
1913
1975
  main: {
1914
1976
  type: 'query',
1915
- description: 'Provides the DID of a repo.',
1977
+ description: 'Resolves a handle (domain name) to a DID.',
1916
1978
  parameters: {
1917
1979
  type: 'params',
1918
1980
  required: ['handle'],
@@ -1946,7 +2008,8 @@ export const schemaDict = {
1946
2008
  defs: {
1947
2009
  main: {
1948
2010
  type: 'procedure',
1949
- description: 'Updates the handle of the account.',
2011
+ description:
2012
+ "Updates the current account's handle. Verifies handle validity, and updates did:plc document if necessary. Implemented by PDS, and requires auth.",
1950
2013
  input: {
1951
2014
  encoding: 'application/json',
1952
2015
  schema: {
@@ -1956,6 +2019,7 @@ export const schemaDict = {
1956
2019
  handle: {
1957
2020
  type: 'string',
1958
2021
  format: 'handle',
2022
+ description: 'The new handle.',
1959
2023
  },
1960
2024
  },
1961
2025
  },
@@ -2046,7 +2110,8 @@ export const schemaDict = {
2046
2110
  defs: {
2047
2111
  main: {
2048
2112
  type: 'query',
2049
- description: 'Find labels relevant to the provided URI patterns.',
2113
+ description:
2114
+ 'Find labels relevant to the provided AT-URI patterns. Public endpoint for moderation services, though may return different or additional results with auth.',
2050
2115
  parameters: {
2051
2116
  type: 'params',
2052
2117
  required: ['uriPatterns'],
@@ -2107,13 +2172,14 @@ export const schemaDict = {
2107
2172
  defs: {
2108
2173
  main: {
2109
2174
  type: 'subscription',
2110
- description: 'Subscribe to label updates.',
2175
+ description:
2176
+ 'Subscribe to stream of labels (and negations). Public endpoint implemented by mod services. Uses same sequencing scheme as repo event stream.',
2111
2177
  parameters: {
2112
2178
  type: 'params',
2113
2179
  properties: {
2114
2180
  cursor: {
2115
2181
  type: 'integer',
2116
- description: 'The last known event to backfill from.',
2182
+ description: 'The last known event seq number to backfill from.',
2117
2183
  },
2118
2184
  },
2119
2185
  },
@@ -2169,7 +2235,8 @@ export const schemaDict = {
2169
2235
  defs: {
2170
2236
  main: {
2171
2237
  type: 'procedure',
2172
- description: 'Report a repo or a record.',
2238
+ description:
2239
+ 'Submit a moderation report regarding an atproto account or record. Implemented by moderation services (with PDS proxying), and requires auth.',
2173
2240
  input: {
2174
2241
  encoding: 'application/json',
2175
2242
  schema: {
@@ -2178,10 +2245,14 @@ export const schemaDict = {
2178
2245
  properties: {
2179
2246
  reasonType: {
2180
2247
  type: 'ref',
2248
+ description:
2249
+ 'Indicates the broad category of violation the report is for.',
2181
2250
  ref: 'lex:com.atproto.moderation.defs#reasonType',
2182
2251
  },
2183
2252
  reason: {
2184
2253
  type: 'string',
2254
+ description:
2255
+ 'Additional context about the content and violation.',
2185
2256
  },
2186
2257
  subject: {
2187
2258
  type: 'union',
@@ -2292,7 +2363,7 @@ export const schemaDict = {
2292
2363
  main: {
2293
2364
  type: 'procedure',
2294
2365
  description:
2295
- 'Apply a batch transaction of creates, updates, and deletes.',
2366
+ 'Apply a batch transaction of repository creates, updates, and deletes. Requires auth, implemented by PDS.',
2296
2367
  input: {
2297
2368
  encoding: 'application/json',
2298
2369
  schema: {
@@ -2302,12 +2373,14 @@ export const schemaDict = {
2302
2373
  repo: {
2303
2374
  type: 'string',
2304
2375
  format: 'at-identifier',
2305
- description: 'The handle or DID of the repo.',
2376
+ description:
2377
+ 'The handle or DID of the repo (aka, current account).',
2306
2378
  },
2307
2379
  validate: {
2308
2380
  type: 'boolean',
2309
2381
  default: true,
2310
- description: 'Flag for validating the records.',
2382
+ description:
2383
+ "Can be set to 'false' to skip Lexicon schema validation of record data, for all operations.",
2311
2384
  },
2312
2385
  writes: {
2313
2386
  type: 'array',
@@ -2323,6 +2396,8 @@ export const schemaDict = {
2323
2396
  },
2324
2397
  swapCommit: {
2325
2398
  type: 'string',
2399
+ description:
2400
+ 'If provided, the entire operation will fail if the current repo commit CID does not match this value. Used to prevent conflicting repo mutations.',
2326
2401
  format: 'cid',
2327
2402
  },
2328
2403
  },
@@ -2331,12 +2406,14 @@ export const schemaDict = {
2331
2406
  errors: [
2332
2407
  {
2333
2408
  name: 'InvalidSwap',
2409
+ description:
2410
+ "Indicates that the 'swapCommit' parameter did not match current commit.",
2334
2411
  },
2335
2412
  ],
2336
2413
  },
2337
2414
  create: {
2338
2415
  type: 'object',
2339
- description: 'Create a new record.',
2416
+ description: 'Operation which creates a new record.',
2340
2417
  required: ['collection', 'value'],
2341
2418
  properties: {
2342
2419
  collection: {
@@ -2354,7 +2431,7 @@ export const schemaDict = {
2354
2431
  },
2355
2432
  update: {
2356
2433
  type: 'object',
2357
- description: 'Update an existing record.',
2434
+ description: 'Operation which updates an existing record.',
2358
2435
  required: ['collection', 'rkey', 'value'],
2359
2436
  properties: {
2360
2437
  collection: {
@@ -2371,7 +2448,7 @@ export const schemaDict = {
2371
2448
  },
2372
2449
  delete: {
2373
2450
  type: 'object',
2374
- description: 'Delete an existing record.',
2451
+ description: 'Operation which deletes an existing record.',
2375
2452
  required: ['collection', 'rkey'],
2376
2453
  properties: {
2377
2454
  collection: {
@@ -2391,7 +2468,8 @@ export const schemaDict = {
2391
2468
  defs: {
2392
2469
  main: {
2393
2470
  type: 'procedure',
2394
- description: 'Create a new record.',
2471
+ description:
2472
+ 'Create a single new repository record. Requires auth, implemented by PDS.',
2395
2473
  input: {
2396
2474
  encoding: 'application/json',
2397
2475
  schema: {
@@ -2401,7 +2479,8 @@ export const schemaDict = {
2401
2479
  repo: {
2402
2480
  type: 'string',
2403
2481
  format: 'at-identifier',
2404
- description: 'The handle or DID of the repo.',
2482
+ description:
2483
+ 'The handle or DID of the repo (aka, current account).',
2405
2484
  },
2406
2485
  collection: {
2407
2486
  type: 'string',
@@ -2410,17 +2489,18 @@ export const schemaDict = {
2410
2489
  },
2411
2490
  rkey: {
2412
2491
  type: 'string',
2413
- description: 'The key of the record.',
2492
+ description: 'The Record Key.',
2414
2493
  maxLength: 15,
2415
2494
  },
2416
2495
  validate: {
2417
2496
  type: 'boolean',
2418
2497
  default: true,
2419
- description: 'Flag for validating the record.',
2498
+ description:
2499
+ "Can be set to 'false' to skip Lexicon schema validation of record data.",
2420
2500
  },
2421
2501
  record: {
2422
2502
  type: 'unknown',
2423
- description: 'The record to create.',
2503
+ description: 'The record itself. Must contain a $type field.',
2424
2504
  },
2425
2505
  swapCommit: {
2426
2506
  type: 'string',
@@ -2451,6 +2531,8 @@ export const schemaDict = {
2451
2531
  errors: [
2452
2532
  {
2453
2533
  name: 'InvalidSwap',
2534
+ description:
2535
+ "Indicates that 'swapCommit' didn't match current repo commit.",
2454
2536
  },
2455
2537
  ],
2456
2538
  },
@@ -2462,7 +2544,8 @@ export const schemaDict = {
2462
2544
  defs: {
2463
2545
  main: {
2464
2546
  type: 'procedure',
2465
- description: "Delete a record, or ensure it doesn't exist.",
2547
+ description:
2548
+ "Delete a repository record, or ensure it doesn't exist. Requires auth, implemented by PDS.",
2466
2549
  input: {
2467
2550
  encoding: 'application/json',
2468
2551
  schema: {
@@ -2472,7 +2555,8 @@ export const schemaDict = {
2472
2555
  repo: {
2473
2556
  type: 'string',
2474
2557
  format: 'at-identifier',
2475
- description: 'The handle or DID of the repo.',
2558
+ description:
2559
+ 'The handle or DID of the repo (aka, current account).',
2476
2560
  },
2477
2561
  collection: {
2478
2562
  type: 'string',
@@ -2481,7 +2565,7 @@ export const schemaDict = {
2481
2565
  },
2482
2566
  rkey: {
2483
2567
  type: 'string',
2484
- description: 'The key of the record.',
2568
+ description: 'The Record Key.',
2485
2569
  },
2486
2570
  swapRecord: {
2487
2571
  type: 'string',
@@ -2513,7 +2597,7 @@ export const schemaDict = {
2513
2597
  main: {
2514
2598
  type: 'query',
2515
2599
  description:
2516
- 'Get information about the repo, including the list of collections.',
2600
+ 'Get information about an account and repository, including the list of collections. Does not require auth.',
2517
2601
  parameters: {
2518
2602
  type: 'params',
2519
2603
  required: ['repo'],
@@ -2547,9 +2631,12 @@ export const schemaDict = {
2547
2631
  },
2548
2632
  didDoc: {
2549
2633
  type: 'unknown',
2634
+ description: 'The complete DID document for this account.',
2550
2635
  },
2551
2636
  collections: {
2552
2637
  type: 'array',
2638
+ description:
2639
+ 'List of all the collections (NSIDs) for which this repo contains at least one record.',
2553
2640
  items: {
2554
2641
  type: 'string',
2555
2642
  format: 'nsid',
@@ -2557,6 +2644,8 @@ export const schemaDict = {
2557
2644
  },
2558
2645
  handleIsCorrect: {
2559
2646
  type: 'boolean',
2647
+ description:
2648
+ 'Indicates if handle is currently valid (resolves bi-directionally)',
2560
2649
  },
2561
2650
  },
2562
2651
  },
@@ -2570,7 +2659,8 @@ export const schemaDict = {
2570
2659
  defs: {
2571
2660
  main: {
2572
2661
  type: 'query',
2573
- description: 'Get a record.',
2662
+ description:
2663
+ 'Get a single record from a repository. Does not require auth.',
2574
2664
  parameters: {
2575
2665
  type: 'params',
2576
2666
  required: ['repo', 'collection', 'rkey'],
@@ -2587,7 +2677,7 @@ export const schemaDict = {
2587
2677
  },
2588
2678
  rkey: {
2589
2679
  type: 'string',
2590
- description: 'The key of the record.',
2680
+ description: 'The Record Key.',
2591
2681
  },
2592
2682
  cid: {
2593
2683
  type: 'string',
@@ -2626,7 +2716,8 @@ export const schemaDict = {
2626
2716
  defs: {
2627
2717
  main: {
2628
2718
  type: 'query',
2629
- description: 'List a range of records in a collection.',
2719
+ description:
2720
+ 'List a range of records in a repository, matching a specific collection. Does not require auth.',
2630
2721
  parameters: {
2631
2722
  type: 'params',
2632
2723
  required: ['repo', 'collection'],
@@ -2712,7 +2803,8 @@ export const schemaDict = {
2712
2803
  defs: {
2713
2804
  main: {
2714
2805
  type: 'procedure',
2715
- description: 'Write a record, creating or updating it as needed.',
2806
+ description:
2807
+ 'Write a repository record, creating or updating it as needed. Requires auth, implemented by PDS.',
2716
2808
  input: {
2717
2809
  encoding: 'application/json',
2718
2810
  schema: {
@@ -2723,7 +2815,8 @@ export const schemaDict = {
2723
2815
  repo: {
2724
2816
  type: 'string',
2725
2817
  format: 'at-identifier',
2726
- description: 'The handle or DID of the repo.',
2818
+ description:
2819
+ 'The handle or DID of the repo (aka, current account).',
2727
2820
  },
2728
2821
  collection: {
2729
2822
  type: 'string',
@@ -2732,13 +2825,14 @@ export const schemaDict = {
2732
2825
  },
2733
2826
  rkey: {
2734
2827
  type: 'string',
2735
- description: 'The key of the record.',
2828
+ description: 'The Record Key.',
2736
2829
  maxLength: 15,
2737
2830
  },
2738
2831
  validate: {
2739
2832
  type: 'boolean',
2740
2833
  default: true,
2741
- description: 'Flag for validating the record.',
2834
+ description:
2835
+ "Can be set to 'false' to skip Lexicon schema validation of record data.",
2742
2836
  },
2743
2837
  record: {
2744
2838
  type: 'unknown',
@@ -2748,7 +2842,7 @@ export const schemaDict = {
2748
2842
  type: 'string',
2749
2843
  format: 'cid',
2750
2844
  description:
2751
- 'Compare and swap with the previous record by CID.',
2845
+ 'Compare and swap with the previous record by CID. WARNING: nullable and optional field; may cause problems with golang implementation',
2752
2846
  },
2753
2847
  swapCommit: {
2754
2848
  type: 'string',
@@ -2812,7 +2906,7 @@ export const schemaDict = {
2812
2906
  main: {
2813
2907
  type: 'procedure',
2814
2908
  description:
2815
- 'Upload a new blob to be added to repo in a later request.',
2909
+ 'Upload a new blob, to be referenced from a repository record. The blob will be deleted if it is not referenced within a time window (eg, minutes). Blob restrictions (mimetype, size, etc) are enforced when the reference is created. Requires auth, implemented by PDS.',
2816
2910
  input: {
2817
2911
  encoding: '*/*',
2818
2912
  },
@@ -2877,7 +2971,7 @@ export const schemaDict = {
2877
2971
  defs: {
2878
2972
  main: {
2879
2973
  type: 'procedure',
2880
- description: 'Create an account.',
2974
+ description: 'Create an account. Implemented by PDS.',
2881
2975
  input: {
2882
2976
  encoding: 'application/json',
2883
2977
  schema: {
@@ -2890,10 +2984,13 @@ export const schemaDict = {
2890
2984
  handle: {
2891
2985
  type: 'string',
2892
2986
  format: 'handle',
2987
+ description: 'Requested handle for the account.',
2893
2988
  },
2894
2989
  did: {
2895
2990
  type: 'string',
2896
2991
  format: 'did',
2992
+ description:
2993
+ 'Pre-existing atproto DID, being imported to a new account.',
2897
2994
  },
2898
2995
  inviteCode: {
2899
2996
  type: 'string',
@@ -2906,12 +3003,18 @@ export const schemaDict = {
2906
3003
  },
2907
3004
  password: {
2908
3005
  type: 'string',
3006
+ description:
3007
+ 'Initial account password. May need to meet instance-specific password strength requirements.',
2909
3008
  },
2910
3009
  recoveryKey: {
2911
3010
  type: 'string',
3011
+ description:
3012
+ 'DID PLC rotation key (aka, recovery key) to be included in PLC creation operation.',
2912
3013
  },
2913
3014
  plcOp: {
2914
3015
  type: 'unknown',
3016
+ description:
3017
+ 'A signed DID PLC operation to be submitted as part of importing an existing account to this instance. NOTE: this optional field may be updated when full account migration is implemented.',
2915
3018
  },
2916
3019
  },
2917
3020
  },
@@ -2920,6 +3023,8 @@ export const schemaDict = {
2920
3023
  encoding: 'application/json',
2921
3024
  schema: {
2922
3025
  type: 'object',
3026
+ description:
3027
+ 'Account login session returned on successful account creation.',
2923
3028
  required: ['accessJwt', 'refreshJwt', 'handle', 'did'],
2924
3029
  properties: {
2925
3030
  accessJwt: {
@@ -2935,9 +3040,11 @@ export const schemaDict = {
2935
3040
  did: {
2936
3041
  type: 'string',
2937
3042
  format: 'did',
3043
+ description: 'The DID of the new account.',
2938
3044
  },
2939
3045
  didDoc: {
2940
3046
  type: 'unknown',
3047
+ description: 'Complete DID document.',
2941
3048
  },
2942
3049
  },
2943
3050
  },
@@ -2983,6 +3090,8 @@ export const schemaDict = {
2983
3090
  properties: {
2984
3091
  name: {
2985
3092
  type: 'string',
3093
+ description:
3094
+ 'A short name for the App Password, to help distinguish them.',
2986
3095
  },
2987
3096
  },
2988
3097
  },
@@ -3250,7 +3359,8 @@ export const schemaDict = {
3250
3359
  defs: {
3251
3360
  main: {
3252
3361
  type: 'procedure',
3253
- description: "Delete an actor's account with a token and password.",
3362
+ description:
3363
+ "Delete an actor's account with a token and password. Can only be called after requesting a deletion token. Requires auth.",
3254
3364
  input: {
3255
3365
  encoding: 'application/json',
3256
3366
  schema: {
@@ -3287,7 +3397,7 @@ export const schemaDict = {
3287
3397
  defs: {
3288
3398
  main: {
3289
3399
  type: 'procedure',
3290
- description: 'Delete the current session.',
3400
+ description: 'Delete the current session. Requires auth.',
3291
3401
  },
3292
3402
  },
3293
3403
  },
@@ -3298,7 +3408,7 @@ export const schemaDict = {
3298
3408
  main: {
3299
3409
  type: 'query',
3300
3410
  description:
3301
- "Get a document describing the service's accounts configuration.",
3411
+ "Describes the server's account creation requirements and capabilities. Implemented by PDS.",
3302
3412
  output: {
3303
3413
  encoding: 'application/json',
3304
3414
  schema: {
@@ -3307,18 +3417,25 @@ export const schemaDict = {
3307
3417
  properties: {
3308
3418
  inviteCodeRequired: {
3309
3419
  type: 'boolean',
3420
+ description:
3421
+ 'If true, an invite code must be supplied to create an account on this instance.',
3310
3422
  },
3311
3423
  phoneVerificationRequired: {
3312
3424
  type: 'boolean',
3425
+ description:
3426
+ 'If true, a phone verification token must be supplied to create an account on this instance.',
3313
3427
  },
3314
3428
  availableUserDomains: {
3315
3429
  type: 'array',
3430
+ description:
3431
+ 'List of domain suffixes that can be used in account handles.',
3316
3432
  items: {
3317
3433
  type: 'string',
3318
3434
  },
3319
3435
  },
3320
3436
  links: {
3321
3437
  type: 'ref',
3438
+ description: 'URLs of service policy documents.',
3322
3439
  ref: 'lex:com.atproto.server.describeServer#links',
3323
3440
  },
3324
3441
  },
@@ -3344,7 +3461,8 @@ export const schemaDict = {
3344
3461
  defs: {
3345
3462
  main: {
3346
3463
  type: 'query',
3347
- description: 'Get all invite codes for a given account.',
3464
+ description:
3465
+ 'Get all invite codes for the current account. Requires auth.',
3348
3466
  parameters: {
3349
3467
  type: 'params',
3350
3468
  properties: {
@@ -3355,6 +3473,8 @@ export const schemaDict = {
3355
3473
  createAvailable: {
3356
3474
  type: 'boolean',
3357
3475
  default: true,
3476
+ description:
3477
+ "Controls whether any new 'earned' but not 'created' invites should be created.",
3358
3478
  },
3359
3479
  },
3360
3480
  },
@@ -3388,7 +3508,8 @@ export const schemaDict = {
3388
3508
  defs: {
3389
3509
  main: {
3390
3510
  type: 'query',
3391
- description: 'Get information about the current session.',
3511
+ description:
3512
+ 'Get information about the current auth session. Requires auth.',
3392
3513
  output: {
3393
3514
  encoding: 'application/json',
3394
3515
  schema: {
@@ -3468,7 +3589,8 @@ export const schemaDict = {
3468
3589
  defs: {
3469
3590
  main: {
3470
3591
  type: 'procedure',
3471
- description: 'Refresh an authentication session.',
3592
+ description:
3593
+ "Refresh an authentication session. Requires auth using the 'refreshJwt' (not the 'accessJwt').",
3472
3594
  output: {
3473
3595
  encoding: 'application/json',
3474
3596
  schema: {
@@ -3574,7 +3696,8 @@ export const schemaDict = {
3574
3696
  defs: {
3575
3697
  main: {
3576
3698
  type: 'procedure',
3577
- description: 'Reserve a repo signing key for account creation.',
3699
+ description:
3700
+ 'Reserve a repo signing key, for use with account creation. Necessary so that a DID PLC update operation can be constructed during an account migraiton. Public and does not require auth; implemented by PDS. NOTE: this endpoint may change when full account migration is implemented.',
3578
3701
  input: {
3579
3702
  encoding: 'application/json',
3580
3703
  schema: {
@@ -3582,7 +3705,8 @@ export const schemaDict = {
3582
3705
  properties: {
3583
3706
  did: {
3584
3707
  type: 'string',
3585
- description: 'The did to reserve a new did:key for',
3708
+ format: 'did',
3709
+ description: 'The DID to reserve a key for.',
3586
3710
  },
3587
3711
  },
3588
3712
  },
@@ -3595,7 +3719,8 @@ export const schemaDict = {
3595
3719
  properties: {
3596
3720
  signingKey: {
3597
3721
  type: 'string',
3598
- description: 'Public signing key in the form of a did:key.',
3722
+ description:
3723
+ 'The public key for the reserved signing key, in did:key serialization.',
3599
3724
  },
3600
3725
  },
3601
3726
  },
@@ -3702,7 +3827,8 @@ export const schemaDict = {
3702
3827
  defs: {
3703
3828
  main: {
3704
3829
  type: 'query',
3705
- description: 'Get a blob associated with a given repo.',
3830
+ description:
3831
+ 'Get a blob associated with a given account. Returns the full blob as originally uploaded. Does not require auth; implemented by PDS.',
3706
3832
  parameters: {
3707
3833
  type: 'params',
3708
3834
  required: ['did', 'cid'],
@@ -3710,7 +3836,7 @@ export const schemaDict = {
3710
3836
  did: {
3711
3837
  type: 'string',
3712
3838
  format: 'did',
3713
- description: 'The DID of the repo.',
3839
+ description: 'The DID of the account.',
3714
3840
  },
3715
3841
  cid: {
3716
3842
  type: 'string',
@@ -3731,7 +3857,8 @@ export const schemaDict = {
3731
3857
  defs: {
3732
3858
  main: {
3733
3859
  type: 'query',
3734
- description: 'Get blocks from a given repo.',
3860
+ description:
3861
+ 'Get data blocks from a given repo, by CID. For example, intermediate MST nodes, or records. Does not require auth; implemented by PDS.',
3735
3862
  parameters: {
3736
3863
  type: 'params',
3737
3864
  required: ['did', 'cids'],
@@ -3826,7 +3953,8 @@ export const schemaDict = {
3826
3953
  defs: {
3827
3954
  main: {
3828
3955
  type: 'query',
3829
- description: 'Get the current commit CID & revision of the repo.',
3956
+ description:
3957
+ 'Get the current commit CID & revision of the specified repo. Does not require auth.',
3830
3958
  parameters: {
3831
3959
  type: 'params',
3832
3960
  required: ['did'],
@@ -3869,7 +3997,7 @@ export const schemaDict = {
3869
3997
  main: {
3870
3998
  type: 'query',
3871
3999
  description:
3872
- 'Get blocks needed for existence or non-existence of record.',
4000
+ 'Get data blocks needed to prove the existence or non-existence of record in the current version of repo. Does not require auth.',
3873
4001
  parameters: {
3874
4002
  type: 'params',
3875
4003
  required: ['did', 'collection', 'rkey'],
@@ -3885,6 +4013,7 @@ export const schemaDict = {
3885
4013
  },
3886
4014
  rkey: {
3887
4015
  type: 'string',
4016
+ description: 'Record Key',
3888
4017
  },
3889
4018
  commit: {
3890
4019
  type: 'string',
@@ -3906,7 +4035,7 @@ export const schemaDict = {
3906
4035
  main: {
3907
4036
  type: 'query',
3908
4037
  description:
3909
- "Gets the DID's repo, optionally catching up from a specific revision.",
4038
+ "Download a repository export as CAR file. Optionally only a 'diff' since a previous revision. Does not require auth; implemented by PDS.",
3910
4039
  parameters: {
3911
4040
  type: 'params',
3912
4041
  required: ['did'],
@@ -3918,7 +4047,8 @@ export const schemaDict = {
3918
4047
  },
3919
4048
  since: {
3920
4049
  type: 'string',
3921
- description: 'The revision of the repo to catch up from.',
4050
+ description:
4051
+ "The revision ('rev') of the repo to create a diff from.",
3922
4052
  },
3923
4053
  },
3924
4054
  },
@@ -3934,7 +4064,8 @@ export const schemaDict = {
3934
4064
  defs: {
3935
4065
  main: {
3936
4066
  type: 'query',
3937
- description: 'List blob CIDs since some revision.',
4067
+ description:
4068
+ 'List blob CIDso for an account, since some repo revision. Does not require auth; implemented by PDS.',
3938
4069
  parameters: {
3939
4070
  type: 'params',
3940
4071
  required: ['did'],
@@ -3987,7 +4118,8 @@ export const schemaDict = {
3987
4118
  defs: {
3988
4119
  main: {
3989
4120
  type: 'query',
3990
- description: 'List DIDs and root CIDs of hosted repos.',
4121
+ description:
4122
+ 'Enumerates all the DID, rev, and commit CID for all repos hosted by this service. Does not require auth; implemented by PDS and Relay.',
3991
4123
  parameters: {
3992
4124
  type: 'params',
3993
4125
  properties: {
@@ -4033,6 +4165,7 @@ export const schemaDict = {
4033
4165
  head: {
4034
4166
  type: 'string',
4035
4167
  format: 'cid',
4168
+ description: 'Current repo commit CID',
4036
4169
  },
4037
4170
  rev: {
4038
4171
  type: 'string',
@@ -4048,7 +4181,7 @@ export const schemaDict = {
4048
4181
  main: {
4049
4182
  type: 'procedure',
4050
4183
  description:
4051
- 'Notify a crawling service of a recent update; often when a long break between updates causes the connection with the crawling service to break.',
4184
+ 'Notify a crawling service of a recent update, and that crawling should resume. Intended use is after a gap between repo stream events caused the crawling service to disconnect. Does not require auth; implemented by Relay.',
4052
4185
  input: {
4053
4186
  encoding: 'application/json',
4054
4187
  schema: {
@@ -4058,7 +4191,7 @@ export const schemaDict = {
4058
4191
  hostname: {
4059
4192
  type: 'string',
4060
4193
  description:
4061
- 'Hostname of the service that is notifying of update.',
4194
+ 'Hostname of the current service (usually a PDS) that is notifying of update.',
4062
4195
  },
4063
4196
  },
4064
4197
  },
@@ -4072,7 +4205,8 @@ export const schemaDict = {
4072
4205
  defs: {
4073
4206
  main: {
4074
4207
  type: 'procedure',
4075
- description: 'Request a service to persistently crawl hosted repos.',
4208
+ description:
4209
+ 'Request a service to persistently crawl hosted repos. Expected use is new PDS instances declaring their existence to Relays. Does not require auth.',
4076
4210
  input: {
4077
4211
  encoding: 'application/json',
4078
4212
  schema: {
@@ -4082,7 +4216,7 @@ export const schemaDict = {
4082
4216
  hostname: {
4083
4217
  type: 'string',
4084
4218
  description:
4085
- 'Hostname of the service that is requesting to be crawled.',
4219
+ 'Hostname of the current service (eg, PDS) that is requesting to be crawled.',
4086
4220
  },
4087
4221
  },
4088
4222
  },
@@ -4096,13 +4230,14 @@ export const schemaDict = {
4096
4230
  defs: {
4097
4231
  main: {
4098
4232
  type: 'subscription',
4099
- description: 'Subscribe to repo updates.',
4233
+ description:
4234
+ 'Repository event stream, aka Firehose endpoint. Outputs repo commits with diff data, and identity update events, for all repositories on the current server. See the atproto specifications for details around stream sequencing, repo versioning, CAR diff format, and more. Public and does not require auth; implemented by PDS and Relay.',
4100
4235
  parameters: {
4101
4236
  type: 'params',
4102
4237
  properties: {
4103
4238
  cursor: {
4104
4239
  type: 'integer',
4105
- description: 'The last known event to backfill from.',
4240
+ description: 'The last known event seq number to backfill from.',
4106
4241
  },
4107
4242
  },
4108
4243
  },
@@ -4124,11 +4259,15 @@ export const schemaDict = {
4124
4259
  },
4125
4260
  {
4126
4261
  name: 'ConsumerTooSlow',
4262
+ description:
4263
+ 'If the consumer of the stream can not keep up with events, and a backlog gets too large, the server will drop the connection.',
4127
4264
  },
4128
4265
  ],
4129
4266
  },
4130
4267
  commit: {
4131
4268
  type: 'object',
4269
+ description:
4270
+ 'Represents an update of repository state. Note that empty commits are allowed, which include no repo data changes, but an update to rev and signature.',
4132
4271
  required: [
4133
4272
  'seq',
4134
4273
  'rebase',
@@ -4146,34 +4285,45 @@ export const schemaDict = {
4146
4285
  properties: {
4147
4286
  seq: {
4148
4287
  type: 'integer',
4288
+ description: 'The stream sequence number of this message.',
4149
4289
  },
4150
4290
  rebase: {
4151
4291
  type: 'boolean',
4292
+ description: 'DEPRECATED -- unused',
4152
4293
  },
4153
4294
  tooBig: {
4154
4295
  type: 'boolean',
4296
+ description:
4297
+ 'Indicates that this commit contained too many ops, or data size was too large. Consumers will need to make a separate request to get missing data.',
4155
4298
  },
4156
4299
  repo: {
4157
4300
  type: 'string',
4158
4301
  format: 'did',
4302
+ description: 'The repo this event comes from.',
4159
4303
  },
4160
4304
  commit: {
4161
4305
  type: 'cid-link',
4306
+ description: 'Repo commit object CID.',
4162
4307
  },
4163
4308
  prev: {
4164
4309
  type: 'cid-link',
4310
+ description:
4311
+ 'DEPRECATED -- unused. WARNING -- nullable and optional; stick with optional to ensure golang interoperability.',
4165
4312
  },
4166
4313
  rev: {
4167
4314
  type: 'string',
4168
- description: 'The rev of the emitted commit.',
4315
+ description:
4316
+ 'The rev of the emitted commit. Note that this information is also in the commit object included in blocks, unless this is a tooBig event.',
4169
4317
  },
4170
4318
  since: {
4171
4319
  type: 'string',
4172
- description: 'The rev of the last emitted commit from this repo.',
4320
+ description:
4321
+ 'The rev of the last emitted commit from this repo (if any).',
4173
4322
  },
4174
4323
  blocks: {
4175
4324
  type: 'bytes',
4176
- description: 'CAR file containing relevant blocks.',
4325
+ description:
4326
+ 'CAR file containing relevant blocks, as a diff since the previous repo state.',
4177
4327
  maxLength: 1000000,
4178
4328
  },
4179
4329
  ops: {
@@ -4181,6 +4331,8 @@ export const schemaDict = {
4181
4331
  items: {
4182
4332
  type: 'ref',
4183
4333
  ref: 'lex:com.atproto.sync.subscribeRepos#repoOp',
4334
+ description:
4335
+ 'List of repo mutation operations in this commit (eg, records created, updated, or deleted).',
4184
4336
  },
4185
4337
  maxLength: 200,
4186
4338
  },
@@ -4188,16 +4340,22 @@ export const schemaDict = {
4188
4340
  type: 'array',
4189
4341
  items: {
4190
4342
  type: 'cid-link',
4343
+ description:
4344
+ 'List of new blobs (by CID) referenced by records in this commit.',
4191
4345
  },
4192
4346
  },
4193
4347
  time: {
4194
4348
  type: 'string',
4195
4349
  format: 'datetime',
4350
+ description:
4351
+ 'Timestamp of when this message was originally broadcast.',
4196
4352
  },
4197
4353
  },
4198
4354
  },
4199
4355
  handle: {
4200
4356
  type: 'object',
4357
+ description:
4358
+ "Represents an update of the account's handle, or transition to/from invalid state.",
4201
4359
  required: ['seq', 'did', 'handle', 'time'],
4202
4360
  properties: {
4203
4361
  seq: {
@@ -4219,6 +4377,8 @@ export const schemaDict = {
4219
4377
  },
4220
4378
  migrate: {
4221
4379
  type: 'object',
4380
+ description:
4381
+ 'Represents an account moving from one PDS instance to another. NOTE: not implemented; full account migration may introduce a new message instead.',
4222
4382
  required: ['seq', 'did', 'migrateTo', 'time'],
4223
4383
  nullable: ['migrateTo'],
4224
4384
  properties: {
@@ -4240,6 +4400,7 @@ export const schemaDict = {
4240
4400
  },
4241
4401
  tombstone: {
4242
4402
  type: 'object',
4403
+ description: 'Indicates that an account has been deleted.',
4243
4404
  required: ['seq', 'did', 'time'],
4244
4405
  properties: {
4245
4406
  seq: {
@@ -4270,8 +4431,7 @@ export const schemaDict = {
4270
4431
  },
4271
4432
  repoOp: {
4272
4433
  type: 'object',
4273
- description:
4274
- "A repo operation, ie a write of a single record. For creates and updates, CID is the record's CID as of this operation. For deletes, it's null.",
4434
+ description: 'A repo operation, ie a mutation of a single record.',
4275
4435
  required: ['action', 'path', 'cid'],
4276
4436
  nullable: ['cid'],
4277
4437
  properties: {
@@ -4284,6 +4444,8 @@ export const schemaDict = {
4284
4444
  },
4285
4445
  cid: {
4286
4446
  type: 'cid-link',
4447
+ description:
4448
+ 'For creates and updates, the new record CID. For deletions, null.',
4287
4449
  },
4288
4450
  },
4289
4451
  },
@@ -4324,7 +4486,7 @@ export const schemaDict = {
4324
4486
  main: {
4325
4487
  type: 'query',
4326
4488
  description:
4327
- 'Fetch all labels from a labeler created after a certain date.',
4489
+ 'Fetch all labels from a labeler created after a certain date. DEPRECATED: use queryLabels or subscribeLabels instead',
4328
4490
  parameters: {
4329
4491
  type: 'params',
4330
4492
  properties: {
@@ -4440,7 +4602,8 @@ export const schemaDict = {
4440
4602
  defs: {
4441
4603
  main: {
4442
4604
  type: 'procedure',
4443
- description: 'Transfer an account.',
4605
+ description:
4606
+ 'Transfer an account. NOTE: temporary method, necessarily how account migration will be implemented.',
4444
4607
  input: {
4445
4608
  encoding: 'application/json',
4446
4609
  schema: {
@@ -4513,7 +4676,6 @@ export const schemaDict = {
4513
4676
  AppBskyActorDefs: {
4514
4677
  lexicon: 1,
4515
4678
  id: 'app.bsky.actor.defs',
4516
- description: 'A reference to an actor in the network.',
4517
4679
  defs: {
4518
4680
  profileViewBasic: {
4519
4681
  type: 'object',
@@ -4646,6 +4808,8 @@ export const schemaDict = {
4646
4808
  },
4647
4809
  viewerState: {
4648
4810
  type: 'object',
4811
+ description:
4812
+ "Metadata about the requesting account's relationship with the subject account. Only has meaningful content for authed requests.",
4649
4813
  properties: {
4650
4814
  muted: {
4651
4815
  type: 'boolean',
@@ -4731,6 +4895,9 @@ export const schemaDict = {
4731
4895
  format: 'at-uri',
4732
4896
  },
4733
4897
  },
4898
+ timelineIndex: {
4899
+ type: 'integer',
4900
+ },
4734
4901
  },
4735
4902
  },
4736
4903
  personalDetailsPref: {
@@ -4815,7 +4982,8 @@ export const schemaDict = {
4815
4982
  defs: {
4816
4983
  main: {
4817
4984
  type: 'query',
4818
- description: 'Get private preferences attached to the account.',
4985
+ description:
4986
+ 'Get private preferences attached to the current account. Expected use is synchronization between multiple devices, and import/export during account migration. Requires auth.',
4819
4987
  parameters: {
4820
4988
  type: 'params',
4821
4989
  properties: {},
@@ -4842,7 +5010,8 @@ export const schemaDict = {
4842
5010
  defs: {
4843
5011
  main: {
4844
5012
  type: 'query',
4845
- description: 'Get detailed profile view of an actor.',
5013
+ description:
5014
+ 'Get detailed profile view of an actor. Does not require auth, but contains relevant metadata with auth.',
4846
5015
  parameters: {
4847
5016
  type: 'params',
4848
5017
  required: ['actor'],
@@ -4850,6 +5019,7 @@ export const schemaDict = {
4850
5019
  actor: {
4851
5020
  type: 'string',
4852
5021
  format: 'at-identifier',
5022
+ description: 'Handle or DID of account to fetch profile of.',
4853
5023
  },
4854
5024
  },
4855
5025
  },
@@ -4909,7 +5079,8 @@ export const schemaDict = {
4909
5079
  defs: {
4910
5080
  main: {
4911
5081
  type: 'query',
4912
- description: 'Get a list of suggested actors, used for discovery.',
5082
+ description:
5083
+ 'Get a list of suggested actors. Expected use is discovery of accounts to follow during new account onboarding.',
4913
5084
  parameters: {
4914
5085
  type: 'params',
4915
5086
  properties: {
@@ -4952,7 +5123,7 @@ export const schemaDict = {
4952
5123
  defs: {
4953
5124
  main: {
4954
5125
  type: 'record',
4955
- description: 'A declaration of a profile.',
5126
+ description: 'A declaration of a Bluesky account profile.',
4956
5127
  key: 'literal:self',
4957
5128
  record: {
4958
5129
  type: 'object',
@@ -4964,21 +5135,28 @@ export const schemaDict = {
4964
5135
  },
4965
5136
  description: {
4966
5137
  type: 'string',
5138
+ description: 'Free-form profile description text.',
4967
5139
  maxGraphemes: 256,
4968
5140
  maxLength: 2560,
4969
5141
  },
4970
5142
  avatar: {
4971
5143
  type: 'blob',
5144
+ description:
5145
+ "Small image to be displayed next to posts from account. AKA, 'profile picture'",
4972
5146
  accept: ['image/png', 'image/jpeg'],
4973
5147
  maxSize: 1000000,
4974
5148
  },
4975
5149
  banner: {
4976
5150
  type: 'blob',
5151
+ description:
5152
+ 'Larger horizontal image to display behind profile view.',
4977
5153
  accept: ['image/png', 'image/jpeg'],
4978
5154
  maxSize: 1000000,
4979
5155
  },
4980
5156
  labels: {
4981
5157
  type: 'union',
5158
+ description:
5159
+ 'Self-label values, specific to the Bluesky application, on the overall account.',
4982
5160
  refs: ['lex:com.atproto.label.defs#selfLabels'],
4983
5161
  },
4984
5162
  },
@@ -5015,7 +5193,8 @@ export const schemaDict = {
5015
5193
  defs: {
5016
5194
  main: {
5017
5195
  type: 'query',
5018
- description: 'Find actors (profiles) matching search criteria.',
5196
+ description:
5197
+ 'Find actors (profiles) matching search criteria. Does not require auth.',
5019
5198
  parameters: {
5020
5199
  type: 'params',
5021
5200
  properties: {
@@ -5067,7 +5246,8 @@ export const schemaDict = {
5067
5246
  defs: {
5068
5247
  main: {
5069
5248
  type: 'query',
5070
- description: 'Find actor suggestions for a prefix search term.',
5249
+ description:
5250
+ 'Find actor suggestions for a prefix search term. Expected use is for auto-completion during text field entry. Does not require auth.',
5071
5251
  parameters: {
5072
5252
  type: 'params',
5073
5253
  properties: {
@@ -5109,11 +5289,11 @@ export const schemaDict = {
5109
5289
  AppBskyEmbedExternal: {
5110
5290
  lexicon: 1,
5111
5291
  id: 'app.bsky.embed.external',
5112
- description:
5113
- 'A representation of some externally linked content, embedded in another form of content.',
5114
5292
  defs: {
5115
5293
  main: {
5116
5294
  type: 'object',
5295
+ description:
5296
+ "A representation of some externally linked content (eg, a URL and 'card'), embedded in a Bluesky record (eg, a post).",
5117
5297
  required: ['external'],
5118
5298
  properties: {
5119
5299
  external: {
@@ -5177,7 +5357,7 @@ export const schemaDict = {
5177
5357
  AppBskyEmbedImages: {
5178
5358
  lexicon: 1,
5179
5359
  id: 'app.bsky.embed.images',
5180
- description: 'A set of images embedded in some other form of content.',
5360
+ description: 'A set of images embedded in a Bluesky record (eg, a post).',
5181
5361
  defs: {
5182
5362
  main: {
5183
5363
  type: 'object',
@@ -5204,6 +5384,8 @@ export const schemaDict = {
5204
5384
  },
5205
5385
  alt: {
5206
5386
  type: 'string',
5387
+ description:
5388
+ 'Alt text description of the image, for accessibility.',
5207
5389
  },
5208
5390
  aspectRatio: {
5209
5391
  type: 'ref',
@@ -5247,12 +5429,18 @@ export const schemaDict = {
5247
5429
  properties: {
5248
5430
  thumb: {
5249
5431
  type: 'string',
5432
+ description:
5433
+ 'Fully-qualified URL where a thumbnail of the image can be fetched. For example, CDN location provided by the App View.',
5250
5434
  },
5251
5435
  fullsize: {
5252
5436
  type: 'string',
5437
+ description:
5438
+ 'Fully-qualified URL where a large version of the image can be fetched. May or may not be the exact original blob. For example, CDN location provided by the App View.',
5253
5439
  },
5254
5440
  alt: {
5255
5441
  type: 'string',
5442
+ description:
5443
+ 'Alt text description of the image, for accessibility.',
5256
5444
  },
5257
5445
  aspectRatio: {
5258
5446
  type: 'ref',
@@ -5266,7 +5454,7 @@ export const schemaDict = {
5266
5454
  lexicon: 1,
5267
5455
  id: 'app.bsky.embed.record',
5268
5456
  description:
5269
- 'A representation of a record embedded in another form of content.',
5457
+ 'A representation of a record embedded in a Bluesky record (eg, a post). For example, a quote-post, or sharing a feed generator record.',
5270
5458
  defs: {
5271
5459
  main: {
5272
5460
  type: 'object',
@@ -5312,6 +5500,7 @@ export const schemaDict = {
5312
5500
  },
5313
5501
  value: {
5314
5502
  type: 'unknown',
5503
+ description: 'The record data itself.',
5315
5504
  },
5316
5505
  labels: {
5317
5506
  type: 'array',
@@ -5376,7 +5565,7 @@ export const schemaDict = {
5376
5565
  lexicon: 1,
5377
5566
  id: 'app.bsky.embed.recordWithMedia',
5378
5567
  description:
5379
- 'A representation of a record embedded in another form of content, alongside other compatible embeds.',
5568
+ 'A representation of a record embedded in a Bluesky record (eg, a post), alongside other compatible embeds. For example, a quote post and image, or a quote post and external URL card.',
5380
5569
  defs: {
5381
5570
  main: {
5382
5571
  type: 'object',
@@ -5475,6 +5664,8 @@ export const schemaDict = {
5475
5664
  },
5476
5665
  viewerState: {
5477
5666
  type: 'object',
5667
+ description:
5668
+ "Metadata about the requesting account's relationship with the subject content. Only has meaningful content for authed requests.",
5478
5669
  properties: {
5479
5670
  repost: {
5480
5671
  type: 'string',
@@ -5735,7 +5926,7 @@ export const schemaDict = {
5735
5926
  main: {
5736
5927
  type: 'query',
5737
5928
  description:
5738
- 'Get information about a feed generator, including policies and offered feed URIs.',
5929
+ 'Get information about a feed generator, including policies and offered feed URIs. Does not require auth; implemented by Feed Generator services (not App View).',
5739
5930
  output: {
5740
5931
  encoding: 'application/json',
5741
5932
  schema: {
@@ -5790,7 +5981,8 @@ export const schemaDict = {
5790
5981
  defs: {
5791
5982
  main: {
5792
5983
  type: 'record',
5793
- description: 'A declaration of the existence of a feed generator.',
5984
+ description:
5985
+ 'Record declaring of the existence of a feed generator, and containing metadata about it. The record can exist in any repository.',
5794
5986
  key: 'any',
5795
5987
  record: {
5796
5988
  type: 'object',
@@ -5824,6 +6016,7 @@ export const schemaDict = {
5824
6016
  },
5825
6017
  labels: {
5826
6018
  type: 'union',
6019
+ description: 'Self-label values',
5827
6020
  refs: ['lex:com.atproto.label.defs#selfLabels'],
5828
6021
  },
5829
6022
  createdAt: {
@@ -5841,7 +6034,8 @@ export const schemaDict = {
5841
6034
  defs: {
5842
6035
  main: {
5843
6036
  type: 'query',
5844
- description: 'Get a list of feeds created by the actor.',
6037
+ description:
6038
+ "Get a list of feeds (feed generator records) created by the actor (in the actor's repo).",
5845
6039
  parameters: {
5846
6040
  type: 'params',
5847
6041
  required: ['actor'],
@@ -5889,7 +6083,8 @@ export const schemaDict = {
5889
6083
  defs: {
5890
6084
  main: {
5891
6085
  type: 'query',
5892
- description: 'Get a list of posts liked by an actor.',
6086
+ description:
6087
+ 'Get a list of posts liked by an actor. Does not require auth.',
5893
6088
  parameters: {
5894
6089
  type: 'params',
5895
6090
  required: ['actor'],
@@ -5945,7 +6140,8 @@ export const schemaDict = {
5945
6140
  defs: {
5946
6141
  main: {
5947
6142
  type: 'query',
5948
- description: "Get a view of an actor's feed.",
6143
+ description:
6144
+ "Get a view of an actor's 'author feed' (post and reposts by the author). Does not require auth.",
5949
6145
  parameters: {
5950
6146
  type: 'params',
5951
6147
  required: ['actor'],
@@ -5965,6 +6161,8 @@ export const schemaDict = {
5965
6161
  },
5966
6162
  filter: {
5967
6163
  type: 'string',
6164
+ description:
6165
+ 'Combinations of post/repost types to include in response.',
5968
6166
  knownValues: [
5969
6167
  'posts_with_replies',
5970
6168
  'posts_no_replies',
@@ -6012,7 +6210,7 @@ export const schemaDict = {
6012
6210
  main: {
6013
6211
  type: 'query',
6014
6212
  description:
6015
- "Get a hydrated feed from an actor's selected feed generator.",
6213
+ "Get a hydrated feed from an actor's selected feed generator. Implemented by App View.",
6016
6214
  parameters: {
6017
6215
  type: 'params',
6018
6216
  required: ['feed'],
@@ -6065,7 +6263,8 @@ export const schemaDict = {
6065
6263
  defs: {
6066
6264
  main: {
6067
6265
  type: 'query',
6068
- description: 'Get information about a feed generator.',
6266
+ description:
6267
+ 'Get information about a feed generator. Implemented by AppView.',
6069
6268
  parameters: {
6070
6269
  type: 'params',
6071
6270
  required: ['feed'],
@@ -6073,6 +6272,7 @@ export const schemaDict = {
6073
6272
  feed: {
6074
6273
  type: 'string',
6075
6274
  format: 'at-uri',
6275
+ description: 'AT-URI of the feed generator record.',
6076
6276
  },
6077
6277
  },
6078
6278
  },
@@ -6088,9 +6288,13 @@ export const schemaDict = {
6088
6288
  },
6089
6289
  isOnline: {
6090
6290
  type: 'boolean',
6291
+ description:
6292
+ 'Indicates whether the feed generator service has been online recently, or else seems to be inactive.',
6091
6293
  },
6092
6294
  isValid: {
6093
6295
  type: 'boolean',
6296
+ description:
6297
+ 'Indicates whether the feed generator service is compatible with the record declaration.',
6094
6298
  },
6095
6299
  },
6096
6300
  },
@@ -6143,7 +6347,8 @@ export const schemaDict = {
6143
6347
  defs: {
6144
6348
  main: {
6145
6349
  type: 'query',
6146
- description: 'Get a skeleton of a feed provided by a feed generator.',
6350
+ description:
6351
+ 'Get a skeleton of a feed provided by a feed generator. Auth is optional, depending on provider requirements, and provides the DID of the requester. Implemented by Feed Generator Service.',
6147
6352
  parameters: {
6148
6353
  type: 'params',
6149
6354
  required: ['feed'],
@@ -6151,6 +6356,8 @@ export const schemaDict = {
6151
6356
  feed: {
6152
6357
  type: 'string',
6153
6358
  format: 'at-uri',
6359
+ description:
6360
+ 'Reference to feed generator record describing the specific feed being requested.',
6154
6361
  },
6155
6362
  limit: {
6156
6363
  type: 'integer',
@@ -6196,7 +6403,8 @@ export const schemaDict = {
6196
6403
  defs: {
6197
6404
  main: {
6198
6405
  type: 'query',
6199
- description: 'Get the list of likes.',
6406
+ description:
6407
+ 'Get like records which reference a subject (by AT-URI and CID).',
6200
6408
  parameters: {
6201
6409
  type: 'params',
6202
6410
  required: ['uri'],
@@ -6204,10 +6412,13 @@ export const schemaDict = {
6204
6412
  uri: {
6205
6413
  type: 'string',
6206
6414
  format: 'at-uri',
6415
+ description: 'AT-URI of the subject (eg, a post record).',
6207
6416
  },
6208
6417
  cid: {
6209
6418
  type: 'string',
6210
6419
  format: 'cid',
6420
+ description:
6421
+ 'CID of the subject record (aka, specific version of record), to filter likes.',
6211
6422
  },
6212
6423
  limit: {
6213
6424
  type: 'integer',
@@ -6274,7 +6485,8 @@ export const schemaDict = {
6274
6485
  defs: {
6275
6486
  main: {
6276
6487
  type: 'query',
6277
- description: 'Get a view of a recent posts from actors in a list.',
6488
+ description:
6489
+ 'Get a feed of recent posts from a list (posts and reposts from any actors on the list). Does not require auth.',
6278
6490
  parameters: {
6279
6491
  type: 'params',
6280
6492
  required: ['list'],
@@ -6282,6 +6494,7 @@ export const schemaDict = {
6282
6494
  list: {
6283
6495
  type: 'string',
6284
6496
  format: 'at-uri',
6497
+ description: 'Reference (AT-URI) to the list record.',
6285
6498
  },
6286
6499
  limit: {
6287
6500
  type: 'integer',
@@ -6327,7 +6540,8 @@ export const schemaDict = {
6327
6540
  defs: {
6328
6541
  main: {
6329
6542
  type: 'query',
6330
- description: 'Get posts in a thread.',
6543
+ description:
6544
+ 'Get posts in a thread. Does not require auth, but additional metadata and filtering will be applied for authed requests.',
6331
6545
  parameters: {
6332
6546
  type: 'params',
6333
6547
  required: ['uri'],
@@ -6335,15 +6549,20 @@ export const schemaDict = {
6335
6549
  uri: {
6336
6550
  type: 'string',
6337
6551
  format: 'at-uri',
6552
+ description: 'Reference (AT-URI) to post record.',
6338
6553
  },
6339
6554
  depth: {
6340
6555
  type: 'integer',
6556
+ description:
6557
+ 'How many levels of reply depth should be included in response.',
6341
6558
  default: 6,
6342
6559
  minimum: 0,
6343
6560
  maximum: 1000,
6344
6561
  },
6345
6562
  parentHeight: {
6346
6563
  type: 'integer',
6564
+ description:
6565
+ 'How many levels of parent (and grandparent, etc) post to include.',
6347
6566
  default: 80,
6348
6567
  minimum: 0,
6349
6568
  maximum: 1000,
@@ -6381,13 +6600,15 @@ export const schemaDict = {
6381
6600
  defs: {
6382
6601
  main: {
6383
6602
  type: 'query',
6384
- description: "Get a view of an actor's feed.",
6603
+ description:
6604
+ "Gets post views for a specified list of posts (by AT-URI). This is sometimes referred to as 'hydrating' a 'feed skeleton'.",
6385
6605
  parameters: {
6386
6606
  type: 'params',
6387
6607
  required: ['uris'],
6388
6608
  properties: {
6389
6609
  uris: {
6390
6610
  type: 'array',
6611
+ description: 'List of post AT-URIs to return hydrated views for.',
6391
6612
  items: {
6392
6613
  type: 'string',
6393
6614
  format: 'at-uri',
@@ -6421,7 +6642,7 @@ export const schemaDict = {
6421
6642
  defs: {
6422
6643
  main: {
6423
6644
  type: 'query',
6424
- description: 'Get a list of reposts.',
6645
+ description: 'Get a list of reposts for a given post.',
6425
6646
  parameters: {
6426
6647
  type: 'params',
6427
6648
  required: ['uri'],
@@ -6429,10 +6650,13 @@ export const schemaDict = {
6429
6650
  uri: {
6430
6651
  type: 'string',
6431
6652
  format: 'at-uri',
6653
+ description: 'Reference (AT-URI) of post record',
6432
6654
  },
6433
6655
  cid: {
6434
6656
  type: 'string',
6435
6657
  format: 'cid',
6658
+ description:
6659
+ 'If supplied, filters to reposts of specific version (by CID) of the post record.',
6436
6660
  },
6437
6661
  limit: {
6438
6662
  type: 'integer',
@@ -6481,7 +6705,8 @@ export const schemaDict = {
6481
6705
  defs: {
6482
6706
  main: {
6483
6707
  type: 'query',
6484
- description: 'Get a list of suggested feeds for the viewer.',
6708
+ description:
6709
+ 'Get a list of suggested feeds (feed generators) for the requesting account.',
6485
6710
  parameters: {
6486
6711
  type: 'params',
6487
6712
  properties: {
@@ -6524,12 +6749,15 @@ export const schemaDict = {
6524
6749
  defs: {
6525
6750
  main: {
6526
6751
  type: 'query',
6527
- description: "Get a view of the actor's home timeline.",
6752
+ description:
6753
+ "Get a view of the requesting account's home timeline. This is expected to be some form of reverse-chronological feed.",
6528
6754
  parameters: {
6529
6755
  type: 'params',
6530
6756
  properties: {
6531
6757
  algorithm: {
6532
6758
  type: 'string',
6759
+ description:
6760
+ "Variant 'algorithm' for timeline. Implementation-specific. NOTE: most feed flexibility has been moved to feed generator mechanism.",
6533
6761
  },
6534
6762
  limit: {
6535
6763
  type: 'integer',
@@ -6570,7 +6798,7 @@ export const schemaDict = {
6570
6798
  defs: {
6571
6799
  main: {
6572
6800
  type: 'record',
6573
- description: 'A declaration of a like.',
6801
+ description: "Record declaring a 'like' of a piece of subject content.",
6574
6802
  key: 'tid',
6575
6803
  record: {
6576
6804
  type: 'object',
@@ -6595,7 +6823,7 @@ export const schemaDict = {
6595
6823
  defs: {
6596
6824
  main: {
6597
6825
  type: 'record',
6598
- description: 'A declaration of a post.',
6826
+ description: 'Record containing a Bluesky post.',
6599
6827
  key: 'tid',
6600
6828
  record: {
6601
6829
  type: 'object',
@@ -6605,10 +6833,12 @@ export const schemaDict = {
6605
6833
  type: 'string',
6606
6834
  maxLength: 3000,
6607
6835
  maxGraphemes: 300,
6836
+ description:
6837
+ 'The primary post content. May be an empty string, if there are embeds.',
6608
6838
  },
6609
6839
  entities: {
6610
6840
  type: 'array',
6611
- description: 'Deprecated: replaced by app.bsky.richtext.facet.',
6841
+ description: 'DEPRECATED: replaced by app.bsky.richtext.facet.',
6612
6842
  items: {
6613
6843
  type: 'ref',
6614
6844
  ref: 'lex:app.bsky.feed.post#entity',
@@ -6616,6 +6846,8 @@ export const schemaDict = {
6616
6846
  },
6617
6847
  facets: {
6618
6848
  type: 'array',
6849
+ description:
6850
+ 'Annotations of text (mentions, URLs, hashtags, etc)',
6619
6851
  items: {
6620
6852
  type: 'ref',
6621
6853
  ref: 'lex:app.bsky.richtext.facet',
@@ -6636,6 +6868,8 @@ export const schemaDict = {
6636
6868
  },
6637
6869
  langs: {
6638
6870
  type: 'array',
6871
+ description:
6872
+ 'Indicates human language of post primary text content.',
6639
6873
  maxLength: 3,
6640
6874
  items: {
6641
6875
  type: 'string',
@@ -6644,21 +6878,25 @@ export const schemaDict = {
6644
6878
  },
6645
6879
  labels: {
6646
6880
  type: 'union',
6881
+ description:
6882
+ 'Self-label values for this post. Effectively content warnings.',
6647
6883
  refs: ['lex:com.atproto.label.defs#selfLabels'],
6648
6884
  },
6649
6885
  tags: {
6650
6886
  type: 'array',
6887
+ description: 'Additional non-inline tags describing this post.',
6651
6888
  maxLength: 8,
6652
6889
  items: {
6653
6890
  type: 'string',
6654
6891
  maxLength: 640,
6655
6892
  maxGraphemes: 64,
6656
6893
  },
6657
- description: 'Additional non-inline tags describing this post.',
6658
6894
  },
6659
6895
  createdAt: {
6660
6896
  type: 'string',
6661
6897
  format: 'datetime',
6898
+ description:
6899
+ 'Client-declared timestamp when this post was originally created.',
6662
6900
  },
6663
6901
  },
6664
6902
  },
@@ -6718,7 +6956,8 @@ export const schemaDict = {
6718
6956
  id: 'app.bsky.feed.repost',
6719
6957
  defs: {
6720
6958
  main: {
6721
- description: 'A declaration of a repost.',
6959
+ description:
6960
+ "Record representing a 'repost' of an existing Bluesky post.",
6722
6961
  type: 'record',
6723
6962
  key: 'tid',
6724
6963
  record: {
@@ -6744,7 +6983,8 @@ export const schemaDict = {
6744
6983
  defs: {
6745
6984
  main: {
6746
6985
  type: 'query',
6747
- description: 'Find posts matching search criteria.',
6986
+ description:
6987
+ 'Find posts matching search criteria, returning views of those posts.',
6748
6988
  parameters: {
6749
6989
  type: 'params',
6750
6990
  required: ['q'],
@@ -6807,7 +7047,7 @@ export const schemaDict = {
6807
7047
  type: 'record',
6808
7048
  key: 'tid',
6809
7049
  description:
6810
- "Defines interaction gating rules for a thread. The rkey of the threadgate record should match the rkey of the thread's root post.",
7050
+ "Record defining interaction gating rules for a thread (aka, reply controls). The record key (rkey) of the threadgate record must match the record key of the thread's root post, and that record must be in the same repository..",
6811
7051
  record: {
6812
7052
  type: 'object',
6813
7053
  required: ['post', 'createdAt'],
@@ -6815,6 +7055,7 @@ export const schemaDict = {
6815
7055
  post: {
6816
7056
  type: 'string',
6817
7057
  format: 'at-uri',
7058
+ description: 'Reference (AT-URI) to the post record.',
6818
7059
  },
6819
7060
  allow: {
6820
7061
  type: 'array',
@@ -6864,7 +7105,8 @@ export const schemaDict = {
6864
7105
  defs: {
6865
7106
  main: {
6866
7107
  type: 'record',
6867
- description: 'A declaration of a block.',
7108
+ description:
7109
+ "Record declaring a 'block' relationship against another account. NOTE: blocks are public in Bluesky; see blog posts for details.",
6868
7110
  key: 'tid',
6869
7111
  record: {
6870
7112
  type: 'object',
@@ -6873,6 +7115,7 @@ export const schemaDict = {
6873
7115
  subject: {
6874
7116
  type: 'string',
6875
7117
  format: 'did',
7118
+ description: 'DID of the account to be blocked.',
6876
7119
  },
6877
7120
  createdAt: {
6878
7121
  type: 'string',
@@ -7061,7 +7304,8 @@ export const schemaDict = {
7061
7304
  defs: {
7062
7305
  main: {
7063
7306
  type: 'record',
7064
- description: 'A declaration of a social follow.',
7307
+ description:
7308
+ "Record declaring a social 'follow' relationship of another account. Duplicate follows will be ignored by the AppView.",
7065
7309
  key: 'tid',
7066
7310
  record: {
7067
7311
  type: 'object',
@@ -7086,7 +7330,8 @@ export const schemaDict = {
7086
7330
  defs: {
7087
7331
  main: {
7088
7332
  type: 'query',
7089
- description: 'Get a list of who the actor is blocking.',
7333
+ description:
7334
+ 'Enumerates which accounts the requesting account is currently blocking. Requires auth.',
7090
7335
  parameters: {
7091
7336
  type: 'params',
7092
7337
  properties: {
@@ -7129,7 +7374,8 @@ export const schemaDict = {
7129
7374
  defs: {
7130
7375
  main: {
7131
7376
  type: 'query',
7132
- description: "Get a list of an actor's followers.",
7377
+ description:
7378
+ 'Enumerates accounts which follow a specified account (actor).',
7133
7379
  parameters: {
7134
7380
  type: 'params',
7135
7381
  required: ['actor'],
@@ -7181,7 +7427,8 @@ export const schemaDict = {
7181
7427
  defs: {
7182
7428
  main: {
7183
7429
  type: 'query',
7184
- description: 'Get a list of who the actor follows.',
7430
+ description:
7431
+ 'Enumerates accounts which a specified account (actor) follows.',
7185
7432
  parameters: {
7186
7433
  type: 'params',
7187
7434
  required: ['actor'],
@@ -7233,7 +7480,8 @@ export const schemaDict = {
7233
7480
  defs: {
7234
7481
  main: {
7235
7482
  type: 'query',
7236
- description: 'Get a list of actors.',
7483
+ description:
7484
+ "Gets a 'view' (with additional context) of a specified list.",
7237
7485
  parameters: {
7238
7486
  type: 'params',
7239
7487
  required: ['list'],
@@ -7241,6 +7489,7 @@ export const schemaDict = {
7241
7489
  list: {
7242
7490
  type: 'string',
7243
7491
  format: 'at-uri',
7492
+ description: 'Reference (AT-URI) of the list record to hydrate.',
7244
7493
  },
7245
7494
  limit: {
7246
7495
  type: 'integer',
@@ -7285,7 +7534,8 @@ export const schemaDict = {
7285
7534
  defs: {
7286
7535
  main: {
7287
7536
  type: 'query',
7288
- description: 'Get lists that the actor is blocking.',
7537
+ description:
7538
+ 'Get mod lists that the requesting account (actor) is blocking. Requires auth.',
7289
7539
  parameters: {
7290
7540
  type: 'params',
7291
7541
  properties: {
@@ -7328,7 +7578,8 @@ export const schemaDict = {
7328
7578
  defs: {
7329
7579
  main: {
7330
7580
  type: 'query',
7331
- description: 'Get lists that the actor is muting.',
7581
+ description:
7582
+ 'Enumerates mod lists that the requesting account (actor) currently has muted. Requires auth.',
7332
7583
  parameters: {
7333
7584
  type: 'params',
7334
7585
  properties: {
@@ -7371,7 +7622,8 @@ export const schemaDict = {
7371
7622
  defs: {
7372
7623
  main: {
7373
7624
  type: 'query',
7374
- description: 'Get a list of lists that belong to an actor.',
7625
+ description:
7626
+ 'Enumerates the lists created by a specified account (actor).',
7375
7627
  parameters: {
7376
7628
  type: 'params',
7377
7629
  required: ['actor'],
@@ -7379,6 +7631,7 @@ export const schemaDict = {
7379
7631
  actor: {
7380
7632
  type: 'string',
7381
7633
  format: 'at-identifier',
7634
+ description: 'The account (actor) to enumerate lists from.',
7382
7635
  },
7383
7636
  limit: {
7384
7637
  type: 'integer',
@@ -7419,7 +7672,8 @@ export const schemaDict = {
7419
7672
  defs: {
7420
7673
  main: {
7421
7674
  type: 'query',
7422
- description: 'Get a list of who the actor mutes.',
7675
+ description:
7676
+ 'Enumerates accounts that the requesting account (actor) currently has muted. Requires auth.',
7423
7677
  parameters: {
7424
7678
  type: 'params',
7425
7679
  properties: {
@@ -7463,7 +7717,7 @@ export const schemaDict = {
7463
7717
  main: {
7464
7718
  type: 'query',
7465
7719
  description:
7466
- 'Enumerates public relationships between one account, and a list of other accounts',
7720
+ 'Enumerates public relationships between one account, and a list of other accounts. Does not require auth.',
7467
7721
  parameters: {
7468
7722
  type: 'params',
7469
7723
  required: ['actor'],
@@ -7471,9 +7725,12 @@ export const schemaDict = {
7471
7725
  actor: {
7472
7726
  type: 'string',
7473
7727
  format: 'at-identifier',
7728
+ description: 'Primary account requesting relationships for.',
7474
7729
  },
7475
7730
  others: {
7476
7731
  type: 'array',
7732
+ description:
7733
+ "List of 'other' accounts to be related back to the primary.",
7477
7734
  maxLength: 30,
7478
7735
  items: {
7479
7736
  type: 'string',
@@ -7521,7 +7778,8 @@ export const schemaDict = {
7521
7778
  defs: {
7522
7779
  main: {
7523
7780
  type: 'query',
7524
- description: 'Get suggested follows related to a given actor.',
7781
+ description:
7782
+ 'Enumerates follows similar to a given account (actor). Expected use is to recommend additional accounts immediately after following one account.',
7525
7783
  parameters: {
7526
7784
  type: 'params',
7527
7785
  required: ['actor'],
@@ -7557,7 +7815,8 @@ export const schemaDict = {
7557
7815
  defs: {
7558
7816
  main: {
7559
7817
  type: 'record',
7560
- description: 'A declaration of a list of actors.',
7818
+ description:
7819
+ 'Record representing a list of accounts (actors). Scope includes both moderation-oriented lists and curration-oriented lists.',
7561
7820
  key: 'tid',
7562
7821
  record: {
7563
7822
  type: 'object',
@@ -7565,12 +7824,15 @@ export const schemaDict = {
7565
7824
  properties: {
7566
7825
  purpose: {
7567
7826
  type: 'ref',
7827
+ description:
7828
+ 'Defines the purpose of the list (aka, moderation-oriented or curration-oriented)',
7568
7829
  ref: 'lex:app.bsky.graph.defs#listPurpose',
7569
7830
  },
7570
7831
  name: {
7571
7832
  type: 'string',
7572
7833
  maxLength: 64,
7573
7834
  minLength: 1,
7835
+ description: 'Display name for list; can not be empty.',
7574
7836
  },
7575
7837
  description: {
7576
7838
  type: 'string',
@@ -7608,7 +7870,8 @@ export const schemaDict = {
7608
7870
  defs: {
7609
7871
  main: {
7610
7872
  type: 'record',
7611
- description: 'A block of an entire list of actors.',
7873
+ description:
7874
+ 'Record representing a block relationship against an entire an entire list of accounts (actors).',
7612
7875
  key: 'tid',
7613
7876
  record: {
7614
7877
  type: 'object',
@@ -7617,6 +7880,7 @@ export const schemaDict = {
7617
7880
  subject: {
7618
7881
  type: 'string',
7619
7882
  format: 'at-uri',
7883
+ description: 'Reference (AT-URI) to the mod list record.',
7620
7884
  },
7621
7885
  createdAt: {
7622
7886
  type: 'string',
@@ -7633,7 +7897,8 @@ export const schemaDict = {
7633
7897
  defs: {
7634
7898
  main: {
7635
7899
  type: 'record',
7636
- description: 'An item under a declared list of actors.',
7900
+ description:
7901
+ "Record representing an account's inclusion on a specific list. The AppView will ignore duplicate listitem records.",
7637
7902
  key: 'tid',
7638
7903
  record: {
7639
7904
  type: 'object',
@@ -7642,10 +7907,13 @@ export const schemaDict = {
7642
7907
  subject: {
7643
7908
  type: 'string',
7644
7909
  format: 'did',
7910
+ description: 'The account which is included on the list.',
7645
7911
  },
7646
7912
  list: {
7647
7913
  type: 'string',
7648
7914
  format: 'at-uri',
7915
+ description:
7916
+ 'Reference (AT-URI) to the list record (app.bsky.graph.list).',
7649
7917
  },
7650
7918
  createdAt: {
7651
7919
  type: 'string',
@@ -7662,7 +7930,8 @@ export const schemaDict = {
7662
7930
  defs: {
7663
7931
  main: {
7664
7932
  type: 'procedure',
7665
- description: 'Mute an actor by DID or handle.',
7933
+ description:
7934
+ 'Creates a mute relationship for the specified account. Mutes are private in Bluesky. Requires auth.',
7666
7935
  input: {
7667
7936
  encoding: 'application/json',
7668
7937
  schema: {
@@ -7685,7 +7954,8 @@ export const schemaDict = {
7685
7954
  defs: {
7686
7955
  main: {
7687
7956
  type: 'procedure',
7688
- description: 'Mute a list of actors.',
7957
+ description:
7958
+ 'Creates a mute relationship for the specified list of accounts. Mutes are private in Bluesky. Requires auth.',
7689
7959
  input: {
7690
7960
  encoding: 'application/json',
7691
7961
  schema: {
@@ -7708,7 +7978,7 @@ export const schemaDict = {
7708
7978
  defs: {
7709
7979
  main: {
7710
7980
  type: 'procedure',
7711
- description: 'Unmute an actor by DID or handle.',
7981
+ description: 'Unmutes the specified account. Requires auth.',
7712
7982
  input: {
7713
7983
  encoding: 'application/json',
7714
7984
  schema: {
@@ -7731,7 +8001,7 @@ export const schemaDict = {
7731
8001
  defs: {
7732
8002
  main: {
7733
8003
  type: 'procedure',
7734
- description: 'Unmute a list of actors.',
8004
+ description: 'Unmutes the specified list of accounts. Requires auth.',
7735
8005
  input: {
7736
8006
  encoding: 'application/json',
7737
8007
  schema: {
@@ -7754,7 +8024,8 @@ export const schemaDict = {
7754
8024
  defs: {
7755
8025
  main: {
7756
8026
  type: 'query',
7757
- description: 'Get the count of unread notifications.',
8027
+ description:
8028
+ 'Count the number of unread notifications for the requesting account. Requires auth.',
7758
8029
  parameters: {
7759
8030
  type: 'params',
7760
8031
  properties: {
@@ -7785,7 +8056,8 @@ export const schemaDict = {
7785
8056
  defs: {
7786
8057
  main: {
7787
8058
  type: 'query',
7788
- description: 'Get a list of notifications.',
8059
+ description:
8060
+ 'Enumerate notifications for the requesting account. Requires auth.',
7789
8061
  parameters: {
7790
8062
  type: 'params',
7791
8063
  properties: {
@@ -7896,7 +8168,8 @@ export const schemaDict = {
7896
8168
  defs: {
7897
8169
  main: {
7898
8170
  type: 'procedure',
7899
- description: 'Register for push notifications with a service.',
8171
+ description:
8172
+ 'Register to receive push notifications, via a specified service, for the requesting account. Requires auth.',
7900
8173
  input: {
7901
8174
  encoding: 'application/json',
7902
8175
  schema: {
@@ -7929,7 +8202,8 @@ export const schemaDict = {
7929
8202
  defs: {
7930
8203
  main: {
7931
8204
  type: 'procedure',
7932
- description: 'Notify server that the user has seen notifications.',
8205
+ description:
8206
+ 'Notify server that the requesting account has seen notifications. Requires auth.',
7933
8207
  input: {
7934
8208
  encoding: 'application/json',
7935
8209
  schema: {
@@ -7952,6 +8226,7 @@ export const schemaDict = {
7952
8226
  defs: {
7953
8227
  main: {
7954
8228
  type: 'object',
8229
+ description: 'Annotation of a sub-string within rich text.',
7955
8230
  required: ['index', 'features'],
7956
8231
  properties: {
7957
8232
  index: {
@@ -7973,7 +8248,8 @@ export const schemaDict = {
7973
8248
  },
7974
8249
  mention: {
7975
8250
  type: 'object',
7976
- description: 'A facet feature for actor mentions.',
8251
+ description:
8252
+ "Facet feature for mention of another account. The text is usually a handle, including a '@' prefix, but the facet reference is a DID.",
7977
8253
  required: ['did'],
7978
8254
  properties: {
7979
8255
  did: {
@@ -7984,7 +8260,8 @@ export const schemaDict = {
7984
8260
  },
7985
8261
  link: {
7986
8262
  type: 'object',
7987
- description: 'A facet feature for links.',
8263
+ description:
8264
+ 'Facet feature for a URL. The text URL may have been simplified or truncated, but the facet reference should be a complete URL.',
7988
8265
  required: ['uri'],
7989
8266
  properties: {
7990
8267
  uri: {
@@ -7995,7 +8272,8 @@ export const schemaDict = {
7995
8272
  },
7996
8273
  tag: {
7997
8274
  type: 'object',
7998
- description: 'A hashtag.',
8275
+ description:
8276
+ "Facet feature for a hashtag. The text usually includes a '#' prefix, but the facet reference should not (except in the case of 'double hash tags').",
7999
8277
  required: ['tag'],
8000
8278
  properties: {
8001
8279
  tag: {
@@ -8008,7 +8286,7 @@ export const schemaDict = {
8008
8286
  byteSlice: {
8009
8287
  type: 'object',
8010
8288
  description:
8011
- 'A text segment. Start is inclusive, end is exclusive. Indices are for utf8-encoded strings.',
8289
+ 'Specifies the sub-string range a facet feature applies to. Start index is inclusive, end index is exclusive. Indices are zero-indexed, counting bytes of the UTF-8 encoded text. NOTE: some languages, like Javascript, use UTF-16 or Unicode codepoints for string slice indexing; in these languages, convert to byte arrays before working with facets.',
8012
8290
  required: ['byteStart', 'byteEnd'],
8013
8291
  properties: {
8014
8292
  byteStart: {