@atproto/api 0.20.39 → 0.20.40

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 (40) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/client/index.d.ts +43 -0
  3. package/dist/client/index.d.ts.map +1 -1
  4. package/dist/client/index.js +86 -0
  5. package/dist/client/index.js.map +1 -1
  6. package/dist/client/lexicons.d.ts +782 -2
  7. package/dist/client/lexicons.d.ts.map +1 -1
  8. package/dist/client/lexicons.js +454 -1
  9. package/dist/client/lexicons.js.map +1 -1
  10. package/dist/client/types/app/bsky/actor/contentVisibilityDeclaration.d.ts +14 -0
  11. package/dist/client/types/app/bsky/actor/contentVisibilityDeclaration.d.ts.map +1 -0
  12. package/dist/client/types/app/bsky/actor/contentVisibilityDeclaration.js +18 -0
  13. package/dist/client/types/app/bsky/actor/contentVisibilityDeclaration.js.map +1 -0
  14. package/dist/client/types/app/bsky/video/abortUpload.d.ts +34 -0
  15. package/dist/client/types/app/bsky/video/abortUpload.d.ts.map +1 -0
  16. package/dist/client/types/app/bsky/video/abortUpload.js +30 -0
  17. package/dist/client/types/app/bsky/video/abortUpload.js.map +1 -0
  18. package/dist/client/types/app/bsky/video/defs.d.ts +1 -1
  19. package/dist/client/types/app/bsky/video/defs.d.ts.map +1 -1
  20. package/dist/client/types/app/bsky/video/defs.js.map +1 -1
  21. package/dist/client/types/app/bsky/video/finishUpload.d.ts +51 -0
  22. package/dist/client/types/app/bsky/video/finishUpload.d.ts.map +1 -0
  23. package/dist/client/types/app/bsky/video/finishUpload.js +72 -0
  24. package/dist/client/types/app/bsky/video/finishUpload.js.map +1 -0
  25. package/dist/client/types/app/bsky/video/getUploadStatus.d.ts +36 -0
  26. package/dist/client/types/app/bsky/video/getUploadStatus.d.ts.map +1 -0
  27. package/dist/client/types/app/bsky/video/getUploadStatus.js +23 -0
  28. package/dist/client/types/app/bsky/video/getUploadStatus.js.map +1 -0
  29. package/dist/client/types/app/bsky/video/startUpload.d.ts +62 -0
  30. package/dist/client/types/app/bsky/video/startUpload.d.ts.map +1 -0
  31. package/dist/client/types/app/bsky/video/startUpload.js +72 -0
  32. package/dist/client/types/app/bsky/video/startUpload.js.map +1 -0
  33. package/dist/client/types/app/bsky/video/uploadPart.d.ts +53 -0
  34. package/dist/client/types/app/bsky/video/uploadPart.d.ts.map +1 -0
  35. package/dist/client/types/app/bsky/video/uploadPart.js +79 -0
  36. package/dist/client/types/app/bsky/video/uploadPart.js.map +1 -0
  37. package/dist/moderation/const/labels.d.ts +1 -1
  38. package/dist/moderation/const/labels.d.ts.map +1 -1
  39. package/dist/moderation/const/labels.js.map +1 -1
  40. package/package.json +4 -4
@@ -4,6 +4,27 @@
4
4
  import { Lexicons, ValidationError, } from '@atproto/lexicon';
5
5
  import { is$typed, maybe$typed } from './util.js';
6
6
  export const schemaDict = {
7
+ AppBskyActorContentVisibilityDeclaration: {
8
+ lexicon: 1,
9
+ id: 'app.bsky.actor.contentVisibilityDeclaration',
10
+ defs: {
11
+ main: {
12
+ type: 'record',
13
+ description: "A declaration of an account's preferences for appearing in content discovery surfaces.",
14
+ key: 'literal:self',
15
+ record: {
16
+ type: 'object',
17
+ required: ['hideFromAlgorithmicRecommendations'],
18
+ properties: {
19
+ hideFromAlgorithmicRecommendations: {
20
+ type: 'boolean',
21
+ description: 'Whether the account requests that its posts be hidden from algorithmic recommendations. Consumers must treat a missing record as false.',
22
+ },
23
+ },
24
+ },
25
+ },
26
+ },
27
+ },
7
28
  AppBskyActorDefs: {
8
29
  lexicon: 1,
9
30
  id: 'app.bsky.actor.defs',
@@ -9833,6 +9854,65 @@ export const schemaDict = {
9833
9854
  },
9834
9855
  },
9835
9856
  },
