@verbatims/sdk 1.6.15 → 1.6.16

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.
package/dist/types.d.ts CHANGED
@@ -421,4 +421,114 @@ export interface ThemeSuggestionsQuery {
421
421
  tags?: string;
422
422
  language?: string;
423
423
  }
424
+ export type SocialPlatform = 'x' | 'bluesky' | 'instagram' | 'threads' | 'facebook' | 'pinterest';
425
+ export type SocialQueueStatus = 'queued' | 'processing' | 'posted' | 'failed';
426
+ export type SocialPostStatus = 'success' | 'failed';
427
+ export interface SocialQueueStats {
428
+ queued: number;
429
+ processing: number;
430
+ posted: number;
431
+ failed: number;
432
+ }
433
+ export interface SocialPlatformInfo {
434
+ platform: SocialPlatform;
435
+ label: string;
436
+ enabled: boolean;
437
+ queue: SocialQueueStats;
438
+ }
439
+ export interface SocialResolvedContent {
440
+ source_type: string;
441
+ source_id: number;
442
+ primary_text: string | null;
443
+ secondary_text: string | null;
444
+ canonical_path: string | null;
445
+ title: string | null;
446
+ subtitle: string | null;
447
+ language: string | null;
448
+ }
449
+ export interface SocialQueueItem {
450
+ id: number;
451
+ quote_id: number;
452
+ source_type: string;
453
+ source_id: number;
454
+ platform: SocialPlatform;
455
+ status: SocialQueueStatus;
456
+ position: number;
457
+ scheduled_for: string | null;
458
+ created_at: string | null;
459
+ updated_at: string | null;
460
+ published_post_url: string | null;
461
+ published_external_post_id: string | null;
462
+ published_posted_at: string | null;
463
+ error_message: string | null;
464
+ quote_posts_count: number;
465
+ quote_text: string | null;
466
+ quote_language: string | null;
467
+ author_name: string | null;
468
+ reference_name: string | null;
469
+ resolved_content: SocialResolvedContent | null;
470
+ }
471
+ export interface SocialPost {
472
+ id: number;
473
+ quote_id: number;
474
+ source_type: string;
475
+ source_id: number;
476
+ queue_id: number | null;
477
+ platform: SocialPlatform;
478
+ status: SocialPostStatus;
479
+ post_text: string | null;
480
+ post_url: string | null;
481
+ external_post_id: string | null;
482
+ error_message: string | null;
483
+ posted_at: string | null;
484
+ created_at: string | null;
485
+ }
486
+ export interface QueuedSocialItem {
487
+ id: number;
488
+ quote_id: number;
489
+ source_type: string;
490
+ source_id: number;
491
+ position: number;
492
+ status?: SocialQueueStatus;
493
+ }
494
+ export interface ListSocialQueueParams {
495
+ page?: number;
496
+ limit?: number;
497
+ platform?: SocialPlatform;
498
+ status?: SocialQueueStatus | 'active';
499
+ search?: string;
500
+ }
501
+ export interface ListSocialPostsParams {
502
+ page?: number;
503
+ limit?: number;
504
+ platform?: SocialPlatform;
505
+ status?: SocialPostStatus;
506
+ }
507
+ export interface AddToSocialQueueData {
508
+ quote_ids: number[];
509
+ platform?: SocialPlatform;
510
+ scheduled_for?: string | null;
511
+ }
512
+ export interface AddRandomToSocialQueueData {
513
+ platform?: SocialPlatform;
514
+ count?: number;
515
+ language?: string;
516
+ }
517
+ export interface ClearSocialQueueData {
518
+ platform: SocialPlatform;
519
+ confirm: boolean;
520
+ scope?: 'all' | 'finished';
521
+ }
522
+ export interface ReorderSocialQueueData {
523
+ id: number;
524
+ direction?: 'up' | 'down';
525
+ before_id?: number | null;
526
+ }
527
+ export interface RunSocialAutopostData {
528
+ platform?: SocialPlatform;
529
+ }
530
+ export interface SocialQueueListResult {
531
+ queue: SocialQueueItem[];
532
+ stats: SocialQueueStats;
533
+ }
424
534
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@verbatims/sdk",
3
- "version": "1.6.15",
3
+ "version": "1.6.16",
4
4
  "description": "TypeScript SDK for the Verbatims quotes API",
5
5
  "type": "module",
