@atproto/api 0.23.1 → 0.24.0

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 (79) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/dist/client/index.d.ts +33 -0
  3. package/dist/client/index.d.ts.map +1 -1
  4. package/dist/client/index.js +63 -0
  5. package/dist/client/index.js.map +1 -1
  6. package/dist/client/lexicons.d.ts +3391 -1631
  7. package/dist/client/lexicons.d.ts.map +1 -1
  8. package/dist/client/lexicons.js +1138 -174
  9. package/dist/client/lexicons.js.map +1 -1
  10. package/dist/client/types/app/bsky/unspecced/getOnboardingSuggestedStarterPacks.d.ts +2 -0
  11. package/dist/client/types/app/bsky/unspecced/getOnboardingSuggestedStarterPacks.d.ts.map +1 -1
  12. package/dist/client/types/app/bsky/unspecced/getOnboardingSuggestedStarterPacks.js.map +1 -1
  13. package/dist/client/types/app/bsky/unspecced/getOnboardingSuggestedStarterPacksSkeleton.d.ts +2 -0
  14. package/dist/client/types/app/bsky/unspecced/getOnboardingSuggestedStarterPacksSkeleton.d.ts.map +1 -1
  15. package/dist/client/types/app/bsky/unspecced/getOnboardingSuggestedStarterPacksSkeleton.js.map +1 -1
  16. package/dist/client/types/app/bsky/unspecced/getSuggestedFeeds.d.ts +2 -0
  17. package/dist/client/types/app/bsky/unspecced/getSuggestedFeeds.d.ts.map +1 -1
  18. package/dist/client/types/app/bsky/unspecced/getSuggestedFeeds.js.map +1 -1
  19. package/dist/client/types/app/bsky/unspecced/getSuggestedFeedsSkeleton.d.ts +2 -0
  20. package/dist/client/types/app/bsky/unspecced/getSuggestedFeedsSkeleton.d.ts.map +1 -1
  21. package/dist/client/types/app/bsky/unspecced/getSuggestedFeedsSkeleton.js.map +1 -1
  22. package/dist/client/types/app/bsky/unspecced/getSuggestedStarterPacks.d.ts +2 -0
  23. package/dist/client/types/app/bsky/unspecced/getSuggestedStarterPacks.d.ts.map +1 -1
  24. package/dist/client/types/app/bsky/unspecced/getSuggestedStarterPacks.js.map +1 -1
  25. package/dist/client/types/app/bsky/unspecced/getSuggestedStarterPacksSkeleton.d.ts +2 -0
  26. package/dist/client/types/app/bsky/unspecced/getSuggestedStarterPacksSkeleton.d.ts.map +1 -1
  27. package/dist/client/types/app/bsky/unspecced/getSuggestedStarterPacksSkeleton.js.map +1 -1
  28. package/dist/client/types/tools/ozone/inbox/defs.d.ts +94 -4
  29. package/dist/client/types/tools/ozone/inbox/defs.d.ts.map +1 -1
  30. package/dist/client/types/tools/ozone/inbox/defs.js +56 -0
  31. package/dist/client/types/tools/ozone/inbox/defs.js.map +1 -1
  32. package/dist/client/types/tools/ozone/inbox/getAccountStatus.d.ts +29 -0
  33. package/dist/client/types/tools/ozone/inbox/getAccountStatus.d.ts.map +1 -0
  34. package/dist/client/types/tools/ozone/inbox/getAccountStatus.js +14 -0
  35. package/dist/client/types/tools/ozone/inbox/getAccountStatus.js.map +1 -0
  36. package/dist/client/types/tools/ozone/inbox/getActionedSubject.d.ts +31 -0
  37. package/dist/client/types/tools/ozone/inbox/getActionedSubject.d.ts.map +1 -0
  38. package/dist/client/types/tools/ozone/inbox/getActionedSubject.js +23 -0
  39. package/dist/client/types/tools/ozone/inbox/getActionedSubject.js.map +1 -0
  40. package/dist/client/types/tools/ozone/inbox/getNotificationPreferences.d.ts +24 -0
  41. package/dist/client/types/tools/ozone/inbox/getNotificationPreferences.d.ts.map +1 -0
  42. package/dist/client/types/tools/ozone/inbox/getNotificationPreferences.js +14 -0
  43. package/dist/client/types/tools/ozone/inbox/getNotificationPreferences.js.map +1 -0
  44. package/dist/client/types/tools/ozone/inbox/getReport.d.ts +66 -0
  45. package/dist/client/types/tools/ozone/inbox/getReport.d.ts.map +1 -0
  46. package/dist/client/types/tools/ozone/inbox/getReport.js +37 -0
  47. package/dist/client/types/tools/ozone/inbox/getReport.js.map +1 -0
  48. package/dist/client/types/tools/ozone/inbox/getUnreadCount.d.ts +34 -0
  49. package/dist/client/types/tools/ozone/inbox/getUnreadCount.d.ts.map +1 -0
  50. package/dist/client/types/tools/ozone/inbox/getUnreadCount.js +21 -0
  51. package/dist/client/types/tools/ozone/inbox/getUnreadCount.js.map +1 -0
  52. package/dist/client/types/tools/ozone/inbox/listActionedSubjects.d.ts +32 -0
  53. package/dist/client/types/tools/ozone/inbox/listActionedSubjects.d.ts.map +1 -0
  54. package/dist/client/types/tools/ozone/inbox/listActionedSubjects.js +14 -0
  55. package/dist/client/types/tools/ozone/inbox/listActionedSubjects.js.map +1 -0
  56. package/dist/client/types/tools/ozone/inbox/listNotifications.d.ts +30 -0
  57. package/dist/client/types/tools/ozone/inbox/listNotifications.d.ts.map +1 -0
  58. package/dist/client/types/tools/ozone/inbox/listNotifications.js +14 -0
  59. package/dist/client/types/tools/ozone/inbox/listNotifications.js.map +1 -0
  60. package/dist/client/types/tools/ozone/inbox/listReports.d.ts +58 -0
  61. package/dist/client/types/tools/ozone/inbox/listReports.d.ts.map +1 -0
  62. package/dist/client/types/tools/ozone/inbox/listReports.js +21 -0
  63. package/dist/client/types/tools/ozone/inbox/listReports.js.map +1 -0
  64. package/dist/client/types/tools/ozone/inbox/putNotificationPreferences.d.ts +25 -0
  65. package/dist/client/types/tools/ozone/inbox/putNotificationPreferences.d.ts.map +1 -0
  66. package/dist/client/types/tools/ozone/inbox/putNotificationPreferences.js +14 -0
  67. package/dist/client/types/tools/ozone/inbox/putNotificationPreferences.js.map +1 -0
  68. package/dist/client/types/tools/ozone/inbox/updateSeen.d.ts +27 -0
  69. package/dist/client/types/tools/ozone/inbox/updateSeen.d.ts.map +1 -0
  70. package/dist/client/types/tools/ozone/inbox/updateSeen.js +14 -0
  71. package/dist/client/types/tools/ozone/inbox/updateSeen.js.map +1 -0
  72. package/dist/client/types/tools/ozone/moderation/defs.d.ts +6 -0
  73. package/dist/client/types/tools/ozone/moderation/defs.d.ts.map +1 -1
  74. package/dist/client/types/tools/ozone/moderation/defs.js.map +1 -1
  75. package/dist/client/types/tools/ozone/server/getCapabilities.d.ts +27 -0
  76. package/dist/client/types/tools/ozone/server/getCapabilities.d.ts.map +1 -0
  77. package/dist/client/types/tools/ozone/server/getCapabilities.js +21 -0
  78. package/dist/client/types/tools/ozone/server/getCapabilities.js.map +1 -0
  79. package/package.json +3 -3
@@ -9003,6 +9003,10 @@ export const schemaDict = {
9003
9003
  ref: 'lex:app.bsky.graph.defs#starterPackView',
9004
9004
  },
9005
9005
  },
9006
+ recIdStr: {
9007
+ type: 'string',
9008
+ description: 'Snowflake for this recommendation, use when submitting recommendation events.',
9009
+ },
9006
9010
  },