9857
+ AppBskyVideoAbortUpload: {
9858
+ lexicon: 1,
9859
+ id: 'app.bsky.video.abortUpload',
9860
+ defs: {
9861
+ main: {
9862
+ type: 'procedure',
9863
+ description: 'Abort an upload only while it is created, releasing its quota reservation immediately. Terminal sessions are unchanged and return their terminal outcome. A finishing session returns UploadNotReady.',
9864
+ input: {
9865
+ encoding: 'application/json',
9866
+ schema: {
9867
+ type: 'object',
9868
+ required: ['jobId'],
9869
+ properties: {
9870
+ jobId: {
9871
+ type: 'string',
9872
+ minLength: 1,
9873
+ maxLength: 256,
9874
+ },
9875
+ },
9876
+ },
9877
+ },
9878
+ output: {
9879
+ encoding: 'application/json',
9880
+ schema: {
9881
+ type: 'object',
9882
+ required: ['state'],
9883
+ properties: {
9884
+ state: {
9885
+ type: 'string',
9886
+ maxLength: 32,
9887
+ knownValues: ['aborted', 'completed', 'failed', 'expired'],
9888
+ },
9889
+ completedJobId: {
9890
+ type: 'string',
9891
+ minLength: 1,
9892
+ maxLength: 256,
9893
+ description: 'Present only when state is completed.',
9894
+ },
9895
+ failureReason: {
9896
+ type: 'string',
9897
+ maxLength: 1024,
9898
+ description: 'Present only when state is failed.',
9899
+ },
9900
+ },
9901
+ },
9902
+ },
9903
+ errors: [
9904
+ {
9905
+ name: 'UploadNotFound',
9906
+ description: 'The job ID is unknown or aged out of retention; known terminal sessions return their outcome and are never reported as not found.',
9907
+ },
9908
+ {
9909
+ name: 'UploadNotReady',
9910
+ description: 'A finish is in progress; check getUploadStatus and retry.',
9911
+ },
9912
+ ],
9913
+ },
9914
+ },
9915
+ },
9836
9916
  AppBskyVideoDefs: {
9837
9917
  lexicon: 1,
9838
9918
  id: 'app.bsky.video.defs',
@@ -9851,7 +9931,17 @@ export const schemaDict = {
9851
9931
  state: {
9852
9932
  type: 'string',
9853
9933
  description: 'The state of the video processing job. All values not listed as a known value indicate that the job is in process.',
9854
- knownValues: ['JOB_STATE_COMPLETED', 'JOB_STATE_FAILED'],
9934
+ knownValues: [
9935
+ 'JOB_STATE_CREATED',
9936
+ 'JOB_STATE_ENCODING',
9937
+ 'JOB_STATE_ENCODED',
9938
+ 'JOB_STATE_SCANNING',
9939
+ 'JOB_STATE_SCANNED',
9940
+ 'JOB_STATE_UPLOADING',
9941
+ 'JOB_STATE_UPLOADED',
9942
+ 'JOB_STATE_COMPLETED',
9943
+ 'JOB_STATE_FAILED',
9944
+ ],
9855
9945
  },
9856
9946
  progress: {
9857
9947
  type: 'integer',
@@ -9883,6 +9973,83 @@ export const schemaDict = {
9883
9973
  },
9884
9974
  },
9885
9975
  },
9976
+ AppBskyVideoFinishUpload: {
9977
+ lexicon: 1,
9978
+ id: 'app.bsky.video.finishUpload',
9979
+ defs: {
9980
+ main: {
9981
+ type: 'procedure',
9982
+ description: 'Finish an upload. This call is idempotent and safe to retry. On deduplication completedJobId may differ from the input jobId; poll getJobStatus with completedJobId. Probe-based validation failures surface later as JOB_STATE_FAILED from getJobStatus, not as errors from this call.',
9983
+ input: {
9984
+ encoding: 'application/json',
9985
+ schema: {
9986
+ type: 'object',
9987
+ required: ['jobId'],
9988
+ properties: {
9989
+ jobId: {
9990
+ type: 'string',
9991
+ minLength: 1,
9992
+ maxLength: 256,
9993
+ },
9994
+ },
9995
+ },
9996
+ },
9997
+ output: {
9998
+ encoding: 'application/json',
9999
+ schema: {
10000
+ type: 'object',
10001
+ required: ['completedJobId', 'jobStatus'],
10002
+ properties: {
10003
+ completedJobId: {
10004
+ type: 'string',
10005
+ minLength: 1,
10006
+ maxLength: 256,
10007
+ description: 'The processing job to poll with getJobStatus; on deduplication this may differ from the input jobId.',
10008
+ },
10009
+ jobStatus: {
10010
+ type: 'ref',
10011
+ ref: 'lex:app.bsky.video.defs#jobStatus',
10012
+ },
10013
+ },
10014
+ },
10015
+ },
10016
+ errors: [
10017
+ {
10018
+ name: 'UploadNotFound',
10019
+ description: 'The job ID is unknown or aged out of retention; known terminal sessions are never reported as not found.',
10020
+ },
10021
+ {
10022
+ name: 'UploadExpired',
10023
+ description: 'The upload session expired before finalization began.',
10024
+ },
10025
+ {
10026
+ name: 'MissingParts',
10027
+ description: 'Not all parts are recorded; the error message lists the missing part numbers.',
10028
+ },
10029
+ {
10030
+ name: 'UploadNotReady',
10031
+ description: 'A finish is in progress; check getUploadStatus and retry.',
10032
+ },
10033
+ {
10034
+ name: 'UnsupportedContentType',
10035
+ description: "The assembled object's detected content type is not supported.",
10036
+ },
10037
+ {
10038
+ name: 'UploadFailed',
10039
+ description: 'The session is known to have failed; the error carries its failure reason.',
10040
+ },
10041
+ {
10042
+ name: 'UploadAborted',
10043
+ description: 'The session is known to have been aborted.',
10044
+ },
10045
+ {
10046
+ name: 'ServiceOverloaded',
10047
+ description: 'The service is draining or temporarily at capacity; retry later.',
10048
+ },
10049
+ ],
10050
+ },
10051
+ },
10052
+ },
9886
10053
  AppBskyVideoGetJobStatus: {
9887
10054
  lexicon: 1,
9888
10055
  id: 'app.bsky.video.getJobStatus',
@@ -9949,6 +10116,286 @@ export const schemaDict = {
9949
10116
  },
9950
10117
  },
9951
10118
  },