6
6
  "workspaces": [
package/src/index.ts CHANGED
@@ -7,6 +7,7 @@ import { TagsResource } from './resources/tags'
7
7
  import { CollectionsResource } from './resources/collections'
8
8
  import { SearchResource } from './resources/search'
9
9
  import { ThemesResource } from './resources/themes'
10
+ import { SocialResource } from './resources/social'
10
11
  import type { UploadedImage } from './types'
11
12
  import { apiResponseSchema } from './types'
12
13
 
@@ -66,6 +67,23 @@ export type {
66
67
  FeedParams,
67
68
  ThemeSuggestionsQuery,
68
69
  UploadedImage,
70
+ SocialPlatform,
71
+ SocialQueueStatus,
72
+ SocialPostStatus,
73
+ SocialPlatformInfo,
74
+ SocialQueueStats,
75
+ SocialResolvedContent,
76
+ SocialQueueItem,
77
+ SocialPost,
78
+ QueuedSocialItem,
79
+ SocialQueueListResult,
80
+ ListSocialQueueParams,
81
+ ListSocialPostsParams,
82
+ AddToSocialQueueData,
83
+ AddRandomToSocialQueueData,
84
+ ClearSocialQueueData,
85
+ ReorderSocialQueueData,
86
+ RunSocialAutopostData,
69
87
  } from './types'
70
88
 
71
89
  export class VerbatimsClient extends BaseClient {
@@ -76,6 +94,7 @@ export class VerbatimsClient extends BaseClient {
76
94
  collections: CollectionsResource
77
95
  search: SearchResource
78
96
  themes: ThemesResource
97
+ social: SocialResource
79
98
 
80
99
  constructor(apiKey: string, opts?: ConstructorParameters<typeof BaseClient>[1]) {
81
100
  super(apiKey, opts)
@@ -86,6 +105,7 @@ export class VerbatimsClient extends BaseClient {
86
105
  this.collections = new CollectionsResource(this)
87
106
  this.search = new SearchResource(this)
88
107
  this.themes = new ThemesResource(this)
108
+ this.social = new SocialResource(this)
89
109
  }
90
110
 
91
111
  async uploadImage(file: Blob) {
@@ -7,6 +7,7 @@ import { TagsResource } from '../tags'
7
7
  import { CollectionsResource } from '../collections'
8
8
  import { SearchResource } from '../search'
9
9
  import { ThemesResource } from '../themes'
10
+ import { SocialResource } from '../social'
10
11
 
11
12
  function mockResponse(data: unknown, status = 200) {
12
13
  return new Response(JSON.stringify(data), {
@@ -627,3 +628,252 @@ describe('SearchResource', () => {
627
628
  expect(results).toHaveLength(2)
628
629
  })
629
630
  })
631
+
632
+ const queueItemFixture = {
633
+ id: 1,
634
+ quote_id: 42,
635
+ source_type: 'quote',
636
+ source_id: 42,
637
+ platform: 'x',
638
+ status: 'queued',
639
+ position: 3,
640
+ scheduled_for: null,
641
+ created_at: '2026-01-01T00:00:00.000Z',
642
+ updated_at: '2026-01-01T00:00:00.000Z',
643
+ published_post_url: null,
644
+ published_external_post_id: null,
645
+ published_posted_at: null,
646
+ error_message: null,
647
+ quote_posts_count: 0,
648
+ quote_text: 'Test quote',
649
+ quote_language: 'en',
650
+ author_name: 'Jane Doe',
651
+ reference_name: null,
652
+ resolved_content: {
653
+ source_type: 'quote',
654
+ source_id: 42,
655
+ primary_text: 'Test quote',
656
+ secondary_text: null,
657
+ canonical_path: '/quotes/42',
658
+ title: null,
659
+ subtitle: null,
660
+ language: 'en',
661
+ },
662
+ }
663
+
664
+ describe('SocialResource', () => {
665
+ let fetchFn: ReturnType<typeof vi.fn>
666
+ let social: SocialResource
667
+
668
+ beforeEach(() => {
669
+ const mock = createMockClient()
670
+ fetchFn = mock.fetchFn
671
+ social = new SocialResource(mock.client)
672
+ })
673
+
674
+ it('listPlatforms calls GET /social/platforms', async () => {
675
+ fetchFn.mockResolvedValue(mockResponse({
676
+ success: true,
677
+ data: [{ platform: 'x', label: 'X', enabled: true, queue: { queued: 3, processing: 0, posted: 12, failed: 1 } }],
678
+ }))
679
+
680
+ const result = await social.listPlatforms()
681
+ const [url] = fetchFn.mock.calls[0]
682
+ expect(url).toContain('/social/platforms')
683
+ expect(result.data![0].platform).toBe('x')
684
+ expect(result.data![0].queue.queued).toBe(3)
685
+ })
686
+
687
+ it('listQueue calls GET /social/queue with params and parses queue + stats', async () => {
688
+ fetchFn.mockResolvedValue(mockResponse({
689
+ success: true,
690
+ data: {
691
+ queue: [queueItemFixture],
692
+ stats: { queued: 1, processing: 0, posted: 0, failed: 0 },
693
+ },
694
+ pagination: { page: 1, limit: 20, total: 1, totalPages: 1, hasMore: false },
695
+ }))
696
+
697
+ const result = await social.listQueue({ platform: 'x', status: 'queued', search: 'test' })
698
+ const [url] = fetchFn.mock.calls[0]
699
+ const parsed = new URL(url, 'http://localhost')
700
+ expect(parsed.pathname).toContain('/social/queue')
701
+ expect(parsed.searchParams.get('platform')).toBe('x')
702
+ expect(parsed.searchParams.get('status')).toBe('queued')
703
+ expect(parsed.searchParams.get('search')).toBe('test')
704
+ expect(result.data!.queue).toHaveLength(1)
705
+ expect(result.data!.queue[0].quote_text).toBe('Test quote')
706
+ expect(result.data!.stats.queued).toBe(1)
707
+ })
708
+
709
+ it('paginateQueue yields items across pages', async () => {
710
+ fetchFn
711
+ .mockResolvedValueOnce(mockResponse({
712
+ success: true,
713
+ data: {
714
+ queue: [{ ...queueItemFixture, id: 1 }],
715
+ stats: { queued: 2, processing: 0, posted: 0, failed: 0 },
716
+ },
717
+ pagination: { page: 1, limit: 1, total: 2, totalPages: 2, hasMore: true },
718
+ }))
719
+ .mockResolvedValueOnce(mockResponse({
720
+ success: true,
721
+ data: {
722
+ queue: [{ ...queueItemFixture, id: 2 }],
723
+ stats: { queued: 2, processing: 0, posted: 0, failed: 0 },
724
+ },
725
+ pagination: { page: 2, limit: 1, total: 2, totalPages: 2, hasMore: false },
726
+ }))
727
+
728
+ const results = []
729
+ for await (const item of social.paginateQueue({ platform: 'x' })) {
730
+ results.push(item)
731
+ }
732
+ expect(results).toHaveLength(2)
733
+ expect(results[1].id).toBe(2)
734
+ })
735
+
736
+ it('getQueueItem calls GET /social/queue/:id', async () => {
737
+ fetchFn.mockResolvedValue(mockResponse({ success: true, data: queueItemFixture }))
738
+
739
+ const result = await social.getQueueItem(1)
740
+ const [url] = fetchFn.mock.calls[0]
741
+ expect(url).toContain('/social/queue/1')
742
+ expect(result.data!.id).toBe(1)
743
+ })
744
+
745
+ it('addToQueue calls POST /social/queue with body and parses count', async () => {
746
+ fetchFn.mockResolvedValue(mockResponse({
747
+ success: true,
748
+ data: [{ id: 1, quote_id: 42, source_type: 'quote', source_id: 42, position: 1, status: 'queued' }],
749
+ count: 1,
750
+ }))
751
+
752
+ const result = await social.addToQueue({ quote_ids: [42], platform: 'bluesky', scheduled_for: null })
753
+ const [url, opts] = fetchFn.mock.calls[0]
754
+ expect(url).toContain('/social/queue')
755
+ expect(opts.method).toBe('POST')
756
+ const body = JSON.parse(opts.body)
757
+ expect(body.quote_ids).toEqual([42])
758
+ expect(body.platform).toBe('bluesky')
759
+ expect(result.count).toBe(1)
760
+ expect(result.data![0].quote_id).toBe(42)
761
+ })
762
+
763
+ it('addRandomToQueue calls POST /social/queue/bulk-random', async () => {
764
+ fetchFn.mockResolvedValue(mockResponse({
765
+ success: true,
766
+ data: [{ id: 1, quote_id: 42, source_type: 'quote', source_id: 42, position: 1 }],
767
+ count: 1,
768
+ }))
769
+
770
+ await social.addRandomToQueue({ platform: 'x', count: 5, language: 'fr' })
771
+ const [url, opts] = fetchFn.mock.calls[0]
772
+ expect(url).toContain('/social/queue/bulk-random')
773
+ expect(opts.method).toBe('POST')
774
+ expect(JSON.parse(opts.body).count).toBe(5)
775
+ })
776
+
777
+ it('removeQueueItem calls DELETE /social/queue/:id', async () => {
778
+ fetchFn.mockResolvedValue(mockResponse({
779
+ success: true,
780
+ data: { deleted: true, id: 1, sourceType: 'quote', sourceId: 42 },
781
+ }))
782
+
783
+ const result = await social.removeQueueItem(1)
784
+ const [url, opts] = fetchFn.mock.calls[0]
785
+ expect(url).toContain('/social/queue/1')
786
+ expect(opts.method).toBe('DELETE')
787
+ expect(result.data!.deleted).toBe(true)
788
+ })
789
+
790
+ it('clearQueue calls POST /social/queue/clear with confirm', async () => {
791
+ fetchFn.mockResolvedValue(mockResponse({
792
+ success: true,
793
+ data: {
794
+ deleted: true,
795
+ platform: 'x',
796
+ deletedCount: 3,
797
+ sourceTypes: [{ sourceType: 'quote', count: 3 }],
798
+ },
799
+ }))
800
+
801
+ const result = await social.clearQueue({ platform: 'x', confirm: true, scope: 'finished' })
802
+ const [, opts] = fetchFn.mock.calls[0]
803
+ expect(opts.method).toBe('POST')
804
+ const body = JSON.parse(opts.body)
805
+ expect(body.confirm).toBe(true)
806
+ expect(body.scope).toBe('finished')
807
+ expect(result.data!.deletedCount).toBe(3)
808
+ })
809
+
810
+ it('reorderQueueItem calls POST /social/queue/reorder with before_id', async () => {
811
+ fetchFn.mockResolvedValue(mockResponse({
812
+ success: true,
813
+ data: { moved: true, id: 1, position: 2 },
814
+ }))
815
+
816
+ const result = await social.reorderQueueItem({ id: 1, before_id: 5 })
817
+ const [, opts] = fetchFn.mock.calls[0]
818
+ expect(opts.method).toBe('POST')
819
+ expect(JSON.parse(opts.body).before_id).toBe(5)
820
+ expect(result.data!.moved).toBe(true)
821
+ })
822
+
823
+ it('runNow calls POST /social/queue/run-now with platform', async () => {
824
+ fetchFn.mockResolvedValue(mockResponse({
825
+ success: true,
826
+ data: { success: true, published: 1 },
827
+ }))
828
+
829
+ const result = await social.runNow({ platform: 'bluesky' })
830
+ const [, opts] = fetchFn.mock.calls[0]
831
+ expect(opts.method).toBe('POST')
832
+ expect(JSON.parse(opts.body).platform).toBe('bluesky')
833
+ expect(result.data!.success).toBe(true)
834
+ })
835
+
836
+ it('requeueQueueItem calls POST /social/queue/:id/requeue', async () => {
837
+ fetchFn.mockResolvedValue(mockResponse({
838
+ success: true,
839
+ data: { requeued: true, id: 1 },
840
+ }))
841
+
842
+ const result = await social.requeueQueueItem(1)
843
+ const [url, opts] = fetchFn.mock.calls[0]
844
+ expect(url).toContain('/social/queue/1/requeue')
845
+ expect(opts.method).toBe('POST')
846
+ expect(result.data!.requeued).toBe(true)
847
+ })
848
+
849
+ it('listPosts calls GET /social/posts with filters', async () => {
850
+ fetchFn.mockResolvedValue(mockResponse({
851
+ success: true,
852
+ data: {
853
+ posts: [{
854
+ id: 1,
855
+ quote_id: 42,
856
+ source_type: 'quote',
857
+ source_id: 42,
858
+ queue_id: 1,
859
+ platform: 'x',
860
+ status: 'success',
861
+ post_text: 'Test',
862
+ post_url: 'https://x.com/status/1',
863
+ external_post_id: '1',
864
+ error_message: null,
865
+ posted_at: '2026-01-01T00:00:00.000Z',
866
+ created_at: '2026-01-01T00:00:00.000Z',
867
+ }],
868
+ },
869
+ pagination: { page: 1, limit: 20, total: 1, totalPages: 1, hasMore: false },
870
+ }))
871
+
872
+ const result = await social.listPosts({ platform: 'x', status: 'success' })
873
+ const [url] = fetchFn.mock.calls[0]
874
+ const parsed = new URL(url, 'http://localhost')
875
+ expect(parsed.pathname).toContain('/social/posts')
876
+ expect(parsed.searchParams.get('status')).toBe('success')
877
+ expect(result.data!.posts[0].post_url).toBe('https://x.com/status/1')
878
+ })
879
+ })
@@ -5,3 +5,4 @@ export { TagsResource } from './tags'
5
5
  export { CollectionsResource } from './collections'
6
6
  export { SearchResource } from './search'
7
7
  export { ThemesResource } from './themes'
8
+ export { SocialResource } from './social'
@@ -0,0 +1,190 @@
1
+ import { z } from 'zod/v4'
2
+ import type { VerbatimsClient } from '../client'
3
+ import { apiResponseSchema } from '../types'
4
+ import { paginate } from '../pagination'
5
+ import type {
6
+ SocialQueueItem,
7
+ ListSocialQueueParams,
8
+ ListSocialPostsParams,
9
+ AddToSocialQueueData,
10
+ AddRandomToSocialQueueData,
11
+ ClearSocialQueueData,
12
+ ReorderSocialQueueData,
13
+ RunSocialAutopostData,
14
+ } from '../types'
15
+
16
+ const socialQueueStatsSchema = z.object({
17
+ queued: z.number(),
18
+ processing: z.number(),
19
+ posted: z.number(),
20
+ failed: z.number(),
21
+ })
22
+
23
+ const socialResolvedContentSchema = z.object({
24
+ source_type: z.string(),
25
+ source_id: z.number(),
26
+ primary_text: z.string().nullable(),
27
+ secondary_text: z.string().nullable(),
28
+ canonical_path: z.string().nullable(),
29
+ title: z.string().nullable(),
30
+ subtitle: z.string().nullable(),
31
+ language: z.string().nullable(),
32
+ })
33
+
34
+ const socialQueueItemSchema = z.object({
35
+ id: z.number(),
36
+ quote_id: z.number(),
37
+ source_type: z.string(),
38
+ source_id: z.number(),
39
+ platform: z.enum(['x', 'bluesky', 'instagram', 'threads', 'facebook', 'pinterest']),
40
+ status: z.enum(['queued', 'processing', 'posted', 'failed']),
41
+ position: z.number(),
42
+ scheduled_for: z.string().nullable(),
43
+ created_at: z.string().nullable(),
44
+ updated_at: z.string().nullable(),
45
+ published_post_url: z.string().nullable(),
46
+ published_external_post_id: z.string().nullable(),
47
+ published_posted_at: z.string().nullable(),
48
+ error_message: z.string().nullable(),
49
+ quote_posts_count: z.number(),
50
+ quote_text: z.string().nullable(),
51
+ quote_language: z.string().nullable(),
52
+ author_name: z.string().nullable(),
53
+ reference_name: z.string().nullable(),
54
+ resolved_content: socialResolvedContentSchema.nullable(),
55
+ })
56
+
57
+ const socialPostSchema = z.object({
58
+ id: z.number(),
59
+ quote_id: z.number(),
60
+ source_type: z.string(),
61
+ source_id: z.number(),
62
+ queue_id: z.number().nullable(),
63
+ platform: z.enum(['x', 'bluesky', 'instagram', 'threads', 'facebook', 'pinterest']),
64
+ status: z.enum(['success', 'failed']),
65
+ post_text: z.string().nullable(),
66
+ post_url: z.string().nullable(),
67
+ external_post_id: z.string().nullable(),
68
+ error_message: z.string().nullable(),
69
+ posted_at: z.string().nullable(),
70
+ created_at: z.string().nullable(),
71
+ })
72
+
73
+ const socialPlatformSchema = z.object({
74
+ platform: z.enum(['x', 'bluesky', 'instagram', 'threads', 'facebook', 'pinterest']),
75
+ label: z.string(),
76
+ enabled: z.boolean(),
77
+ queue: socialQueueStatsSchema,
78
+ })
79
+
80
+ const queuedItemSchema = z.object({
81
+ id: z.number(),
82
+ quote_id: z.number(),
83
+ source_type: z.string(),
84
+ source_id: z.number(),
85
+ position: z.number(),
86
+ status: z.enum(['queued', 'processing', 'posted', 'failed']).optional(),
87
+ })
88
+
89
+ const socialQueueListResponseSchema = apiResponseSchema(z.object({
90
+ queue: z.array(socialQueueItemSchema),
91
+ stats: socialQueueStatsSchema,
92
+ }))
93
+
94
+ const socialPostsListResponseSchema = apiResponseSchema(z.object({
95
+ posts: z.array(socialPostSchema),
96
+ }))
97
+
98
+ const socialPlatformsResponseSchema = apiResponseSchema(z.array(socialPlatformSchema))
99
+
100
+ const enqueueResponseSchema = apiResponseSchema(z.array(queuedItemSchema)).extend({
101
+ count: z.number().optional(),
102
+ })
103
+
104
+ const deleteQueueItemResponseSchema = apiResponseSchema(z.object({
105
+ deleted: z.literal(true),
106
+ id: z.number(),
107
+ sourceType: z.string(),
108
+ sourceId: z.number(),
109
+ }))
110
+
111
+ const clearQueueResponseSchema = apiResponseSchema(z.object({
112
+ deleted: z.literal(true),
113
+ platform: z.string(),
114
+ deletedCount: z.number(),
115
+ sourceTypes: z.array(z.object({
116
+ sourceType: z.string(),
117
+ count: z.number(),
118
+ })),
119
+ }))
120
+
121
+ const reorderQueueResponseSchema = apiResponseSchema(z.object({
122
+ moved: z.boolean(),
123
+ id: z.number().optional(),
124
+ sourceType: z.string().optional(),
125
+ sourceId: z.number().optional(),
126
+ position: z.number().optional(),
127
+ }))
128
+
129
+ const requeueQueueItemResponseSchema = apiResponseSchema(z.object({
130
+ requeued: z.literal(true),
131
+ id: z.number(),
132
+ }))
133
+
134
+ export class SocialResource {
135
+ constructor(private client: VerbatimsClient) {}
136
+
137
+ async listPlatforms() {
138
+ return this.client.get('/social/platforms', {}, socialPlatformsResponseSchema)
139
+ }
140
+
141
+ async listQueue(params?: ListSocialQueueParams) {
142
+ return this.client.get('/social/queue', { params: params as Record<string, unknown> }, socialQueueListResponseSchema)
143
+ }
144
+
145
+ paginateQueue(params?: ListSocialQueueParams): AsyncGenerator<SocialQueueItem> {
146
+ return paginate<SocialQueueItem>((page) =>
147
+ this.listQueue({ ...params, page }).then(r => ({
148
+ data: r.data?.queue,
149
+ pagination: r.pagination,
150
+ }))
151
+ )
152
+ }
153
+
154
+ async getQueueItem(id: number) {
155
+ return this.client.get(`/social/queue/${id}`, {}, apiResponseSchema(socialQueueItemSchema))
156
+ }
157
+
158
+ async addToQueue(data: AddToSocialQueueData) {
159
+ return this.client.post('/social/queue', data, {}, enqueueResponseSchema)
160
+ }
161
+
162
+ async addRandomToQueue(data: AddRandomToSocialQueueData) {
163
+ return this.client.post('/social/queue/bulk-random', data, {}, enqueueResponseSchema)
164
+ }
165
+
166
+ async removeQueueItem(id: number) {
167
+ return this.client.delete(`/social/queue/${id}`, {}, deleteQueueItemResponseSchema)
168
+ }
169
+
170
+ async clearQueue(data: ClearSocialQueueData) {
171
+ return this.client.post('/social/queue/clear', data, {}, clearQueueResponseSchema)
172
+ }
173
+
174
+ async reorderQueueItem(data: ReorderSocialQueueData) {
175
+ return this.client.post('/social/queue/reorder', data, {}, reorderQueueResponseSchema)
176
+ }
177
+
178
+ async runNow(data?: RunSocialAutopostData) {
179
+ return this.client.post('/social/queue/run-now', data ?? {}, {}, apiResponseSchema(z.record(z.string(), z.unknown())))
180
+ }
181
+
182
+ async requeueQueueItem(id: number) {
183
+ return this.client.post(`/social/queue/${id}/requeue`, {}, {}, requeueQueueItemResponseSchema)
184
+ }
185
+
186
+ async listPosts(params?: ListSocialPostsParams) {
187
+ return this.client.get('/social/posts', { params: params as Record<string, unknown> }, socialPostsListResponseSchema)
188
+ }
189
+ }
190
+