9007
9011
  },
9008
9012
  },
@@ -9045,6 +9049,10 @@ export const schemaDict = {
9045
9049
  format: 'at-uri',
9046
9050
  },
9047
9051
  },
9052
+ recIdStr: {
9053
+ type: 'string',
9054
+ description: 'Snowflake for this recommendation, use when submitting recommendation events.',
9055
+ },
9048
9056
  },
9049
9057
  },
9050
9058
  },
@@ -9332,6 +9340,10 @@ export const schemaDict = {
9332
9340
  ref: 'lex:app.bsky.feed.defs#generatorView',
9333
9341
  },
9334
9342
  },
9343
+ recIdStr: {
9344
+ type: 'string',
9345
+ description: 'Snowflake for this recommendation, use when submitting recommendation events.',
9346
+ },
9335
9347
  },
9336
9348
  },
9337
9349
  },
@@ -9374,6 +9386,10 @@ export const schemaDict = {
9374
9386
  format: 'at-uri',
9375
9387
  },
9376
9388
  },
9389
+ recIdStr: {
9390
+ type: 'string',
9391
+ description: 'Snowflake for this recommendation, use when submitting recommendation events.',
9392
+ },
9377
9393
  },
9378
9394
  },
9379
9395
  },
@@ -9460,6 +9476,10 @@ export const schemaDict = {
9460
9476
  ref: 'lex:app.bsky.graph.defs#starterPackView',
9461
9477
  },
9462
9478
  },
9479
+ recIdStr: {
9480
+ type: 'string',
9481
+ description: 'Snowflake for this recommendation, use when submitting recommendation events.',
9482
+ },
9463
9483
  },
9464
9484
  },
9465
9485
  },
@@ -9502,6 +9522,10 @@ export const schemaDict = {
9502
9522
  format: 'at-uri',
9503
9523
  },
9504
9524
  },
9525
+ recIdStr: {
9526
+ type: 'string',
9527
+ description: 'Snowflake for this recommendation, use when submitting recommendation events.',
9528
+ },
9505
9529
  },
9506
9530
  },
9507
9531
  },