10119
+ AppBskyVideoGetUploadStatus: {
10120
+ lexicon: 1,
10121
+ id: 'app.bsky.video.getUploadStatus',
10122
+ defs: {
10123
+ main: {
10124
+ type: 'query',
10125
+ description: 'Get the authoritative status of the upload phase. Terminal states remain readable. completedJobId and jobStatus are present only for completed sessions; failureReason is present only for failed sessions.',
10126
+ parameters: {
10127
+ type: 'params',
10128
+ required: ['jobId'],
10129
+ properties: {
10130
+ jobId: {
10131
+ type: 'string',
10132
+ minLength: 1,
10133
+ maxLength: 256,
10134
+ },
10135
+ },
10136
+ },
10137
+ output: {
10138
+ encoding: 'application/json',
10139
+ schema: {
10140
+ type: 'object',
10141
+ required: [
10142
+ 'jobId',
10143
+ 'partSizeBytes',
10144
+ 'partCount',
10145
+ 'receivedParts',
10146
+ 'expiresAt',
10147
+ 'state',
10148
+ ],
10149
+ properties: {
10150
+ jobId: {
10151
+ type: 'string',
10152
+ minLength: 1,
10153
+ maxLength: 256,
10154
+ },
10155
+ partSizeBytes: {
10156
+ type: 'integer',
10157
+ },
10158
+ partCount: {
10159
+ type: 'integer',
10160
+ },
10161
+ receivedParts: {
10162
+ type: 'array',
10163
+ items: {
10164
+ type: 'integer',
10165
+ minimum: 1,
10166
+ },
10167
+ },
10168
+ expiresAt: {
10169
+ type: 'string',
10170
+ format: 'datetime',
10171
+ },
10172
+ state: {
10173
+ type: 'string',
10174
+ maxLength: 32,
10175
+ knownValues: [
10176
+ 'created',
10177
+ 'finishing',
10178
+ 'completed',
10179
+ 'failed',
10180
+ 'aborted',
10181
+ 'expired',
10182
+ ],
10183
+ },
10184
+ completedJobId: {
10185
+ type: 'string',
10186
+ minLength: 1,
10187
+ maxLength: 256,
10188
+ description: 'Present only when state is completed; may differ from jobId on deduplication.',
10189
+ },
10190
+ jobStatus: {
10191
+ type: 'ref',
10192
+ ref: 'lex:app.bsky.video.defs#jobStatus',
10193
+ description: 'Present only when state is completed.',
10194
+ },
10195
+ failureReason: {
10196
+ type: 'string',
10197
+ maxLength: 1024,
10198
+ description: 'Present only when state is failed.',
10199
+ },
10200
+ },
10201
+ },
10202
+ },
10203
+ errors: [
10204
+ {
10205
+ name: 'UploadNotFound',
10206
+ description: 'The job ID is unknown or aged out of retention; known terminal sessions remain readable and are never reported as not found.',
10207
+ },
10208
+ ],
10209
+ },
10210
+ },
10211
+ },
10212
+ AppBskyVideoStartUpload: {
10213
+ lexicon: 1,
10214
+ id: 'app.bsky.video.startUpload',
10215
+ defs: {
10216
+ main: {
10217
+ type: 'procedure',
10218
+ description: 'Start a multipart video upload. The declared size is exact, while optional media properties are advisory and used only for early failure; the authoritative probe runs asynchronously after upload.',
10219
+ input: {
10220
+ encoding: 'application/json',
10221
+ schema: {
10222
+ type: 'object',
10223
+ required: ['sizeBytes', 'mimeType'],
10224
+ properties: {
10225
+ sizeBytes: {
10226
+ type: 'integer',
10227
+ minimum: 1,
10228
+ description: 'Exact byte size of the complete upload-ready video file before it is split into parts.',
10229
+ },
10230
+ mimeType: {
10231
+ type: 'string',
10232
+ minLength: 3,
10233
+ maxLength: 255,
10234
+ description: 'Declared MIME type of the video.',
10235
+ },
10236
+ name: {
10237
+ type: 'string',
10238
+ maxLength: 256,
10239
+ description: 'Optional client-provided file name.',
10240
+ },
10241
+ durationMs: {
10242
+ type: 'integer',
10243
+ description: 'Advisory, non-authoritative duration used only for early failure; the authoritative probe runs asynchronously after upload.',
10244
+ },
10245
+ width: {
10246
+ type: 'integer',
10247
+ description: 'Advisory, non-authoritative width used only for early failure; the authoritative probe runs asynchronously after upload.',
10248
+ },
10249
+ height: {
10250
+ type: 'integer',
10251
+ description: 'Advisory, non-authoritative height used only for early failure; the authoritative probe runs asynchronously after upload.',
10252
+ },
10253
+ },
10254
+ },
10255
+ },
10256
+ output: {
10257
+ encoding: 'application/json',
10258
+ schema: {
10259
+ type: 'object',
10260
+ required: ['jobId', 'partSizeBytes', 'partCount', 'expiresAt'],
10261
+ properties: {
10262
+ jobId: {
10263
+ type: 'string',
10264
+ minLength: 1,
10265
+ maxLength: 256,
10266
+ },
10267
+ partSizeBytes: {
10268
+ type: 'integer',
10269
+ },
10270
+ partCount: {
10271
+ type: 'integer',
10272
+ },
10273
+ expiresAt: {
10274
+ type: 'string',
10275
+ format: 'datetime',
10276
+ },
10277
+ },
10278
+ },
10279
+ },
10280
+ errors: [
10281
+ {
10282
+ name: 'UnsupportedContentType',
10283
+ description: 'The declared MIME type is not supported.',
10284
+ },
10285
+ {
10286
+ name: 'VideoTooLarge',
10287
+ description: 'The exact file size exceeds the per-file cap or remaining daily byte allowance.',
10288
+ },
10289
+ {
10290
+ name: 'VideoTooLong',
10291
+ description: 'The advisory declared duration exceeds the limit.',
10292
+ },
10293
+ {
10294
+ name: 'BadAspectRatio',
10295
+ description: 'The advisory declared dimensions have an unsupported aspect ratio.',
10296
+ },
10297
+ {
10298
+ name: 'DailyLimitExceeded',
10299
+ description: 'The daily video or byte allowance, including active reservations, is exhausted.',
10300
+ },
10301
+ {
10302
+ name: 'TooManyOpenUploads',
10303
+ description: 'The account has reached its open multipart upload limit.',
10304
+ },
10305
+ {
10306
+ name: 'UploadForbidden',
10307
+ description: 'The account is not permitted to upload video.',
10308
+ },
10309
+ {
10310
+ name: 'ServiceOverloaded',
10311
+ description: 'The service is draining, at capacity, or temporarily unable to create the multipart upload.',
10312
+ },
10313
+ ],
10314
+ },
10315
+ },
10316
+ },
10317
+ AppBskyVideoUploadPart: {
10318
+ lexicon: 1,
10319
+ id: 'app.bsky.video.uploadPart',
10320
+ defs: {
10321
+ main: {
10322
+ type: 'procedure',
10323
+ description: 'Upload one part. Parts are idempotent and may be retried or re-sent while the session is created. Each expected length is derived from the upload size and part size, and Content-Length must match exactly. ETags are never exposed to clients.',
10324
+ parameters: {
10325
+ type: 'params',
10326
+ required: ['jobId', 'partNumber'],
10327
+ properties: {
10328
+ jobId: {
10329
+ type: 'string',
10330
+ minLength: 1,
10331
+ maxLength: 256,
10332
+ },
10333
+ partNumber: {
10334
+ type: 'integer',
10335
+ minimum: 1,
10336
+ },
10337
+ },
10338
+ },
10339
+ input: {
10340
+ encoding: 'application/octet-stream',
10341
+ },
10342
+ output: {
10343
+ encoding: 'application/json',
10344
+ schema: {
10345
+ type: 'object',
10346
+ required: ['partNumber', 'sizeBytes'],
10347
+ properties: {
10348
+ partNumber: {
10349
+ type: 'integer',
10350
+ minimum: 1,
10351
+ },
10352
+ sizeBytes: {
10353
+ type: 'integer',
10354
+ },
10355
+ },
10356
+ },
10357
+ },
10358
+ errors: [
10359
+ {
10360
+ name: 'UploadNotFound',
10361
+ description: 'The job ID is unknown or aged out of retention; known terminal sessions are never reported as not found.',
10362
+ },
10363
+ {
10364
+ name: 'UploadExpired',
10365
+ description: 'The upload session expired before completion.',
10366
+ },
10367
+ {
10368
+ name: 'InvalidPartNumber',
10369
+ description: "The part number is outside the upload's valid part range.",
10370
+ },
10371
+ {
10372
+ name: 'PartSizeMismatch',
10373
+ description: 'Content-Length does not exactly match the expected size for this part.',
10374
+ },
10375
+ {
10376
+ name: 'UploadNotReady',
10377
+ description: 'A finish is in progress; check getUploadStatus and retry.',
10378
+ },
10379
+ {
10380
+ name: 'UploadFailed',
10381
+ description: 'The session is known to have failed; the error carries its failure reason.',
10382
+ },
10383
+ {
10384
+ name: 'UploadAborted',
10385
+ description: 'The session is known to have been aborted.',
10386
+ },
10387
+ {
10388
+ name: 'UploadAlreadyCompleted',
10389
+ description: 'The session is known to have already completed.',
10390
+ },
10391
+ {
10392
+ name: 'ServiceOverloaded',
10393
+ description: 'The service is draining or temporarily at capacity; retry on another worker.',
10394
+ },
10395
+ ],
10396
+ },
10397
+ },
10398
+ },
9952
10399
  AppBskyVideoUploadVideo: {
9953
10400
  lexicon: 1,
9954
10401
  id: 'app.bsky.video.uploadVideo',
@@ -26021,6 +26468,7 @@ export function validate(v, id, hash, requiredType) {
26021
26468
  };
26022
26469
  }
26023
26470
  export const ids = {
26471
+ AppBskyActorContentVisibilityDeclaration: 'app.bsky.actor.contentVisibilityDeclaration',
26024
26472
  AppBskyActorDefs: 'app.bsky.actor.defs',
26025
26473
  AppBskyActorGetPreferences: 'app.bsky.actor.getPreferences',
26026
26474
  AppBskyActorGetProfile: 'app.bsky.actor.getProfile',
@@ -26166,9 +26614,14 @@ export const ids = {
26166
26614
  AppBskyUnspeccedSearchActorsSkeleton: 'app.bsky.unspecced.searchActorsSkeleton',
26167
26615
  AppBskyUnspeccedSearchPostsSkeleton: 'app.bsky.unspecced.searchPostsSkeleton',
26168
26616
  AppBskyUnspeccedSearchStarterPacksSkeleton: 'app.bsky.unspecced.searchStarterPacksSkeleton',
26617
+ AppBskyVideoAbortUpload: 'app.bsky.video.abortUpload',
26169
26618
  AppBskyVideoDefs: 'app.bsky.video.defs',
26619
+ AppBskyVideoFinishUpload: 'app.bsky.video.finishUpload',
26170
26620
  AppBskyVideoGetJobStatus: 'app.bsky.video.getJobStatus',
26171
26621
  AppBskyVideoGetUploadLimits: 'app.bsky.video.getUploadLimits',
26622
+ AppBskyVideoGetUploadStatus: 'app.bsky.video.getUploadStatus',
26623
+ AppBskyVideoStartUpload: 'app.bsky.video.startUpload',
26624
+ AppBskyVideoUploadPart: 'app.bsky.video.uploadPart',
26172
26625
  AppBskyVideoUploadVideo: 'app.bsky.video.uploadVideo',
26173
26626
  ChatBskyActorDeclaration: 'chat.bsky.actor.declaration',
26174
26627
  ChatBskyActorDefs: 'chat.bsky.actor.defs',