@@ -20652,7 +20676,14 @@ export const schemaDict = {
20652
20676
  subjectView: {
20653
20677
  type: 'object',
20654
20678
  description: 'A subject belonging to the viewer that has moderation actions against it.',
20655
- required: ['src', 'subject', 'enforcement', 'createdAt', 'updatedAt'],
20679
+ required: [
20680
+ 'src',
20681
+ 'subject',
20682
+ 'enforcement',
20683
+ 'isRead',
20684
+ 'createdAt',
20685
+ 'updatedAt',
20686
+ ],
20656
20687
  properties: {
20657
20688
  src: {
20658
20689
  type: 'string',
@@ -20696,6 +20727,9 @@ export const schemaDict = {
20696
20727
  type: 'string',
20697
20728
  format: 'datetime',
20698
20729
  },
20730
+ isRead: {
20731
+ type: 'boolean',
20732
+ },
20699
20733
  },
20700
20734
  },
20701
20735
  enforcementView: {
@@ -20754,10 +20788,6 @@ export const schemaDict = {
20754
20788
  format: 'datetime',
20755
20789
  description: "When the appeal's report was closed.",
20756
20790
  },
20757
- note: {
20758
- type: 'string',
20759
- description: 'Moderator explanation, from the publicNote on the closing activity. Absent if none was written.',
20760
- },
20761
20791
  appealableUntil: {
20762
20792
  type: 'string',
20763
20793
  format: 'datetime',
@@ -20801,236 +20831,1109 @@ export const schemaDict = {
20801
20831
  description: 'Label values, for labelApplied/labelRemoved.',
20802
20832
  },
20803
20833
  policies: {
20804
- type: 'array',
20805
- items: {
20806
- type: 'string',
20807
- },
20808
- description: 'Policies that were applied in this action.',
20809
- },
20810
- },
20811
- },
20812
- },
20813
- },
20814
- ToolsOzoneModerationCancelScheduledActions: {
20815
- lexicon: 1,
20816
- id: 'tools.ozone.moderation.cancelScheduledActions',
20817
- defs: {
20818
- main: {
20819
- type: 'procedure',
20820
- description: 'Cancel all pending scheduled moderation actions for specified subjects',
20821
- input: {
20822
- encoding: 'application/json',
20823
- schema: {
20824
- type: 'object',
20825
- required: ['subjects'],
20826
- properties: {
20827
- subjects: {
20828
- type: 'array',
20829
- maxLength: 100,
20830
- items: {
20831
- type: 'string',
20832
- format: 'did',
20833
- },
20834
- description: 'Array of DID subjects to cancel scheduled actions for',
20835
- },
20836
- comment: {
20837
- type: 'string',
20838
- description: 'Optional comment describing the reason for cancellation',
20839
- },
20840
- },
20841
- },
20842
- },
20843
- output: {
20844
- encoding: 'application/json',
20845
- schema: {
20846
- type: 'ref',
20847
- ref: 'lex:tools.ozone.moderation.cancelScheduledActions#cancellationResults',
20848
- },
20849
- },
20850
- },
20851
- cancellationResults: {
20852
- type: 'object',
20853
- required: ['succeeded', 'failed'],
20854
- properties: {
20855
- succeeded: {
20856
- type: 'array',
20857
- items: {
20858
- type: 'string',
20859
- format: 'did',
20860
- },
20861
- description: 'DIDs for which all pending scheduled actions were successfully cancelled',
20862
- },
20863
- failed: {
20864
20834
  type: 'array',
20865
20835
  items: {
20866
20836
  type: 'ref',
20867
- ref: 'lex:tools.ozone.moderation.cancelScheduledActions#failedCancellation',
20837
+ ref: 'lex:tools.ozone.inbox.defs#policyView',
20868
20838
  },
20869
- description: 'DIDs for which cancellation failed with error details',
20839
+ description: 'Policies applied by a takedown action.',
20870
20840
  },
20871
20841
  },
20872
20842
  },
20873
- failedCancellation: {
20843
+ policyView: {
20874
20844
  type: 'object',
20875
- required: ['did', 'error'],
20845
+ required: ['key', 'displayName', 'link'],
20876
20846
  properties: {
20877
- did: {
20847
+ key: {
20878
20848
  type: 'string',
20879
- format: 'did',
20880
20849
  },
20881
- error: {
20850
+ displayName: {
20882
20851
  type: 'string',
20883
20852
  },
20884
- errorCode: {
20853
+ link: {
20885
20854
  type: 'string',
20855
+ format: 'uri',
20886
20856
  },
20887
20857
  },
20888
20858
  },
20889
- },
20890
- },
20891
- ToolsOzoneModerationDefs: {
20892
- lexicon: 1,
20893
- id: 'tools.ozone.moderation.defs',
20894
- defs: {
20895
- modEventView: {
20859
+ subjectViewDetail: {
20896
20860
  type: 'object',
20861
+ description: 'A subject with a page of its action history and an aggregate report summary. Follow cursor to retrieve older actions; enforcement and appeal describe the current subject state on every page.',
20897
20862
  required: [
20898
- 'id',
20899
- 'event',
20863
+ 'src',
20900
20864
  'subject',
20901
- 'subjectBlobCids',
20902
- 'createdBy',
20865
+ 'enforcement',
20866
+ 'isRead',
20867
+ 'actions',
20903
20868
  'createdAt',
20869
+ 'updatedAt',
20904
20870
  ],
20905
20871
  properties: {
20906
- id: {
20907
- type: 'integer',
20872
+ src: {
20873
+ type: 'string',
20874
+ format: 'did',
20908
20875
  },
20909
- event: {
20910
- type: 'union',
20911
- refs: [
20912
- 'lex:tools.ozone.moderation.defs#modEventTakedown',
20913
- 'lex:tools.ozone.moderation.defs#modEventReverseTakedown',
20914
- 'lex:tools.ozone.moderation.defs#modEventComment',
20915
- 'lex:tools.ozone.moderation.defs#modEventReport',
20916
- 'lex:tools.ozone.moderation.defs#modEventLabel',
20917
- 'lex:tools.ozone.moderation.defs#modEventAcknowledge',
20918
- 'lex:tools.ozone.moderation.defs#modEventEscalate',
20919
- 'lex:tools.ozone.moderation.defs#modEventMute',
20920
- 'lex:tools.ozone.moderation.defs#modEventUnmute',
20921
- 'lex:tools.ozone.moderation.defs#modEventMuteReporter',
20922
- 'lex:tools.ozone.moderation.defs#modEventUnmuteReporter',
20923
- 'lex:tools.ozone.moderation.defs#modEventEmail',
20924
- 'lex:tools.ozone.moderation.defs#modEventResolveAppeal',
20925
- 'lex:tools.ozone.moderation.defs#modEventDivert',
20926
- 'lex:tools.ozone.moderation.defs#modEventTag',
20927
- 'lex:tools.ozone.moderation.defs#accountEvent',
20928
- 'lex:tools.ozone.moderation.defs#identityEvent',
20929
- 'lex:tools.ozone.moderation.defs#recordEvent',
20930
- 'lex:tools.ozone.moderation.defs#modEventPriorityScore',
20931
- 'lex:tools.ozone.moderation.defs#ageAssuranceEvent',
20932
- 'lex:tools.ozone.moderation.defs#ageAssuranceOverrideEvent',
20933
- 'lex:tools.ozone.moderation.defs#ageAssurancePurgeEvent',
20934
- 'lex:tools.ozone.moderation.defs#revokeAccountCredentialsEvent',
20935
- 'lex:tools.ozone.moderation.defs#scheduleTakedownEvent',
20936
- 'lex:tools.ozone.moderation.defs#cancelScheduledTakedownEvent',
20937
- ],
20876
+ isRead: {
20877
+ type: 'boolean',
20938
20878
  },
20939
20879
  subject: {
20940
20880
  type: 'union',
20941
20881
  refs: [
20942
20882
  'lex:com.atproto.admin.defs#repoRef',
20943
20883
  'lex:com.atproto.repo.strongRef',
20944
- 'lex:chat.bsky.convo.defs#messageRef',
20945
- 'lex:chat.bsky.convo.defs#convoRef',
20946
20884
  ],
20947
20885
  },
20948
- subjectBlobCids: {
20886
+ record: {
20887
+ type: 'unknown',
20888
+ description: 'Raw record JSON for the subject, when the subject is a record and the record is available.',
20889
+ },
20890
+ enforcement: {
20891
+ type: 'ref',
20892
+ ref: 'lex:tools.ozone.inbox.defs#enforcementView',
20893
+ },
20894
+ appeal: {
20895
+ type: 'ref',
20896
+ ref: 'lex:tools.ozone.inbox.defs#appealView',
20897
+ },
20898
+ availableActions: {
20949
20899
  type: 'array',
20950
20900
  items: {
20951
20901
  type: 'string',
20902
+ knownValues: ['appeal'],
20952
20903
  },
20953
20904
  },
20954
- createdBy: {
20905
+ actions: {
20906
+ type: 'array',
20907
+ description: 'A page of action history, most recent first. Reversal timestamps include changes outside this page.',
20908
+ maxLength: 100,
20909
+ items: {
20910
+ type: 'ref',
20911
+ ref: 'lex:tools.ozone.inbox.defs#actionView',
20912
+ },
20913
+ },
20914
+ cursor: {
20955
20915
  type: 'string',
20956
- format: 'did',
20916
+ description: 'Cursor for the next page of action history. Omitted when no older actions remain.',
20917
+ },
20918
+ reports: {
20919
+ type: 'ref',
20920
+ ref: 'lex:tools.ozone.inbox.defs#reportsSummary',
20921
+ description: 'Omitted when the subject has never been reported, e.g. proactive enforcement.',
20957
20922
  },
20958
20923
  createdAt: {
20959
20924
  type: 'string',
20960
20925
  format: 'datetime',
20961
20926
  },
20962
- creatorHandle: {
20927
+ updatedAt: {
20963
20928
  type: 'string',
20929
+ format: 'datetime',
20964
20930
  },
20965
- subjectHandle: {
20931
+ },
20932
+ },
20933
+ reportsSummary: {
20934
+ type: 'object',
20935
+ description: 'Aggregate view of reports filed against this subject. Deliberately carries no report IDs, no count, and no reporter identities.',
20936
+ required: ['reasonTypes', 'firstReportedOn', 'lastReportedOn'],
20937
+ properties: {
20938
+ reasonTypes: {
20939
+ type: 'array',
20940
+ description: 'Distinct reason types reported, deduplicated and unordered. Excludes reasonAppeal.',
20941
+ items: {
20942
+ type: 'string',
20943
+ },
20944
+ },
20945
+ firstReportedOn: {
20966
20946
  type: 'string',
20947
+ format: 'datetime',
20948
+ description: 'Day of the earliest report, truncated to midnight UTC. Render as a date; the time component is not meaningful.',
20967
20949
  },
20968
- modTool: {
20969
- type: 'ref',
20970
- ref: 'lex:tools.ozone.moderation.defs#modTool',
20950
+ lastReportedOn: {
20951
+ type: 'string',
20952
+ format: 'datetime',
20953
+ description: 'Day of the most recent report, truncated to midnight UTC. Render as a date; the time component is not meaningful.',
20971
20954
  },
20972
20955
  },
20973
20956
  },
20974
- modEventViewDetail: {
20957
+ notification: {
20975
20958
  type: 'object',
20976
- required: [
20977
- 'id',
20978
- 'event',
20979
- 'subject',
20980
- 'subjectBlobs',
20981
- 'createdBy',
20982
- 'createdAt',
20983
- ],
20959
+ required: ['id', 'reason', 'target', 'isRead', 'createdAt'],
20984
20960
  properties: {
20985
20961
  id: {
20986
20962
  type: 'integer',
20987
20963
  },
20988
- event: {
20989
- type: 'union',
20990
- refs: [
20991
- 'lex:tools.ozone.moderation.defs#modEventTakedown',
20992
- 'lex:tools.ozone.moderation.defs#modEventReverseTakedown',
20993
- 'lex:tools.ozone.moderation.defs#modEventComment',
20994
- 'lex:tools.ozone.moderation.defs#modEventReport',
20995
- 'lex:tools.ozone.moderation.defs#modEventLabel',
20996
- 'lex:tools.ozone.moderation.defs#modEventAcknowledge',
20997
- 'lex:tools.ozone.moderation.defs#modEventEscalate',
20998
- 'lex:tools.ozone.moderation.defs#modEventMute',
20999
- 'lex:tools.ozone.moderation.defs#modEventUnmute',
21000
- 'lex:tools.ozone.moderation.defs#modEventMuteReporter',
21001
- 'lex:tools.ozone.moderation.defs#modEventUnmuteReporter',
21002
- 'lex:tools.ozone.moderation.defs#modEventEmail',
21003
- 'lex:tools.ozone.moderation.defs#modEventResolveAppeal',
21004
- 'lex:tools.ozone.moderation.defs#modEventDivert',
21005
- 'lex:tools.ozone.moderation.defs#modEventTag',
21006
- 'lex:tools.ozone.moderation.defs#accountEvent',
21007
- 'lex:tools.ozone.moderation.defs#identityEvent',
21008
- 'lex:tools.ozone.moderation.defs#recordEvent',
21009
- 'lex:tools.ozone.moderation.defs#modEventPriorityScore',
21010
- 'lex:tools.ozone.moderation.defs#ageAssuranceEvent',
21011
- 'lex:tools.ozone.moderation.defs#ageAssuranceOverrideEvent',
21012
- 'lex:tools.ozone.moderation.defs#ageAssurancePurgeEvent',
21013
- 'lex:tools.ozone.moderation.defs#revokeAccountCredentialsEvent',
21014
- 'lex:tools.ozone.moderation.defs#scheduleTakedownEvent',
21015
- 'lex:tools.ozone.moderation.defs#cancelScheduledTakedownEvent',
20964
+ reason: {
20965
+ type: 'string',
20966
+ knownValues: [
20967
+ 'reportResolved',
20968
+ 'reportReopened',
20969
+ 'actionTaken',
20970
+ 'actionReversed',
20971
+ 'appealResolved',
20972
+ 'standingChanged',
21016
20973
  ],
21017
20974
  },
21018
- subject: {
20975
+ target: {
21019
20976
  type: 'union',
21020
20977
  refs: [
21021
- 'lex:tools.ozone.moderation.defs#repoView',
21022
- 'lex:tools.ozone.moderation.defs#repoViewNotFound',
21023
- 'lex:tools.ozone.moderation.defs#recordView',
21024
- 'lex:tools.ozone.moderation.defs#recordViewNotFound',
21025
- 'lex:tools.ozone.moderation.defs#convoView',
20978
+ 'lex:tools.ozone.inbox.defs#reportRef',
20979
+ 'lex:tools.ozone.inbox.defs#subjectRef',
20980
+ 'lex:tools.ozone.inbox.defs#standingRef',
21026
20981
  ],
21027
20982
  },
21028
- subjectBlobs: {
21029
- type: 'array',
21030
- items: {
21031
- type: 'ref',
21032
- ref: 'lex:tools.ozone.moderation.defs#blobView',
21033
- },
20983
+ isRead: {
20984
+ type: 'boolean',
20985
+ },
20986
+ createdAt: {
20987
+ type: 'string',
20988
+ format: 'datetime',
20989
+ },
20990
+ },
20991
+ },
20992
+ notificationPreferences: {
20993
+ type: 'object',
20994
+ required: ['push'],
20995
+ properties: {
20996
+ push: {
20997
+ type: 'boolean',
20998
+ },
20999
+ },
21000
+ },
21001
+ reportRef: {
21002
+ type: 'object',
21003
+ description: "Reference to a report by its report table ID, as used by getReport and Ozone's report detail page.",
21004
+ required: ['reportId'],
21005
+ properties: {
21006
+ reportId: {
21007
+ type: 'integer',
21008
+ },
21009
+ subject: {
21010
+ type: 'union',
21011
+ refs: [
21012
+ 'lex:com.atproto.admin.defs#repoRef',
21013
+ 'lex:com.atproto.repo.strongRef',
21014
+ ],
21015
+ },
21016
+ status: {
21017
+ type: 'string',
21018
+ knownValues: ['pending', 'resolved'],
21019
+ },
21020
+ },
21021
+ },
21022
+ subjectRef: {
21023
+ type: 'object',
21024
+ required: ['subject'],
21025
+ properties: {
21026
+ subject: {
21027
+ type: 'union',
21028
+ refs: [
21029
+ 'lex:com.atproto.admin.defs#repoRef',
21030
+ 'lex:com.atproto.repo.strongRef',
21031
+ ],
21032
+ },
21033
+ actionType: {
21034
+ type: 'string',
21035
+ },
21036
+ actionId: {
21037
+ type: 'integer',
21038
+ },
21039
+ },
21040
+ },
21041
+ standingRef: {
21042
+ type: 'object',
21043
+ required: ['standing'],
21044
+ properties: {
21045
+ standing: {
21046
+ type: 'string',
21047
+ knownValues: ['good', 'warning', 'atRisk'],
21048
+ },
21049
+ previousStanding: {
21050
+ type: 'string',
21051
+ knownValues: ['good', 'warning', 'atRisk'],
21052
+ },
21053
+ },
21054
+ },
21055
+ },
21056
+ },
21057
+ ToolsOzoneInboxGetAccountStatus: {
21058
+ lexicon: 1,
21059
+ id: 'tools.ozone.inbox.getAccountStatus',
21060
+ defs: {
21061
+ main: {
21062
+ type: 'query',
21063
+ description: "Get the authenticated account's current standing with this moderation service.",
21064
+ output: {
21065
+ encoding: 'application/json',
21066
+ schema: {
21067
+ type: 'object',
21068
+ required: ['src', 'standing', 'updatedAt'],
21069
+ properties: {
21070
+ src: {
21071
+ type: 'string',
21072
+ format: 'did',
21073
+ description: 'DID of the moderation service returning this status.',
21074
+ },
21075
+ standing: {
21076
+ type: 'string',
21077
+ knownValues: ['good', 'warning', 'atRisk'],
21078
+ },
21079
+ updatedAt: {
21080
+ type: 'string',
21081
+ format: 'datetime',
21082
+ description: 'Newest account-status update or strike timestamp used to derive this standing, or the Unix epoch when neither exists. This is not a standing-transition timestamp; expiry can change standing without changing this value.',
21083
+ },
21084
+ expiresAt: {
21085
+ type: 'string',
21086
+ format: 'datetime',
21087
+ description: 'Time at which the current suspension expires. Present only for a temporary suspension.',
21088
+ },
21089
+ },
21090
+ },
21091
+ },
21092
+ parameters: {
21093
+ type: 'params',
21094
+ properties: {
21095
+ did: {
21096
+ type: 'string',
21097
+ format: 'did',
21098
+ description: 'Account to preview. Only Ozone staff can read another account; this does not change its read state.',
21099
+ },
21100
+ },
21101
+ },
21102
+ },
21103
+ },
21104
+ },
21105
+ ToolsOzoneInboxGetActionedSubject: {
21106
+ lexicon: 1,
21107
+ id: 'tools.ozone.inbox.getActionedSubject',
21108
+ defs: {
21109
+ main: {
21110
+ type: 'query',
21111
+ description: 'Get a subject belonging to the authenticated account, including its moderation action history from this moderation service.',
21112
+ parameters: {
21113
+ type: 'params',
21114
+ required: ['subject'],
21115
+ properties: {
21116
+ did: {
21117
+ type: 'string',
21118
+ format: 'did',
21119
+ description: 'Account to preview. Defaults to the authenticated account; another account requires an active moderator, triage, or admin credential.',
21120
+ },
21121
+ subject: {
21122
+ type: 'string',
21123
+ format: 'uri',
21124
+ description: 'DID or AT-URI of the subject to retrieve.',
21125
+ },
21126
+ limit: {
21127
+ type: 'integer',
21128
+ minimum: 1,
21129
+ maximum: 100,
21130
+ default: 50,
21131
+ description: 'Maximum number of actions to return.',
21132
+ },
21133
+ cursor: {
21134
+ type: 'string',
21135
+ description: "Opaque cursor for the next page of this subject's action history.",
21136
+ },
21137
+ },
21138
+ },
21139
+ output: {
21140
+ encoding: 'application/json',
21141
+ schema: {
21142
+ type: 'ref',
21143
+ ref: 'lex:tools.ozone.inbox.defs#subjectViewDetail',
21144
+ },
21145
+ },
21146
+ errors: [
21147
+ {
21148
+ name: 'NotFound',
21149
+ description: 'No subject was found, or the authenticated account does not own the subject.',
21150
+ },
21151
+ ],
21152
+ },
21153
+ },
21154
+ },
21155
+ ToolsOzoneInboxGetNotificationPreferences: {
21156
+ lexicon: 1,
21157
+ id: 'tools.ozone.inbox.getNotificationPreferences',
21158
+ defs: {
21159
+ main: {
21160
+ type: 'query',
21161
+ parameters: {
21162
+ type: 'params',
21163
+ properties: {
21164
+ did: {
21165
+ type: 'string',
21166
+ format: 'did',
21167
+ description: 'Account to preview. Only Ozone staff can read another account; this does not change its read state.',
21168
+ },
21169
+ },
21170
+ },
21171
+ output: {
21172
+ encoding: 'application/json',
21173
+ schema: {
21174
+ type: 'object',
21175
+ required: ['preferences'],
21176
+ properties: {
21177
+ preferences: {
21178
+ type: 'ref',
21179
+ ref: 'lex:tools.ozone.inbox.defs#notificationPreferences',
21180
+ },
21181
+ },
21182
+ },
21183
+ },
21184
+ },
21185
+ },
21186
+ },
21187
+ ToolsOzoneInboxGetReport: {
21188
+ lexicon: 1,
21189
+ id: 'tools.ozone.inbox.getReport',
21190
+ defs: {
21191
+ main: {
21192
+ type: 'query',
21193
+ description: 'Get a moderation report submitted by the authenticated account to this moderation service.',
21194
+ parameters: {
21195
+ type: 'params',
21196
+ required: ['id'],
21197
+ properties: {
21198
+ did: {
21199
+ type: 'string',
21200
+ format: 'did',
21201
+ description: 'Reporter to preview. Defaults to the authenticated account; another account requires an active moderator, triage, or admin credential.',
21202
+ },
21203
+ id: {
21204
+ type: 'integer',
21205
+ description: 'Report ID (report table ID), as returned by listReports.',
21206
+ },
21207
+ },
21208
+ },
21209
+ output: {
21210
+ encoding: 'application/json',
21211
+ schema: {
21212
+ type: 'object',
21213
+ required: ['report'],
21214
+ properties: {
21215
+ report: {
21216
+ type: 'ref',
21217
+ ref: 'lex:tools.ozone.inbox.getReport#reportView',
21218
+ },
21219
+ resolution: {
21220
+ type: 'ref',
21221
+ ref: 'lex:tools.ozone.inbox.getReport#resolutionView',
21222
+ description: 'Present only when the report is resolved.',
21223
+ },
21224
+ },
21225
+ },
21226
+ },
21227
+ errors: [
21228
+ {
21229
+ name: 'NotFound',
21230
+ description: 'No report was found, or the authenticated account did not submit it.',
21231
+ },
21232
+ ],
21233
+ },
21234
+ reportView: {
21235
+ type: 'object',
21236
+ required: [
21237
+ 'src',
21238
+ 'id',
21239
+ 'reasonType',
21240
+ 'subject',
21241
+ 'status',
21242
+ 'createdAt',
21243
+ 'updatedAt',
21244
+ ],
21245
+ properties: {
21246
+ src: {
21247
+ type: 'string',
21248
+ format: 'did',
21249
+ description: 'DID of the moderation service that received the report.',
21250
+ },
21251
+ id: {
21252
+ type: 'integer',
21253
+ description: "Report ID (report table ID), used by Ozone's report detail page.",
21254
+ },
21255
+ reasonType: {
21256
+ type: 'string',
21257
+ description: 'The exact fully-qualified reason NSID submitted with and stored on the report.',
21258
+ },
21259
+ reason: {
21260
+ type: 'string',
21261
+ maxGraphemes: 2000,
21262
+ maxLength: 20000,
21263
+ },
21264
+ subject: {
21265
+ type: 'union',
21266
+ refs: [
21267
+ 'lex:com.atproto.admin.defs#repoRef',
21268
+ 'lex:com.atproto.repo.strongRef',
21269
+ 'lex:chat.bsky.convo.defs#messageRef',
21270
+ 'lex:chat.bsky.convo.defs#convoRef',
21271
+ ],
21272
+ },
21273
+ record: {
21274
+ type: 'unknown',
21275
+ description: 'Raw record JSON for the subject, when the subject is a record and the record is available.',
21276
+ },
21277
+ status: {
21278
+ type: 'string',
21279
+ knownValues: ['pending', 'resolved'],
21280
+ },
21281
+ createdAt: {
21282
+ type: 'string',
21283
+ format: 'datetime',
21284
+ },
21285
+ updatedAt: {
21286
+ type: 'string',
21287
+ format: 'datetime',
21288
+ },
21289
+ },
21290
+ },
21291
+ resolutionView: {
21292
+ type: 'object',
21293
+ required: ['outcome', 'resolvedAt'],
21294
+ properties: {
21295
+ outcome: {
21296
+ type: 'string',
21297
+ knownValues: ['actionTaken', 'noAction', 'other'],
21298
+ },
21299
+ actionTaken: {
21300
+ type: 'string',
21301
+ description: "Public action associated with this report's resolution. See the public action vocabulary table.",
21302
+ },
21303
+ scope: {
21304
+ type: 'string',
21305
+ knownValues: ['network', 'app', 'labelOnly'],
21306
+ },
21307
+ resolvedAt: {
21308
+ type: 'string',
21309
+ format: 'datetime',
21310
+ },
21311
+ },
21312
+ },
21313
+ },
21314
+ },
21315
+ ToolsOzoneInboxGetUnreadCount: {
21316
+ lexicon: 1,
21317
+ id: 'tools.ozone.inbox.getUnreadCount',
21318
+ defs: {
21319
+ main: {
21320
+ type: 'query',
21321
+ parameters: {
21322
+ type: 'params',
21323
+ properties: {
21324
+ section: {
21325
+ type: 'string',
21326
+ knownValues: ['reports', 'subjects', 'accountStatus'],
21327
+ },
21328
+ did: {
21329
+ type: 'string',
21330
+ format: 'did',
21331
+ description: 'Account to preview. Only Ozone staff can read another account; this does not change its read state.',
21332
+ },
21333
+ },
21334
+ },
21335
+ output: {
21336
+ encoding: 'application/json',
21337
+ schema: {
21338
+ type: 'object',
21339
+ required: ['unreadCounts'],
21340
+ properties: {
21341
+ unreadCounts: {
21342
+ type: 'ref',
21343
+ ref: 'lex:tools.ozone.inbox.getUnreadCount#unreadCounts',
21344
+ },
21345
+ },
21346
+ },
21347
+ },
21348
+ },
21349
+ unreadCounts: {
21350
+ type: 'object',
21351
+ required: ['total'],
21352
+ properties: {
21353
+ total: {
21354
+ type: 'integer',
21355
+ minimum: 0,
21356
+ },
21357
+ reports: {
21358
+ type: 'integer',
21359
+ minimum: 0,
21360
+ },
21361
+ subjects: {
21362
+ type: 'integer',
21363
+ minimum: 0,
21364
+ },
21365
+ accountStatus: {
21366
+ type: 'integer',
21367
+ minimum: 0,
21368
+ maximum: 1,
21369
+ },
21370
+ },
21371
+ },
21372
+ },
21373
+ },
21374
+ ToolsOzoneInboxListActionedSubjects: {
21375
+ lexicon: 1,
21376
+ id: 'tools.ozone.inbox.listActionedSubjects',
21377
+ defs: {
21378
+ main: {
21379
+ type: 'query',
21380
+ description: 'List subjects belonging to the authenticated account that have moderation actions from this moderation service.',
21381
+ parameters: {
21382
+ type: 'params',
21383
+ properties: {
21384
+ did: {
21385
+ type: 'string',
21386
+ format: 'did',
21387
+ description: 'Account to preview. Defaults to the authenticated account; another account requires an active moderator, triage, or admin credential.',
21388
+ },
21389
+ filter: {
21390
+ type: 'string',
21391
+ default: 'all',
21392
+ enum: ['all', 'pending', 'resolved', 'unread'],
21393
+ description: "Filter subject activity. pending includes subjects whose latest appeal report is not closed; resolved includes subjects whose latest appeal report is closed. unread includes subjects whose public updatedAt is after the subjects section's seenAt watermark.",
21394
+ },
21395
+ sortField: {
21396
+ type: 'string',
21397
+ default: 'updatedAt',
21398
+ enum: ['createdAt', 'updatedAt'],
21399
+ },
21400
+ sortDirection: {
21401
+ type: 'string',
21402
+ default: 'desc',
21403
+ enum: ['asc', 'desc'],
21404
+ },
21405
+ limit: {
21406
+ type: 'integer',
21407
+ minimum: 1,
21408
+ maximum: 100,
21409
+ default: 50,
21410
+ },
21411
+ cursor: {
21412
+ type: 'string',
21413
+ description: 'An opaque cursor for pagination.',
21414
+ },
21415
+ },
21416
+ },
21417
+ output: {
21418
+ encoding: 'application/json',
21419
+ schema: {
21420
+ type: 'object',
21421
+ required: ['subjects'],
21422
+ properties: {
21423
+ cursor: {
21424
+ type: 'string',
21425
+ },
21426
+ subjects: {
21427
+ type: 'array',
21428
+ items: {
21429
+ type: 'ref',
21430
+ ref: 'lex:tools.ozone.inbox.defs#subjectView',
21431
+ },
21432
+ },
21433
+ },
21434
+ },
21435
+ },
21436
+ },
21437
+ },
21438
+ },
21439
+ ToolsOzoneInboxListNotifications: {
21440
+ lexicon: 1,
21441
+ id: 'tools.ozone.inbox.listNotifications',
21442
+ defs: {
21443
+ main: {
21444
+ type: 'query',
21445
+ parameters: {
21446
+ type: 'params',
21447
+ properties: {
21448
+ section: {
21449
+ type: 'string',
21450
+ knownValues: ['reports', 'subjects', 'accountStatus'],
21451
+ },
21452
+ reasons: {
21453
+ type: 'array',
21454
+ items: {
21455
+ type: 'string',
21456
+ knownValues: [
21457
+ 'reportResolved',
21458
+ 'reportReopened',
21459
+ 'actionTaken',
21460
+ 'actionReversed',
21461
+ 'appealResolved',
21462
+ 'standingChanged',
21463
+ ],
21464
+ },
21465
+ },
21466
+ unreadOnly: {
21467
+ type: 'boolean',
21468
+ default: false,
21469
+ },
21470
+ limit: {
21471
+ type: 'integer',
21472
+ minimum: 1,
21473
+ maximum: 100,
21474
+ default: 50,
21475
+ },
21476
+ cursor: {
21477
+ type: 'string',
21478
+ },
21479
+ did: {
21480
+ type: 'string',
21481
+ format: 'did',
21482
+ description: 'Account to preview. Only Ozone staff can read another account; this does not change its read state.',
21483
+ },
21484
+ },
21485
+ },
21486
+ output: {
21487
+ encoding: 'application/json',
21488
+ schema: {
21489
+ type: 'object',
21490
+ required: ['notifications'],
21491
+ properties: {
21492
+ cursor: {
21493
+ type: 'string',
21494
+ },
21495
+ notifications: {
21496
+ type: 'array',
21497
+ items: {
21498
+ type: 'ref',
21499
+ ref: 'lex:tools.ozone.inbox.defs#notification',
21500
+ },
21501
+ },
21502
+ },
21503
+ },
21504
+ },
21505
+ },
21506
+ },
21507
+ },
21508
+ ToolsOzoneInboxListReports: {
21509
+ lexicon: 1,
21510
+ id: 'tools.ozone.inbox.listReports',
21511
+ defs: {
21512
+ main: {
21513
+ type: 'query',
21514
+ description: 'List moderation reports submitted by the authenticated account to this moderation service.',
21515
+ parameters: {
21516
+ type: 'params',
21517
+ properties: {
21518
+ did: {
21519
+ type: 'string',
21520
+ format: 'did',
21521
+ description: 'Account to preview. Defaults to the authenticated account; another account requires an active moderator, triage, or admin credential.',
21522
+ },
21523
+ filter: {
21524
+ type: 'string',
21525
+ default: 'all',
21526
+ enum: ['all', 'pending', 'resolved', 'unread'],
21527
+ description: "Filter report activity. unread includes reports whose updatedAt is after the reports section's seenAt watermark.",
21528
+ },
21529
+ sortField: {
21530
+ type: 'string',
21531
+ default: 'updatedAt',
21532
+ enum: ['createdAt', 'updatedAt'],
21533
+ },
21534
+ sortDirection: {
21535
+ type: 'string',
21536
+ default: 'desc',
21537
+ enum: ['asc', 'desc'],
21538
+ },
21539
+ limit: {
21540
+ type: 'integer',
21541
+ minimum: 1,
21542
+ maximum: 100,
21543
+ default: 50,
21544
+ },
21545
+ cursor: {
21546
+ type: 'string',
21547
+ description: 'An opaque cursor for pagination.',
21548
+ },
21549
+ },
21550
+ },
21551
+ output: {
21552
+ encoding: 'application/json',
21553
+ schema: {
21554
+ type: 'object',
21555
+ required: ['reports'],
21556
+ properties: {
21557
+ cursor: {
21558
+ type: 'string',
21559
+ },
21560
+ reports: {
21561
+ type: 'array',
21562
+ items: {
21563
+ type: 'ref',
21564
+ ref: 'lex:tools.ozone.inbox.listReports#reportView',
21565
+ },
21566
+ },
21567
+ },
21568
+ },
21569
+ },
21570
+ },
21571
+ reportView: {
21572
+ type: 'object',
21573
+ required: [
21574
+ 'src',
21575
+ 'id',
21576
+ 'isRead',
21577
+ 'reasonType',
21578
+ 'subject',
21579
+ 'status',
21580
+ 'createdAt',
21581
+ 'updatedAt',
21582
+ ],
21583
+ properties: {
21584
+ src: {
21585
+ type: 'string',
21586
+ format: 'did',
21587
+ description: 'DID of the moderation service that received the report.',
21588
+ },
21589
+ id: {
21590
+ type: 'integer',
21591
+ description: "Report ID (report table ID), used by getReport and Ozone's report detail page.",
21592
+ },
21593
+ isRead: {
21594
+ type: 'boolean',
21595
+ },
21596
+ reasonType: {
21597
+ type: 'string',
21598
+ description: 'The exact fully-qualified reason NSID submitted with and stored on the report.',
21599
+ },
21600
+ reason: {
21601
+ type: 'string',
21602
+ maxGraphemes: 2000,
21603
+ maxLength: 20000,
21604
+ },
21605
+ lastActionTaken: {
21606
+ type: 'string',
21607
+ description: "Public action associated with this report's transition to resolved. See the public action vocabulary table.",
21608
+ },
21609
+ scope: {
21610
+ type: 'string',
21611
+ knownValues: ['network', 'app', 'labelOnly'],
21612
+ },
21613
+ subject: {
21614
+ type: 'union',
21615
+ refs: [
21616
+ 'lex:com.atproto.admin.defs#repoRef',
21617
+ 'lex:com.atproto.repo.strongRef',
21618
+ 'lex:chat.bsky.convo.defs#messageRef',
21619
+ 'lex:chat.bsky.convo.defs#convoRef',
21620
+ ],
21621
+ },
21622
+ status: {
21623
+ type: 'string',
21624
+ knownValues: ['pending', 'resolved'],
21625
+ },
21626
+ createdAt: {
21627
+ type: 'string',
21628
+ format: 'datetime',
21629
+ },
21630
+ updatedAt: {
21631
+ type: 'string',
21632
+ format: 'datetime',
21633
+ },
21634
+ },
21635
+ },
21636
+ },
21637
+ },
21638
+ ToolsOzoneInboxPutNotificationPreferences: {
21639
+ lexicon: 1,
21640
+ id: 'tools.ozone.inbox.putNotificationPreferences',
21641
+ defs: {
21642
+ main: {
21643
+ type: 'procedure',
21644
+ input: {
21645
+ encoding: 'application/json',
21646
+ schema: {
21647
+ type: 'object',
21648
+ required: ['push'],
21649
+ properties: {
21650
+ push: {
21651
+ type: 'boolean',
21652
+ },
21653
+ },
21654
+ },
21655
+ },
21656
+ output: {
21657
+ encoding: 'application/json',
21658
+ schema: {
21659
+ type: 'object',
21660
+ required: ['preferences'],
21661
+ properties: {
21662
+ preferences: {
21663
+ type: 'ref',
21664
+ ref: 'lex:tools.ozone.inbox.defs#notificationPreferences',
21665
+ },
21666
+ },
21667
+ },
21668
+ },
21669
+ },
21670
+ },
21671
+ },
21672
+ ToolsOzoneInboxUpdateSeen: {
21673
+ lexicon: 1,
21674
+ id: 'tools.ozone.inbox.updateSeen',
21675
+ defs: {
21676
+ main: {
21677
+ type: 'procedure',
21678
+ input: {
21679
+ encoding: 'application/json',
21680
+ schema: {
21681
+ type: 'object',
21682
+ required: ['sections'],
21683
+ properties: {
21684
+ sections: {
21685
+ type: 'array',
21686
+ minLength: 1,
21687
+ items: {
21688
+ type: 'string',
21689
+ knownValues: ['reports', 'subjects', 'accountStatus'],
21690
+ },
21691
+ },
21692
+ seenAt: {
21693
+ type: 'string',
21694
+ format: 'datetime',
21695
+ description: 'Mark each requested section read up to this instant. Defaults to server time and is clamped to server time when in the future. Newer existing watermarks are preserved independently for each section.',
21696
+ },
21697
+ },
21698
+ },
21699
+ },
21700
+ output: {
21701
+ encoding: 'application/json',
21702
+ schema: {
21703
+ type: 'object',
21704
+ required: ['seenAt'],
21705
+ properties: {
21706
+ seenAt: {
21707
+ type: 'string',
21708
+ format: 'datetime',
21709
+ description: 'The earliest resulting watermark across the requested sections, in UTC. Every requested section is read through this instant; individual sections may already have newer watermarks.',
21710
+ },
21711
+ },
21712
+ },
21713
+ },
21714
+ },
21715
+ },
21716
+ },
21717
+ ToolsOzoneModerationCancelScheduledActions: {
21718
+ lexicon: 1,
21719
+ id: 'tools.ozone.moderation.cancelScheduledActions',
21720
+ defs: {
21721
+ main: {
21722
+ type: 'procedure',
21723
+ description: 'Cancel all pending scheduled moderation actions for specified subjects',
21724
+ input: {
21725
+ encoding: 'application/json',
21726
+ schema: {
21727
+ type: 'object',
21728
+ required: ['subjects'],
21729
+ properties: {
21730
+ subjects: {
21731
+ type: 'array',
21732
+ maxLength: 100,
21733
+ items: {
21734
+ type: 'string',
21735
+ format: 'did',
21736
+ },
21737
+ description: 'Array of DID subjects to cancel scheduled actions for',
21738
+ },
21739
+ comment: {
21740
+ type: 'string',
21741
+ description: 'Optional comment describing the reason for cancellation',
21742
+ },
21743
+ },
21744
+ },
21745
+ },
21746
+ output: {
21747
+ encoding: 'application/json',
21748
+ schema: {
21749
+ type: 'ref',
21750
+ ref: 'lex:tools.ozone.moderation.cancelScheduledActions#cancellationResults',
21751
+ },
21752
+ },
21753
+ },
21754
+ cancellationResults: {
21755
+ type: 'object',
21756
+ required: ['succeeded', 'failed'],
21757
+ properties: {
21758
+ succeeded: {
21759
+ type: 'array',
21760
+ items: {
21761
+ type: 'string',
21762
+ format: 'did',
21763
+ },
21764
+ description: 'DIDs for which all pending scheduled actions were successfully cancelled',
21765
+ },
21766
+ failed: {
21767
+ type: 'array',
21768
+ items: {
21769
+ type: 'ref',
21770
+ ref: 'lex:tools.ozone.moderation.cancelScheduledActions#failedCancellation',
21771
+ },
21772
+ description: 'DIDs for which cancellation failed with error details',
21773
+ },
21774
+ },
21775
+ },
21776
+ failedCancellation: {
21777
+ type: 'object',
21778
+ required: ['did', 'error'],
21779
+ properties: {
21780
+ did: {
21781
+ type: 'string',
21782
+ format: 'did',
21783
+ },
21784
+ error: {
21785
+ type: 'string',
21786
+ },
21787
+ errorCode: {
21788
+ type: 'string',
21789
+ },
21790
+ },
21791
+ },
21792
+ },
21793
+ },
21794
+ ToolsOzoneModerationDefs: {
21795
+ lexicon: 1,
21796
+ id: 'tools.ozone.moderation.defs',
21797
+ defs: {
21798
+ modEventView: {
21799
+ type: 'object',
21800
+ required: [
21801
+ 'id',
21802
+ 'event',
21803
+ 'subject',
21804
+ 'subjectBlobCids',
21805
+ 'createdBy',
21806
+ 'createdAt',
21807
+ ],
21808
+ properties: {
21809
+ id: {
21810
+ type: 'integer',
21811
+ },
21812
+ event: {
21813
+ type: 'union',
21814
+ refs: [
21815
+ 'lex:tools.ozone.moderation.defs#modEventTakedown',
21816
+ 'lex:tools.ozone.moderation.defs#modEventReverseTakedown',
21817
+ 'lex:tools.ozone.moderation.defs#modEventComment',
21818
+ 'lex:tools.ozone.moderation.defs#modEventReport',
21819
+ 'lex:tools.ozone.moderation.defs#modEventLabel',
21820
+ 'lex:tools.ozone.moderation.defs#modEventAcknowledge',
21821
+ 'lex:tools.ozone.moderation.defs#modEventEscalate',
21822
+ 'lex:tools.ozone.moderation.defs#modEventMute',
21823
+ 'lex:tools.ozone.moderation.defs#modEventUnmute',
21824
+ 'lex:tools.ozone.moderation.defs#modEventMuteReporter',
21825
+ 'lex:tools.ozone.moderation.defs#modEventUnmuteReporter',
21826
+ 'lex:tools.ozone.moderation.defs#modEventEmail',
21827
+ 'lex:tools.ozone.moderation.defs#modEventResolveAppeal',
21828
+ 'lex:tools.ozone.moderation.defs#modEventDivert',
21829
+ 'lex:tools.ozone.moderation.defs#modEventTag',
21830
+ 'lex:tools.ozone.moderation.defs#accountEvent',
21831
+ 'lex:tools.ozone.moderation.defs#identityEvent',
21832
+ 'lex:tools.ozone.moderation.defs#recordEvent',
21833
+ 'lex:tools.ozone.moderation.defs#modEventPriorityScore',
21834
+ 'lex:tools.ozone.moderation.defs#ageAssuranceEvent',
21835
+ 'lex:tools.ozone.moderation.defs#ageAssuranceOverrideEvent',
21836
+ 'lex:tools.ozone.moderation.defs#ageAssurancePurgeEvent',
21837
+ 'lex:tools.ozone.moderation.defs#revokeAccountCredentialsEvent',
21838
+ 'lex:tools.ozone.moderation.defs#scheduleTakedownEvent',
21839
+ 'lex:tools.ozone.moderation.defs#cancelScheduledTakedownEvent',
21840
+ ],
21841
+ },
21842
+ subject: {
21843
+ type: 'union',
21844
+ refs: [
21845
+ 'lex:com.atproto.admin.defs#repoRef',
21846
+ 'lex:com.atproto.repo.strongRef',
21847
+ 'lex:chat.bsky.convo.defs#messageRef',
21848
+ 'lex:chat.bsky.convo.defs#convoRef',
21849
+ ],
21850
+ },
21851
+ subjectBlobCids: {
21852
+ type: 'array',
21853
+ items: {
21854
+ type: 'string',
21855
+ },
21856
+ },
21857
+ createdBy: {
21858
+ type: 'string',
21859
+ format: 'did',
21860
+ },
21861
+ createdAt: {
21862
+ type: 'string',
21863
+ format: 'datetime',
21864
+ },
21865
+ creatorHandle: {
21866
+ type: 'string',
21867
+ },
21868
+ subjectHandle: {
21869
+ type: 'string',
21870
+ },
21871
+ modTool: {
21872
+ type: 'ref',
21873
+ ref: 'lex:tools.ozone.moderation.defs#modTool',
21874
+ },
21875
+ },
21876
+ },
21877
+ modEventViewDetail: {
21878
+ type: 'object',
21879
+ required: [
21880
+ 'id',
21881
+ 'event',
21882
+ 'subject',
21883
+ 'subjectBlobs',
21884
+ 'createdBy',
21885
+ 'createdAt',
21886
+ ],
21887
+ properties: {
21888
+ id: {
21889
+ type: 'integer',
21890
+ },
21891
+ event: {
21892
+ type: 'union',
21893
+ refs: [
21894
+ 'lex:tools.ozone.moderation.defs#modEventTakedown',
21895
+ 'lex:tools.ozone.moderation.defs#modEventReverseTakedown',
21896
+ 'lex:tools.ozone.moderation.defs#modEventComment',
21897
+ 'lex:tools.ozone.moderation.defs#modEventReport',
21898
+ 'lex:tools.ozone.moderation.defs#modEventLabel',
21899
+ 'lex:tools.ozone.moderation.defs#modEventAcknowledge',
21900
+ 'lex:tools.ozone.moderation.defs#modEventEscalate',
21901
+ 'lex:tools.ozone.moderation.defs#modEventMute',
21902
+ 'lex:tools.ozone.moderation.defs#modEventUnmute',
21903
+ 'lex:tools.ozone.moderation.defs#modEventMuteReporter',
21904
+ 'lex:tools.ozone.moderation.defs#modEventUnmuteReporter',
21905
+ 'lex:tools.ozone.moderation.defs#modEventEmail',
21906
+ 'lex:tools.ozone.moderation.defs#modEventResolveAppeal',
21907
+ 'lex:tools.ozone.moderation.defs#modEventDivert',
21908
+ 'lex:tools.ozone.moderation.defs#modEventTag',
21909
+ 'lex:tools.ozone.moderation.defs#accountEvent',
21910
+ 'lex:tools.ozone.moderation.defs#identityEvent',
21911
+ 'lex:tools.ozone.moderation.defs#recordEvent',
21912
+ 'lex:tools.ozone.moderation.defs#modEventPriorityScore',
21913
+ 'lex:tools.ozone.moderation.defs#ageAssuranceEvent',
21914
+ 'lex:tools.ozone.moderation.defs#ageAssuranceOverrideEvent',
21915
+ 'lex:tools.ozone.moderation.defs#ageAssurancePurgeEvent',
21916
+ 'lex:tools.ozone.moderation.defs#revokeAccountCredentialsEvent',
21917
+ 'lex:tools.ozone.moderation.defs#scheduleTakedownEvent',
21918
+ 'lex:tools.ozone.moderation.defs#cancelScheduledTakedownEvent',
21919
+ ],
21920
+ },
21921
+ subject: {
21922
+ type: 'union',
21923
+ refs: [
21924
+ 'lex:tools.ozone.moderation.defs#repoView',
21925
+ 'lex:tools.ozone.moderation.defs#repoViewNotFound',
21926
+ 'lex:tools.ozone.moderation.defs#recordView',
21927
+ 'lex:tools.ozone.moderation.defs#recordViewNotFound',
21928
+ 'lex:tools.ozone.moderation.defs#convoView',
21929
+ ],
21930
+ },
21931
+ subjectBlobs: {
21932
+ type: 'array',
21933
+ items: {
21934
+ type: 'ref',
21935
+ ref: 'lex:tools.ozone.moderation.defs#blobView',
21936
+ },
21034
21937
  },
21035
21938
  createdBy: {
21036
21939
  type: 'string',
@@ -21415,6 +22318,21 @@ export const schemaDict = {
21415
22318
  description: 'Report a subject',
21416
22319
  required: ['reportType'],
21417
22320
  properties: {
22321
+ appealSubmittedBy: {
22322
+ type: 'string',
22323
+ format: 'did',
22324
+ description: 'Moderator who submitted this appeal on behalf of the affected account. Returned by moderator event APIs.',
22325
+ },
22326
+ appealActionType: {
22327
+ type: 'string',
22328
+ description: 'Action reference type recorded when this appeal was submitted.',
22329
+ },
22330
+ appealActionId: {
22331
+ type: 'integer',
22332
+ },
22333
+ appealLabel: {
22334
+ type: 'string',
22335
+ },
21418
22336
  comment: {
21419
22337
  type: 'string',
21420
22338
  },
@@ -26123,6 +27041,41 @@ export const schemaDict = {
26123
27041
  },
26124
27042
  },
26125
27043
  },
27044
+ ToolsOzoneServerGetCapabilities: {
27045
+ lexicon: 1,
27046
+ id: 'tools.ozone.server.getCapabilities',
27047
+ defs: {
27048
+ main: {
27049
+ type: 'query',
27050
+ output: {
27051
+ encoding: 'application/json',
27052
+ schema: {
27053
+ type: 'object',
27054
+ properties: {
27055
+ notifications: {
27056
+ type: 'ref',
27057
+ ref: 'lex:tools.ozone.server.getCapabilities#notificationConfig',
27058
+ },
27059
+ },
27060
+ },
27061
+ },
27062
+ },
27063
+ notificationConfig: {
27064
+ type: 'object',
27065
+ required: ['channels'],
27066
+ properties: {
27067
+ channels: {
27068
+ type: 'array',
27069
+ minLength: 1,
27070
+ items: {
27071
+ type: 'string',
27072
+ knownValues: ['inApp', 'push'],
27073
+ },
27074
+ },
27075
+ },
27076
+ },
27077
+ },
27078
+ },
26126
27079
  ToolsOzoneServerGetConfig: {
26127
27080
  lexicon: 1,
26128
27081
  id: 'tools.ozone.server.getConfig',
@@ -27777,6 +28730,16 @@ export const ids = {
27777
28730
  ToolsOzoneHostingGetAccountHistory: 'tools.ozone.hosting.getAccountHistory',
27778
28731
  ToolsOzoneInboxAppealActionedSubject: 'tools.ozone.inbox.appealActionedSubject',
27779
28732
  ToolsOzoneInboxDefs: 'tools.ozone.inbox.defs',
28733
+ ToolsOzoneInboxGetAccountStatus: 'tools.ozone.inbox.getAccountStatus',
28734
+ ToolsOzoneInboxGetActionedSubject: 'tools.ozone.inbox.getActionedSubject',
28735
+ ToolsOzoneInboxGetNotificationPreferences: 'tools.ozone.inbox.getNotificationPreferences',
28736
+ ToolsOzoneInboxGetReport: 'tools.ozone.inbox.getReport',
28737
+ ToolsOzoneInboxGetUnreadCount: 'tools.ozone.inbox.getUnreadCount',
28738
+ ToolsOzoneInboxListActionedSubjects: 'tools.ozone.inbox.listActionedSubjects',
28739
+ ToolsOzoneInboxListNotifications: 'tools.ozone.inbox.listNotifications',
28740
+ ToolsOzoneInboxListReports: 'tools.ozone.inbox.listReports',
28741
+ ToolsOzoneInboxPutNotificationPreferences: 'tools.ozone.inbox.putNotificationPreferences',
28742
+ ToolsOzoneInboxUpdateSeen: 'tools.ozone.inbox.updateSeen',
27780
28743
  ToolsOzoneModerationCancelScheduledActions: 'tools.ozone.moderation.cancelScheduledActions',
27781
28744
  ToolsOzoneModerationDefs: 'tools.ozone.moderation.defs',
27782
28745
  ToolsOzoneModerationEmitEvent: 'tools.ozone.moderation.emitEvent',
@@ -27824,6 +28787,7 @@ export const ids = {
27824
28787
  ToolsOzoneSafelinkQueryRules: 'tools.ozone.safelink.queryRules',
27825
28788
  ToolsOzoneSafelinkRemoveRule: 'tools.ozone.safelink.removeRule',
27826
28789
  ToolsOzoneSafelinkUpdateRule: 'tools.ozone.safelink.updateRule',
28790
+ ToolsOzoneServerGetCapabilities: 'tools.ozone.server.getCapabilities',
27827
28791
  ToolsOzoneServerGetConfig: 'tools.ozone.server.getConfig',
27828
28792
  ToolsOzoneSetAddValues: 'tools.ozone.set.addValues',
27829
28793
  ToolsOzoneSetDefs: 'tools.ozone.set.defs',