@nosana/api 2.5.1 → 2.5.2

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.
@@ -0,0 +1,2801 @@
1
+ /**
2
+ * This file was auto-generated by openapi-typescript.
3
+ * Do not make direct changes to the file.
4
+ */
5
+ export interface paths {
6
+ "/": {
7
+ parameters: {
8
+ query?: never;
9
+ header?: never;
10
+ path?: never;
11
+ cookie?: never;
12
+ };
13
+ get: operations["getIndex"];
14
+ put?: never;
15
+ post?: never;
16
+ delete?: never;
17
+ options?: never;
18
+ head?: never;
19
+ patch?: never;
20
+ trace?: never;
21
+ };
22
+ "/auth/validate-session": {
23
+ parameters: {
24
+ query?: never;
25
+ header?: never;
26
+ path?: never;
27
+ cookie?: never;
28
+ };
29
+ get?: never;
30
+ put?: never;
31
+ /** Validate session */
32
+ post: operations["postAuthValidate-session"];
33
+ delete?: never;
34
+ options?: never;
35
+ head?: never;
36
+ patch?: never;
37
+ trace?: never;
38
+ };
39
+ "/auth/validate-api-key": {
40
+ parameters: {
41
+ query?: never;
42
+ header?: never;
43
+ path?: never;
44
+ cookie?: never;
45
+ };
46
+ get?: never;
47
+ put?: never;
48
+ /** Validate API key */
49
+ post: operations["postAuthValidate-api-key"];
50
+ delete?: never;
51
+ options?: never;
52
+ head?: never;
53
+ patch?: never;
54
+ trace?: never;
55
+ };
56
+ "/auth/sign-message/external": {
57
+ parameters: {
58
+ query?: never;
59
+ header?: never;
60
+ path?: never;
61
+ cookie?: never;
62
+ };
63
+ get?: never;
64
+ put?: never;
65
+ /**
66
+ * Sign message for external service authentication
67
+ * @description Sign message for external service authentication
68
+ */
69
+ post: operations["postAuthSign-messageExternal"];
70
+ delete?: never;
71
+ options?: never;
72
+ head?: never;
73
+ patch?: never;
74
+ trace?: never;
75
+ };
76
+ "/api-keys/": {
77
+ parameters: {
78
+ query?: never;
79
+ header?: never;
80
+ path?: never;
81
+ cookie?: never;
82
+ };
83
+ /**
84
+ * Get API Keys
85
+ * @description Get all API keys for the authenticated user
86
+ */
87
+ get: operations["getApi-keys"];
88
+ put?: never;
89
+ /**
90
+ * Create API Key
91
+ * @description Create a new API key for the authenticated user
92
+ */
93
+ post: operations["postApi-keys"];
94
+ delete?: never;
95
+ options?: never;
96
+ head?: never;
97
+ patch?: never;
98
+ trace?: never;
99
+ };
100
+ "/api-keys/{id}": {
101
+ parameters: {
102
+ query?: never;
103
+ header?: never;
104
+ path?: never;
105
+ cookie?: never;
106
+ };
107
+ /**
108
+ * Get API Key
109
+ * @description Get a specific API key by ID
110
+ */
111
+ get: operations["getApi-keysById"];
112
+ put?: never;
113
+ post?: never;
114
+ delete?: never;
115
+ options?: never;
116
+ head?: never;
117
+ patch?: never;
118
+ trace?: never;
119
+ };
120
+ "/api-keys/{id}/update": {
121
+ parameters: {
122
+ query?: never;
123
+ header?: never;
124
+ path?: never;
125
+ cookie?: never;
126
+ };
127
+ get?: never;
128
+ put?: never;
129
+ /**
130
+ * Update API Key
131
+ * @description Update an API key (name or status)
132
+ */
133
+ post: operations["postApi-keysByIdUpdate"];
134
+ delete?: never;
135
+ options?: never;
136
+ head?: never;
137
+ patch?: never;
138
+ trace?: never;
139
+ };
140
+ "/api-keys/{id}/delete": {
141
+ parameters: {
142
+ query?: never;
143
+ header?: never;
144
+ path?: never;
145
+ cookie?: never;
146
+ };
147
+ get?: never;
148
+ put?: never;
149
+ /**
150
+ * Delete API Key
151
+ * @description Delete an API key
152
+ */
153
+ post: operations["postApi-keysByIdDelete"];
154
+ delete?: never;
155
+ options?: never;
156
+ head?: never;
157
+ patch?: never;
158
+ trace?: never;
159
+ };
160
+ "/credits/claim": {
161
+ parameters: {
162
+ query?: never;
163
+ header?: never;
164
+ path?: never;
165
+ cookie?: never;
166
+ };
167
+ get?: never;
168
+ put?: never;
169
+ /** Claim a credit code */
170
+ post: operations["postCreditsClaim"];
171
+ delete?: never;
172
+ options?: never;
173
+ head?: never;
174
+ patch?: never;
175
+ trace?: never;
176
+ };
177
+ "/credits/invitations/{token}/claim": {
178
+ parameters: {
179
+ query?: never;
180
+ header?: never;
181
+ path?: never;
182
+ cookie?: never;
183
+ };
184
+ get?: never;
185
+ put?: never;
186
+ /** Claim a credit invitation */
187
+ post: operations["postCreditsInvitationsByTokenClaim"];
188
+ delete?: never;
189
+ options?: never;
190
+ head?: never;
191
+ patch?: never;
192
+ trace?: never;
193
+ };
194
+ "/credits/request": {
195
+ parameters: {
196
+ query?: never;
197
+ header?: never;
198
+ path?: never;
199
+ cookie?: never;
200
+ };
201
+ get?: never;
202
+ put?: never;
203
+ /** Request free credits */
204
+ post: operations["postCreditsRequest"];
205
+ delete?: never;
206
+ options?: never;
207
+ head?: never;
208
+ patch?: never;
209
+ trace?: never;
210
+ };
211
+ "/credits/request/eligibility": {
212
+ parameters: {
213
+ query?: never;
214
+ header?: never;
215
+ path?: never;
216
+ cookie?: never;
217
+ };
218
+ /** Check credit request eligibility */
219
+ get: operations["getCreditsRequestEligibility"];
220
+ put?: never;
221
+ post?: never;
222
+ delete?: never;
223
+ options?: never;
224
+ head?: never;
225
+ patch?: never;
226
+ trace?: never;
227
+ };
228
+ "/credits/balance": {
229
+ parameters: {
230
+ query?: never;
231
+ header?: never;
232
+ path?: never;
233
+ cookie?: never;
234
+ };
235
+ /** Get credit balance */
236
+ get: operations["getCreditsBalance"];
237
+ put?: never;
238
+ post?: never;
239
+ delete?: never;
240
+ options?: never;
241
+ head?: never;
242
+ patch?: never;
243
+ trace?: never;
244
+ };
245
+ "/credits/spending-history": {
246
+ parameters: {
247
+ query?: never;
248
+ header?: never;
249
+ path?: never;
250
+ cookie?: never;
251
+ };
252
+ /**
253
+ * Get credit spending history
254
+ * @description Returns spending history for credit users using settled credit charges.
255
+ */
256
+ get: operations["getCreditsSpending-history"];
257
+ put?: never;
258
+ post?: never;
259
+ delete?: never;
260
+ options?: never;
261
+ head?: never;
262
+ patch?: never;
263
+ trace?: never;
264
+ };
265
+ "/credits/transactions": {
266
+ parameters: {
267
+ query?: never;
268
+ header?: never;
269
+ path?: never;
270
+ cookie?: never;
271
+ };
272
+ /**
273
+ * List credit transactions
274
+ * @description Returns credit transaction history for the authenticated user.
275
+ */
276
+ get: operations["getCreditsTransactions"];
277
+ put?: never;
278
+ post?: never;
279
+ delete?: never;
280
+ options?: never;
281
+ head?: never;
282
+ patch?: never;
283
+ trace?: never;
284
+ };
285
+ "/credits/invitations/{token}": {
286
+ parameters: {
287
+ query?: never;
288
+ header?: never;
289
+ path?: never;
290
+ cookie?: never;
291
+ };
292
+ /** Get invitation by token */
293
+ get: operations["getCreditsInvitationsByToken"];
294
+ put?: never;
295
+ post?: never;
296
+ delete?: never;
297
+ options?: never;
298
+ head?: never;
299
+ patch?: never;
300
+ trace?: never;
301
+ };
302
+ "/templates/": {
303
+ parameters: {
304
+ query?: never;
305
+ header?: never;
306
+ path?: never;
307
+ cookie?: never;
308
+ };
309
+ /** List all templates */
310
+ get: operations["getTemplates"];
311
+ put?: never;
312
+ post?: never;
313
+ delete?: never;
314
+ options?: never;
315
+ head?: never;
316
+ patch?: never;
317
+ trace?: never;
318
+ };
319
+ "/templates/grouped": {
320
+ parameters: {
321
+ query?: never;
322
+ header?: never;
323
+ path?: never;
324
+ cookie?: never;
325
+ };
326
+ /** Get templates grouped by category */
327
+ get: operations["getTemplatesGrouped"];
328
+ put?: never;
329
+ post?: never;
330
+ delete?: never;
331
+ options?: never;
332
+ head?: never;
333
+ patch?: never;
334
+ trace?: never;
335
+ };
336
+ "/templates/{id}": {
337
+ parameters: {
338
+ query?: never;
339
+ header?: never;
340
+ path?: never;
341
+ cookie?: never;
342
+ };
343
+ /** Get template by ID */
344
+ get: operations["getTemplatesById"];
345
+ put?: never;
346
+ post?: never;
347
+ delete?: never;
348
+ options?: never;
349
+ head?: never;
350
+ patch?: never;
351
+ trace?: never;
352
+ };
353
+ "/templates/{id}/{variantId}": {
354
+ parameters: {
355
+ query?: never;
356
+ header?: never;
357
+ path?: never;
358
+ cookie?: never;
359
+ };
360
+ /** Get template variant */
361
+ get: operations["getTemplatesByIdByVariantId"];
362
+ put?: never;
363
+ post?: never;
364
+ delete?: never;
365
+ options?: never;
366
+ head?: never;
367
+ patch?: never;
368
+ trace?: never;
369
+ };
370
+ "/jobs/list": {
371
+ parameters: {
372
+ query?: never;
373
+ header?: never;
374
+ path?: never;
375
+ cookie?: never;
376
+ };
377
+ get?: never;
378
+ put?: never;
379
+ /**
380
+ * Create a job using credits
381
+ * @description Create a job using credits. Supports both JWT tokens (Bearer <jwt>) and API keys (Bearer nos_...). Pass an `Idempotency-Key` header (e.g. the DM task's stable `taskId:unit:epoch`) to make the call safely retryable: the job is posted at most once per key. Replays return the original result; a key whose transaction is provably dead returns 409 `IDEMPOTENCY_KEY_EXPIRED` (bump the epoch and retry).
382
+ */
383
+ post: operations["postJobsList"];
384
+ delete?: never;
385
+ options?: never;
386
+ head?: never;
387
+ patch?: never;
388
+ trace?: never;
389
+ };
390
+ "/jobs/list/batch": {
391
+ parameters: {
392
+ query?: never;
393
+ header?: never;
394
+ path?: never;
395
+ cookie?: never;
396
+ };
397
+ get?: never;
398
+ put?: never;
399
+ /**
400
+ * Bulk-create jobs using credits
401
+ * @description Bulk-create jobs in the fewest packed transactions. Requires an `Idempotency-Key` header (one key per batch): the batch is posted at most once per key. The response reports each job's outcome by `index` — `confirmed` (with its `job`/`run` address) or `expired`. Re-post only the expired items under a fresh key. Still-confirming returns 409 `IDEMPOTENCY_KEY_IN_PROGRESS` (retry the same key).
402
+ */
403
+ post: operations["postJobsListBatch"];
404
+ delete?: never;
405
+ options?: never;
406
+ head?: never;
407
+ patch?: never;
408
+ trace?: never;
409
+ };
410
+ "/jobs/{address}/extend": {
411
+ parameters: {
412
+ query?: never;
413
+ header?: never;
414
+ path?: never;
415
+ cookie?: never;
416
+ };
417
+ get?: never;
418
+ put?: never;
419
+ /**
420
+ * Extend a job using credits
421
+ * @description Extend a job using credits. Supports both JWT tokens (Bearer <jwt>) and API keys (Bearer nos_...). Pass an `Idempotency-Key` header to make the call safely retryable (the extension is applied at most once per key). Extending a terminal job returns a code-less 409 (NOT_EXTENDABLE) — non-retryable.
422
+ */
423
+ post: operations["postJobsByAddressExtend"];
424
+ delete?: never;
425
+ options?: never;
426
+ head?: never;
427
+ patch?: never;
428
+ trace?: never;
429
+ };
430
+ "/jobs/{address}/stop": {
431
+ parameters: {
432
+ query?: never;
433
+ header?: never;
434
+ path?: never;
435
+ cookie?: never;
436
+ };
437
+ get?: never;
438
+ put?: never;
439
+ /**
440
+ * Stop a job paid with credits
441
+ * @description Stop a job paid with credits. Supports both JWT tokens (Bearer <jwt>) and API keys (Bearer nos_...). Pass an `Idempotency-Key` header to make the call safely retryable: the stop is sent at most once per key and settlement runs exactly once. An already-terminal job returns 200 with `outcome: already_terminal` and a null `tx`.
442
+ */
443
+ post: operations["postJobsByAddressStop"];
444
+ delete?: never;
445
+ options?: never;
446
+ head?: never;
447
+ patch?: never;
448
+ trace?: never;
449
+ };
450
+ "/jobs/extend/batch": {
451
+ parameters: {
452
+ query?: never;
453
+ header?: never;
454
+ path?: never;
455
+ cookie?: never;
456
+ };
457
+ get?: never;
458
+ put?: never;
459
+ /**
460
+ * Bulk-extend jobs using credits
461
+ * @description Bulk-extend jobs in the fewest packed transactions. Requires an `Idempotency-Key` header (one key per batch). Per-item results report each extension by `index` — `confirmed` or `expired` (re-post the expired ones under a fresh key). A terminal job rejects the whole batch (409).
462
+ */
463
+ post: operations["postJobsExtendBatch"];
464
+ delete?: never;
465
+ options?: never;
466
+ head?: never;
467
+ patch?: never;
468
+ trace?: never;
469
+ };
470
+ "/jobs/stop/batch": {
471
+ parameters: {
472
+ query?: never;
473
+ header?: never;
474
+ path?: never;
475
+ cookie?: never;
476
+ };
477
+ get?: never;
478
+ put?: never;
479
+ /**
480
+ * Bulk-stop jobs using credits
481
+ * @description Bulk-stop jobs (delist queued / end running) in the fewest packed transactions. Requires an `Idempotency-Key` header (one key per batch). Already-terminal jobs are reported as `confirmed` with no transaction. Per-item results report each stop by `index`; re-post expired ones under a fresh key.
482
+ */
483
+ post: operations["postJobsStopBatch"];
484
+ delete?: never;
485
+ options?: never;
486
+ head?: never;
487
+ patch?: never;
488
+ trace?: never;
489
+ };
490
+ "/newsletter/subscribe": {
491
+ parameters: {
492
+ query?: never;
493
+ header?: never;
494
+ path?: never;
495
+ cookie?: never;
496
+ };
497
+ get?: never;
498
+ put?: never;
499
+ /**
500
+ * Subscribe To Newsletter
501
+ * @description Subscribe an email address to the newsletter list
502
+ */
503
+ post: operations["postNewsletterSubscribe"];
504
+ delete?: never;
505
+ options?: never;
506
+ head?: never;
507
+ patch?: never;
508
+ trace?: never;
509
+ };
510
+ "/payments/webhooks/stripe": {
511
+ parameters: {
512
+ query?: never;
513
+ header?: never;
514
+ path?: never;
515
+ cookie?: never;
516
+ };
517
+ get?: never;
518
+ put?: never;
519
+ /**
520
+ * Stripe webhook
521
+ * @description Receives Stripe webhook events (signature verified)
522
+ */
523
+ post: operations["postPaymentsWebhooksStripe"];
524
+ delete?: never;
525
+ options?: never;
526
+ head?: never;
527
+ patch?: never;
528
+ trace?: never;
529
+ };
530
+ "/payments/setup-intent": {
531
+ parameters: {
532
+ query?: never;
533
+ header?: never;
534
+ path?: never;
535
+ cookie?: never;
536
+ };
537
+ get?: never;
538
+ put?: never;
539
+ /**
540
+ * Add payment method
541
+ * @description Confirm card setup with Stripe and validate the payment method in one request
542
+ */
543
+ post: operations["postPaymentsSetup-intent"];
544
+ delete?: never;
545
+ options?: never;
546
+ head?: never;
547
+ patch?: never;
548
+ trace?: never;
549
+ };
550
+ "/payments/methods": {
551
+ parameters: {
552
+ query?: never;
553
+ header?: never;
554
+ path?: never;
555
+ cookie?: never;
556
+ };
557
+ /**
558
+ * List payment methods
559
+ * @description List saved card payment methods for the authenticated user
560
+ */
561
+ get: operations["getPaymentsMethods"];
562
+ put?: never;
563
+ post?: never;
564
+ delete?: never;
565
+ options?: never;
566
+ head?: never;
567
+ patch?: never;
568
+ trace?: never;
569
+ };
570
+ "/payments/methods/{id}": {
571
+ parameters: {
572
+ query?: never;
573
+ header?: never;
574
+ path?: never;
575
+ cookie?: never;
576
+ };
577
+ get?: never;
578
+ put?: never;
579
+ post?: never;
580
+ /**
581
+ * Delete payment method
582
+ * @description Detach a payment method from the user
583
+ */
584
+ delete: operations["deletePaymentsMethodsById"];
585
+ options?: never;
586
+ head?: never;
587
+ patch?: never;
588
+ trace?: never;
589
+ };
590
+ "/payments/methods/{id}/default": {
591
+ parameters: {
592
+ query?: never;
593
+ header?: never;
594
+ path?: never;
595
+ cookie?: never;
596
+ };
597
+ get?: never;
598
+ /**
599
+ * Set default payment method
600
+ * @description Set the default card used for credit purchases
601
+ */
602
+ put: operations["putPaymentsMethodsByIdDefault"];
603
+ post?: never;
604
+ delete?: never;
605
+ options?: never;
606
+ head?: never;
607
+ patch?: never;
608
+ trace?: never;
609
+ };
610
+ "/payments/payment-intent": {
611
+ parameters: {
612
+ query?: never;
613
+ header?: never;
614
+ path?: never;
615
+ cookie?: never;
616
+ };
617
+ get?: never;
618
+ put?: never;
619
+ /**
620
+ * Create PaymentIntent
621
+ * @description Create a Stripe PaymentIntent to purchase credits
622
+ */
623
+ post: operations["postPaymentsPayment-intent"];
624
+ delete?: never;
625
+ options?: never;
626
+ head?: never;
627
+ patch?: never;
628
+ trace?: never;
629
+ };
630
+ "/payments/purchases": {
631
+ parameters: {
632
+ query?: never;
633
+ header?: never;
634
+ path?: never;
635
+ cookie?: never;
636
+ };
637
+ /**
638
+ * List credit purchases
639
+ * @description List completed credit purchases for the authenticated user
640
+ */
641
+ get: operations["getPaymentsPurchases"];
642
+ put?: never;
643
+ post?: never;
644
+ delete?: never;
645
+ options?: never;
646
+ head?: never;
647
+ patch?: never;
648
+ trace?: never;
649
+ };
650
+ "/metrics": {
651
+ parameters: {
652
+ query?: never;
653
+ header?: never;
654
+ path?: never;
655
+ cookie?: never;
656
+ };
657
+ get: operations["getMetrics"];
658
+ put?: never;
659
+ post?: never;
660
+ delete?: never;
661
+ options?: never;
662
+ head?: never;
663
+ patch?: never;
664
+ trace?: never;
665
+ };
666
+ "/health": {
667
+ parameters: {
668
+ query?: never;
669
+ header?: never;
670
+ path?: never;
671
+ cookie?: never;
672
+ };
673
+ get: operations["getHealth"];
674
+ put?: never;
675
+ post?: never;
676
+ delete?: never;
677
+ options?: never;
678
+ head?: never;
679
+ patch?: never;
680
+ trace?: never;
681
+ };
682
+ }
683
+ export type webhooks = Record<string, never>;
684
+ export interface components {
685
+ schemas: {
686
+ /**
687
+ * @description Machine-readable idempotency control code. Branch on this, not the HTTP status alone. IN_PROGRESS → retry the SAME key; EXPIRED → mint a fresh key and re-post; PAYLOAD_MISMATCH → key reused with a different payload, do not retry.
688
+ * @enum {string}
689
+ */
690
+ IdempotencyCode: "IDEMPOTENCY_KEY_PAYLOAD_MISMATCH" | "IDEMPOTENCY_KEY_EXPIRED" | "IDEMPOTENCY_KEY_IN_PROGRESS";
691
+ /** @description Idempotency control response. Branch on `code`, never on the HTTP status. */
692
+ IdempotencyError: {
693
+ code?: components["schemas"]["IdempotencyCode"];
694
+ message: string;
695
+ /** @description Seconds to wait before retrying the SAME key. Present for IDEMPOTENCY_KEY_IN_PROGRESS; mirrors the Retry-After header. */
696
+ retryAfter?: number;
697
+ };
698
+ /** @description Ordinary business error. Has no `code` field (unlike IdempotencyError). */
699
+ JobError: {
700
+ message: string;
701
+ };
702
+ CreateJobWithCreditsResponse: {
703
+ tx: string;
704
+ job: string;
705
+ run: string;
706
+ credits: {
707
+ costUSD: number;
708
+ creditsUsed: number;
709
+ reservationId: string;
710
+ project: string;
711
+ };
712
+ };
713
+ ExtendJobWithCreditsResponse: {
714
+ tx: string;
715
+ job: string;
716
+ credits: {
717
+ costUSD: number;
718
+ creditsUsed: number;
719
+ reservationId: string;
720
+ };
721
+ };
722
+ StopJobWithCreditsResponse: {
723
+ tx: (string | null) | null;
724
+ job: string;
725
+ delisted: boolean;
726
+ outcome?: "delisted" | "ended" | "already_terminal";
727
+ };
728
+ JobsBatchResponse: {
729
+ items: {
730
+ index: number;
731
+ status: "confirmed" | "expired";
732
+ job?: string;
733
+ run?: string;
734
+ }[];
735
+ };
736
+ };
737
+ responses: never;
738
+ parameters: never;
739
+ requestBodies: never;
740
+ headers: never;
741
+ pathItems: never;
742
+ }
743
+ export type $defs = Record<string, never>;
744
+ export interface operations {
745
+ getIndex: {
746
+ parameters: {
747
+ query?: never;
748
+ header?: never;
749
+ path?: never;
750
+ cookie?: never;
751
+ };
752
+ requestBody?: never;
753
+ responses: {
754
+ 200: {
755
+ headers: {
756
+ [name: string]: unknown;
757
+ };
758
+ content?: never;
759
+ };
760
+ };
761
+ };
762
+ "postAuthValidate-session": {
763
+ parameters: {
764
+ query?: never;
765
+ header?: never;
766
+ path?: never;
767
+ cookie?: never;
768
+ };
769
+ requestBody: {
770
+ content: {
771
+ "application/json": {
772
+ cookieHeader?: string;
773
+ };
774
+ "multipart/form-data": {
775
+ cookieHeader?: string;
776
+ };
777
+ "text/plain": {
778
+ cookieHeader?: string;
779
+ };
780
+ };
781
+ };
782
+ responses: {
783
+ 200: {
784
+ headers: {
785
+ [name: string]: unknown;
786
+ };
787
+ content: {
788
+ "application/json": {
789
+ valid: boolean;
790
+ user?: {
791
+ id: string;
792
+ supertokensUserId: (string | null) | null;
793
+ legacyUserId: (string | null) | null;
794
+ email: string;
795
+ name: (string | null) | null;
796
+ provider: (string | null) | null;
797
+ providerUsername: (string | null) | null;
798
+ generatedAddress: string;
799
+ authenticationHeader: string;
800
+ systemApiKey: string;
801
+ created_at: ((Record<string, never> | string | number) | null) | null;
802
+ };
803
+ session?: {
804
+ handle?: string;
805
+ expiresAt?: string;
806
+ };
807
+ };
808
+ "multipart/form-data": {
809
+ valid: boolean;
810
+ user?: {
811
+ id: string;
812
+ supertokensUserId: (string | null) | null;
813
+ legacyUserId: (string | null) | null;
814
+ email: string;
815
+ name: (string | null) | null;
816
+ provider: (string | null) | null;
817
+ providerUsername: (string | null) | null;
818
+ generatedAddress: string;
819
+ authenticationHeader: string;
820
+ systemApiKey: string;
821
+ created_at: ((Record<string, never> | string | number) | null) | null;
822
+ };
823
+ session?: {
824
+ handle?: string;
825
+ expiresAt?: string;
826
+ };
827
+ };
828
+ "text/plain": {
829
+ valid: boolean;
830
+ user?: {
831
+ id: string;
832
+ supertokensUserId: (string | null) | null;
833
+ legacyUserId: (string | null) | null;
834
+ email: string;
835
+ name: (string | null) | null;
836
+ provider: (string | null) | null;
837
+ providerUsername: (string | null) | null;
838
+ generatedAddress: string;
839
+ authenticationHeader: string;
840
+ systemApiKey: string;
841
+ created_at: ((Record<string, never> | string | number) | null) | null;
842
+ };
843
+ session?: {
844
+ handle?: string;
845
+ expiresAt?: string;
846
+ };
847
+ };
848
+ };
849
+ };
850
+ };
851
+ };
852
+ "postAuthValidate-api-key": {
853
+ parameters: {
854
+ query?: never;
855
+ header?: never;
856
+ path?: never;
857
+ cookie?: never;
858
+ };
859
+ requestBody: {
860
+ content: {
861
+ "application/json": {
862
+ apiKey: string;
863
+ };
864
+ "multipart/form-data": {
865
+ apiKey: string;
866
+ };
867
+ "text/plain": {
868
+ apiKey: string;
869
+ };
870
+ };
871
+ };
872
+ responses: {
873
+ 200: {
874
+ headers: {
875
+ [name: string]: unknown;
876
+ };
877
+ content: {
878
+ "application/json": {
879
+ valid: boolean;
880
+ user?: {
881
+ id: string;
882
+ legacyUserId: (string | null) | null;
883
+ email: string;
884
+ name: (string | null) | null;
885
+ provider: (string | null) | null;
886
+ providerUsername: (string | null) | null;
887
+ generatedAddress: string;
888
+ authenticationHeader: string;
889
+ systemApiKey: string;
890
+ created_at: ((Record<string, never> | string | number) | null) | null;
891
+ };
892
+ apiKeyId?: string;
893
+ };
894
+ "multipart/form-data": {
895
+ valid: boolean;
896
+ user?: {
897
+ id: string;
898
+ legacyUserId: (string | null) | null;
899
+ email: string;
900
+ name: (string | null) | null;
901
+ provider: (string | null) | null;
902
+ providerUsername: (string | null) | null;
903
+ generatedAddress: string;
904
+ authenticationHeader: string;
905
+ systemApiKey: string;
906
+ created_at: ((Record<string, never> | string | number) | null) | null;
907
+ };
908
+ apiKeyId?: string;
909
+ };
910
+ "text/plain": {
911
+ valid: boolean;
912
+ user?: {
913
+ id: string;
914
+ legacyUserId: (string | null) | null;
915
+ email: string;
916
+ name: (string | null) | null;
917
+ provider: (string | null) | null;
918
+ providerUsername: (string | null) | null;
919
+ generatedAddress: string;
920
+ authenticationHeader: string;
921
+ systemApiKey: string;
922
+ created_at: ((Record<string, never> | string | number) | null) | null;
923
+ };
924
+ apiKeyId?: string;
925
+ };
926
+ };
927
+ };
928
+ };
929
+ };
930
+ "postAuthSign-messageExternal": {
931
+ parameters: {
932
+ query?: never;
933
+ header?: never;
934
+ path?: never;
935
+ cookie?: never;
936
+ };
937
+ requestBody: {
938
+ content: {
939
+ "application/json": {
940
+ /** @description The message to be signed with the user's private key */
941
+ message: string;
942
+ includeTime?: boolean;
943
+ };
944
+ "multipart/form-data": {
945
+ /** @description The message to be signed with the user's private key */
946
+ message: string;
947
+ includeTime?: boolean;
948
+ };
949
+ "text/plain": {
950
+ /** @description The message to be signed with the user's private key */
951
+ message: string;
952
+ includeTime?: boolean;
953
+ };
954
+ };
955
+ };
956
+ responses: {
957
+ 200: {
958
+ headers: {
959
+ [name: string]: unknown;
960
+ };
961
+ content: {
962
+ "application/json": {
963
+ /** @description The signed message in base58 format */
964
+ signature: string;
965
+ /** @description The original message that was signed */
966
+ message: string;
967
+ /** @description The address of the user whose private key should be used for signing */
968
+ userAddress: string;
969
+ /** @description Unix ms when the signature was created; present when includeTime was true */
970
+ timestamp?: number;
971
+ };
972
+ "multipart/form-data": {
973
+ /** @description The signed message in base58 format */
974
+ signature: string;
975
+ /** @description The original message that was signed */
976
+ message: string;
977
+ /** @description The address of the user whose private key should be used for signing */
978
+ userAddress: string;
979
+ /** @description Unix ms when the signature was created; present when includeTime was true */
980
+ timestamp?: number;
981
+ };
982
+ "text/plain": {
983
+ /** @description The signed message in base58 format */
984
+ signature: string;
985
+ /** @description The original message that was signed */
986
+ message: string;
987
+ /** @description The address of the user whose private key should be used for signing */
988
+ userAddress: string;
989
+ /** @description Unix ms when the signature was created; present when includeTime was true */
990
+ timestamp?: number;
991
+ };
992
+ };
993
+ };
994
+ 401: {
995
+ headers: {
996
+ [name: string]: unknown;
997
+ };
998
+ content: {
999
+ "application/json": {
1000
+ name: string;
1001
+ message: string;
1002
+ };
1003
+ "multipart/form-data": {
1004
+ name: string;
1005
+ message: string;
1006
+ };
1007
+ "text/plain": {
1008
+ name: string;
1009
+ message: string;
1010
+ };
1011
+ };
1012
+ };
1013
+ 500: {
1014
+ headers: {
1015
+ [name: string]: unknown;
1016
+ };
1017
+ content: {
1018
+ "application/json": {
1019
+ name: string;
1020
+ message: string;
1021
+ };
1022
+ "multipart/form-data": {
1023
+ name: string;
1024
+ message: string;
1025
+ };
1026
+ "text/plain": {
1027
+ name: string;
1028
+ message: string;
1029
+ };
1030
+ };
1031
+ };
1032
+ };
1033
+ };
1034
+ "getApi-keys": {
1035
+ parameters: {
1036
+ query?: never;
1037
+ header?: never;
1038
+ path?: never;
1039
+ cookie?: never;
1040
+ };
1041
+ requestBody?: never;
1042
+ responses: {
1043
+ 200: {
1044
+ headers: {
1045
+ [name: string]: unknown;
1046
+ };
1047
+ content: {
1048
+ "application/json": {
1049
+ keys: {
1050
+ id: string;
1051
+ name: string;
1052
+ /** @description Full API key */
1053
+ key: string;
1054
+ status: string;
1055
+ lastUsedAt: (string | null) | null;
1056
+ expiresAt: (string | null) | null;
1057
+ createdAt: string;
1058
+ updatedAt: string;
1059
+ }[];
1060
+ total: number;
1061
+ };
1062
+ "multipart/form-data": {
1063
+ keys: {
1064
+ id: string;
1065
+ name: string;
1066
+ /** @description Full API key */
1067
+ key: string;
1068
+ status: string;
1069
+ lastUsedAt: (string | null) | null;
1070
+ expiresAt: (string | null) | null;
1071
+ createdAt: string;
1072
+ updatedAt: string;
1073
+ }[];
1074
+ total: number;
1075
+ };
1076
+ "text/plain": {
1077
+ keys: {
1078
+ id: string;
1079
+ name: string;
1080
+ /** @description Full API key */
1081
+ key: string;
1082
+ status: string;
1083
+ lastUsedAt: (string | null) | null;
1084
+ expiresAt: (string | null) | null;
1085
+ createdAt: string;
1086
+ updatedAt: string;
1087
+ }[];
1088
+ total: number;
1089
+ };
1090
+ };
1091
+ };
1092
+ };
1093
+ };
1094
+ "postApi-keys": {
1095
+ parameters: {
1096
+ query?: never;
1097
+ header?: never;
1098
+ path?: never;
1099
+ cookie?: never;
1100
+ };
1101
+ requestBody: {
1102
+ content: {
1103
+ "application/json": {
1104
+ /** @description A descriptive name for the API key. */
1105
+ name: string;
1106
+ /** @description Key expiration time in seconds. If not provided, key never expires. */
1107
+ expiresIn?: number;
1108
+ };
1109
+ "multipart/form-data": {
1110
+ /** @description A descriptive name for the API key. */
1111
+ name: string;
1112
+ /** @description Key expiration time in seconds. If not provided, key never expires. */
1113
+ expiresIn?: number;
1114
+ };
1115
+ "text/plain": {
1116
+ /** @description A descriptive name for the API key. */
1117
+ name: string;
1118
+ /** @description Key expiration time in seconds. If not provided, key never expires. */
1119
+ expiresIn?: number;
1120
+ };
1121
+ };
1122
+ };
1123
+ responses: {
1124
+ 200: {
1125
+ headers: {
1126
+ [name: string]: unknown;
1127
+ };
1128
+ content: {
1129
+ "application/json": {
1130
+ /** @description The full API key. */
1131
+ key: string;
1132
+ id: string;
1133
+ name: string;
1134
+ status: string;
1135
+ expiresAt: (string | null) | null;
1136
+ createdAt: string;
1137
+ };
1138
+ "multipart/form-data": {
1139
+ /** @description The full API key. */
1140
+ key: string;
1141
+ id: string;
1142
+ name: string;
1143
+ status: string;
1144
+ expiresAt: (string | null) | null;
1145
+ createdAt: string;
1146
+ };
1147
+ "text/plain": {
1148
+ /** @description The full API key. */
1149
+ key: string;
1150
+ id: string;
1151
+ name: string;
1152
+ status: string;
1153
+ expiresAt: (string | null) | null;
1154
+ createdAt: string;
1155
+ };
1156
+ };
1157
+ };
1158
+ };
1159
+ };
1160
+ "getApi-keysById": {
1161
+ parameters: {
1162
+ query?: never;
1163
+ header?: never;
1164
+ path: {
1165
+ id: string;
1166
+ };
1167
+ cookie?: never;
1168
+ };
1169
+ requestBody?: never;
1170
+ responses: {
1171
+ 200: {
1172
+ headers: {
1173
+ [name: string]: unknown;
1174
+ };
1175
+ content: {
1176
+ "application/json": {
1177
+ id: string;
1178
+ name: string;
1179
+ /** @description Full API key */
1180
+ key: string;
1181
+ status: string;
1182
+ lastUsedAt: (string | null) | null;
1183
+ expiresAt: (string | null) | null;
1184
+ createdAt: string;
1185
+ updatedAt: string;
1186
+ };
1187
+ "multipart/form-data": {
1188
+ id: string;
1189
+ name: string;
1190
+ /** @description Full API key */
1191
+ key: string;
1192
+ status: string;
1193
+ lastUsedAt: (string | null) | null;
1194
+ expiresAt: (string | null) | null;
1195
+ createdAt: string;
1196
+ updatedAt: string;
1197
+ };
1198
+ "text/plain": {
1199
+ id: string;
1200
+ name: string;
1201
+ /** @description Full API key */
1202
+ key: string;
1203
+ status: string;
1204
+ lastUsedAt: (string | null) | null;
1205
+ expiresAt: (string | null) | null;
1206
+ createdAt: string;
1207
+ updatedAt: string;
1208
+ };
1209
+ };
1210
+ };
1211
+ };
1212
+ };
1213
+ "postApi-keysByIdUpdate": {
1214
+ parameters: {
1215
+ query?: never;
1216
+ header?: never;
1217
+ path: {
1218
+ id: string;
1219
+ };
1220
+ cookie?: never;
1221
+ };
1222
+ requestBody: {
1223
+ content: {
1224
+ "application/json": {
1225
+ /** @description Update the key name. */
1226
+ name?: string;
1227
+ /** @description Update the key status. */
1228
+ status?: "active" | "disabled";
1229
+ };
1230
+ "multipart/form-data": {
1231
+ /** @description Update the key name. */
1232
+ name?: string;
1233
+ /** @description Update the key status. */
1234
+ status?: "active" | "disabled";
1235
+ };
1236
+ "text/plain": {
1237
+ /** @description Update the key name. */
1238
+ name?: string;
1239
+ /** @description Update the key status. */
1240
+ status?: "active" | "disabled";
1241
+ };
1242
+ };
1243
+ };
1244
+ responses: {
1245
+ 200: {
1246
+ headers: {
1247
+ [name: string]: unknown;
1248
+ };
1249
+ content: {
1250
+ "application/json": {
1251
+ id: string;
1252
+ name: string;
1253
+ /** @description Full API key */
1254
+ key: string;
1255
+ status: string;
1256
+ lastUsedAt: (string | null) | null;
1257
+ expiresAt: (string | null) | null;
1258
+ createdAt: string;
1259
+ updatedAt: string;
1260
+ };
1261
+ "multipart/form-data": {
1262
+ id: string;
1263
+ name: string;
1264
+ /** @description Full API key */
1265
+ key: string;
1266
+ status: string;
1267
+ lastUsedAt: (string | null) | null;
1268
+ expiresAt: (string | null) | null;
1269
+ createdAt: string;
1270
+ updatedAt: string;
1271
+ };
1272
+ "text/plain": {
1273
+ id: string;
1274
+ name: string;
1275
+ /** @description Full API key */
1276
+ key: string;
1277
+ status: string;
1278
+ lastUsedAt: (string | null) | null;
1279
+ expiresAt: (string | null) | null;
1280
+ createdAt: string;
1281
+ updatedAt: string;
1282
+ };
1283
+ };
1284
+ };
1285
+ };
1286
+ };
1287
+ "postApi-keysByIdDelete": {
1288
+ parameters: {
1289
+ query?: never;
1290
+ header?: never;
1291
+ path: {
1292
+ id: string;
1293
+ };
1294
+ cookie?: never;
1295
+ };
1296
+ requestBody?: never;
1297
+ responses: {
1298
+ 200: {
1299
+ headers: {
1300
+ [name: string]: unknown;
1301
+ };
1302
+ content: {
1303
+ "application/json": {
1304
+ success: boolean;
1305
+ };
1306
+ "multipart/form-data": {
1307
+ success: boolean;
1308
+ };
1309
+ "text/plain": {
1310
+ success: boolean;
1311
+ };
1312
+ };
1313
+ };
1314
+ };
1315
+ };
1316
+ postCreditsClaim: {
1317
+ parameters: {
1318
+ query?: never;
1319
+ header?: never;
1320
+ path?: never;
1321
+ cookie?: never;
1322
+ };
1323
+ requestBody: {
1324
+ content: {
1325
+ "application/json": {
1326
+ /** @description The credit code to claim. */
1327
+ code: string;
1328
+ };
1329
+ "multipart/form-data": {
1330
+ /** @description The credit code to claim. */
1331
+ code: string;
1332
+ };
1333
+ "text/plain": {
1334
+ /** @description The credit code to claim. */
1335
+ code: string;
1336
+ };
1337
+ };
1338
+ };
1339
+ responses: {
1340
+ 200: {
1341
+ headers: {
1342
+ [name: string]: unknown;
1343
+ };
1344
+ content: {
1345
+ "application/json": {
1346
+ message: string;
1347
+ amount: number;
1348
+ };
1349
+ "multipart/form-data": {
1350
+ message: string;
1351
+ amount: number;
1352
+ };
1353
+ "text/plain": {
1354
+ message: string;
1355
+ amount: number;
1356
+ };
1357
+ };
1358
+ };
1359
+ };
1360
+ };
1361
+ postCreditsInvitationsByTokenClaim: {
1362
+ parameters: {
1363
+ query?: never;
1364
+ header?: never;
1365
+ path: {
1366
+ token: string;
1367
+ };
1368
+ cookie?: never;
1369
+ };
1370
+ requestBody?: never;
1371
+ responses: {
1372
+ 200: {
1373
+ headers: {
1374
+ [name: string]: unknown;
1375
+ };
1376
+ content: {
1377
+ "application/json": {
1378
+ message: string;
1379
+ amount: number;
1380
+ };
1381
+ "multipart/form-data": {
1382
+ message: string;
1383
+ amount: number;
1384
+ };
1385
+ "text/plain": {
1386
+ message: string;
1387
+ amount: number;
1388
+ };
1389
+ };
1390
+ };
1391
+ };
1392
+ };
1393
+ postCreditsRequest: {
1394
+ parameters: {
1395
+ query?: never;
1396
+ header?: never;
1397
+ path?: never;
1398
+ cookie?: never;
1399
+ };
1400
+ requestBody?: never;
1401
+ responses: {
1402
+ 200: {
1403
+ headers: {
1404
+ [name: string]: unknown;
1405
+ };
1406
+ content: {
1407
+ "application/json": {
1408
+ message: string;
1409
+ amount: number;
1410
+ };
1411
+ "multipart/form-data": {
1412
+ message: string;
1413
+ amount: number;
1414
+ };
1415
+ "text/plain": {
1416
+ message: string;
1417
+ amount: number;
1418
+ };
1419
+ };
1420
+ };
1421
+ };
1422
+ };
1423
+ getCreditsRequestEligibility: {
1424
+ parameters: {
1425
+ query?: never;
1426
+ header?: never;
1427
+ path?: never;
1428
+ cookie?: never;
1429
+ };
1430
+ requestBody?: never;
1431
+ responses: {
1432
+ 200: {
1433
+ headers: {
1434
+ [name: string]: unknown;
1435
+ };
1436
+ content: {
1437
+ "application/json": {
1438
+ eligible: boolean;
1439
+ message?: string;
1440
+ amount?: number;
1441
+ };
1442
+ "multipart/form-data": {
1443
+ eligible: boolean;
1444
+ message?: string;
1445
+ amount?: number;
1446
+ };
1447
+ "text/plain": {
1448
+ eligible: boolean;
1449
+ message?: string;
1450
+ amount?: number;
1451
+ };
1452
+ };
1453
+ };
1454
+ };
1455
+ };
1456
+ getCreditsBalance: {
1457
+ parameters: {
1458
+ query?: never;
1459
+ header?: never;
1460
+ path?: never;
1461
+ cookie?: never;
1462
+ };
1463
+ requestBody?: never;
1464
+ responses: {
1465
+ 200: {
1466
+ headers: {
1467
+ [name: string]: unknown;
1468
+ };
1469
+ content: {
1470
+ "application/json": {
1471
+ /** @description Credits assigned to the user in USD cents. */
1472
+ assignedCredits: number;
1473
+ /** @description Credits reserved for active jobs in USD cents. */
1474
+ reservedCredits: number;
1475
+ /** @description Credits that have been used/settled in USD cents. */
1476
+ settledCredits: number;
1477
+ };
1478
+ "multipart/form-data": {
1479
+ /** @description Credits assigned to the user in USD cents. */
1480
+ assignedCredits: number;
1481
+ /** @description Credits reserved for active jobs in USD cents. */
1482
+ reservedCredits: number;
1483
+ /** @description Credits that have been used/settled in USD cents. */
1484
+ settledCredits: number;
1485
+ };
1486
+ "text/plain": {
1487
+ /** @description Credits assigned to the user in USD cents. */
1488
+ assignedCredits: number;
1489
+ /** @description Credits reserved for active jobs in USD cents. */
1490
+ reservedCredits: number;
1491
+ /** @description Credits that have been used/settled in USD cents. */
1492
+ settledCredits: number;
1493
+ };
1494
+ };
1495
+ };
1496
+ };
1497
+ };
1498
+ "getCreditsSpending-history": {
1499
+ parameters: {
1500
+ query: {
1501
+ start_date: string;
1502
+ end_date?: string;
1503
+ group_by?: "day" | "month";
1504
+ };
1505
+ header?: never;
1506
+ path?: never;
1507
+ cookie?: never;
1508
+ };
1509
+ requestBody?: never;
1510
+ responses: {
1511
+ 200: {
1512
+ headers: {
1513
+ [name: string]: unknown;
1514
+ };
1515
+ content: {
1516
+ "application/json": {
1517
+ userAddress: string;
1518
+ startDate: string;
1519
+ endDate: string;
1520
+ groupBy: string;
1521
+ results: {
1522
+ period: string;
1523
+ total_usd: number;
1524
+ breakdown: {
1525
+ market: string;
1526
+ totalSpent: number;
1527
+ }[];
1528
+ daily_breakdown?: {
1529
+ [key: string]: {
1530
+ [key: string]: number;
1531
+ };
1532
+ };
1533
+ }[];
1534
+ forecast: number | null;
1535
+ comparison: {
1536
+ prevMonthTotal: number;
1537
+ pctChange: number | null;
1538
+ } | null;
1539
+ sameDayComparison: {
1540
+ sameDayLastMonthSpent: number;
1541
+ currentMonthSpent: number;
1542
+ pctChangeSoFar?: number | null;
1543
+ } | null;
1544
+ currentMonth: {
1545
+ currentMonthSpent: number;
1546
+ } | null;
1547
+ };
1548
+ "multipart/form-data": {
1549
+ userAddress: string;
1550
+ startDate: string;
1551
+ endDate: string;
1552
+ groupBy: string;
1553
+ results: {
1554
+ period: string;
1555
+ total_usd: number;
1556
+ breakdown: {
1557
+ market: string;
1558
+ totalSpent: number;
1559
+ }[];
1560
+ daily_breakdown?: {
1561
+ [key: string]: {
1562
+ [key: string]: number;
1563
+ };
1564
+ };
1565
+ }[];
1566
+ forecast: number | null;
1567
+ comparison: {
1568
+ prevMonthTotal: number;
1569
+ pctChange: number | null;
1570
+ } | null;
1571
+ sameDayComparison: {
1572
+ sameDayLastMonthSpent: number;
1573
+ currentMonthSpent: number;
1574
+ pctChangeSoFar?: number | null;
1575
+ } | null;
1576
+ currentMonth: {
1577
+ currentMonthSpent: number;
1578
+ } | null;
1579
+ };
1580
+ "text/plain": {
1581
+ userAddress: string;
1582
+ startDate: string;
1583
+ endDate: string;
1584
+ groupBy: string;
1585
+ results: {
1586
+ period: string;
1587
+ total_usd: number;
1588
+ breakdown: {
1589
+ market: string;
1590
+ totalSpent: number;
1591
+ }[];
1592
+ daily_breakdown?: {
1593
+ [key: string]: {
1594
+ [key: string]: number;
1595
+ };
1596
+ };
1597
+ }[];
1598
+ forecast: number | null;
1599
+ comparison: {
1600
+ prevMonthTotal: number;
1601
+ pctChange: number | null;
1602
+ } | null;
1603
+ sameDayComparison: {
1604
+ sameDayLastMonthSpent: number;
1605
+ currentMonthSpent: number;
1606
+ pctChangeSoFar?: number | null;
1607
+ } | null;
1608
+ currentMonth: {
1609
+ currentMonthSpent: number;
1610
+ } | null;
1611
+ };
1612
+ };
1613
+ };
1614
+ };
1615
+ };
1616
+ getCreditsTransactions: {
1617
+ parameters: {
1618
+ query: {
1619
+ limit: string | number;
1620
+ offset: string | number;
1621
+ };
1622
+ header?: never;
1623
+ path?: never;
1624
+ cookie?: never;
1625
+ };
1626
+ requestBody?: never;
1627
+ responses: {
1628
+ 200: {
1629
+ headers: {
1630
+ [name: string]: unknown;
1631
+ };
1632
+ content: {
1633
+ "application/json": {
1634
+ transactions: {
1635
+ id: string;
1636
+ type: string;
1637
+ amountUsd: number;
1638
+ createdAt: string;
1639
+ }[];
1640
+ total: number;
1641
+ };
1642
+ "multipart/form-data": {
1643
+ transactions: {
1644
+ id: string;
1645
+ type: string;
1646
+ amountUsd: number;
1647
+ createdAt: string;
1648
+ }[];
1649
+ total: number;
1650
+ };
1651
+ "text/plain": {
1652
+ transactions: {
1653
+ id: string;
1654
+ type: string;
1655
+ amountUsd: number;
1656
+ createdAt: string;
1657
+ }[];
1658
+ total: number;
1659
+ };
1660
+ };
1661
+ };
1662
+ };
1663
+ };
1664
+ getCreditsInvitationsByToken: {
1665
+ parameters: {
1666
+ query?: never;
1667
+ header?: never;
1668
+ path: {
1669
+ token: string;
1670
+ };
1671
+ cookie?: never;
1672
+ };
1673
+ requestBody?: never;
1674
+ responses: {
1675
+ 200: {
1676
+ headers: {
1677
+ [name: string]: unknown;
1678
+ };
1679
+ content: {
1680
+ "application/json": {
1681
+ creditsAmount: number;
1682
+ expirationDate: (((Record<string, never> | string | number) | string) | null) | null;
1683
+ restrictedEmail: (string | null) | null;
1684
+ restrictedAccountName: (string | null) | null;
1685
+ isClaimed: boolean;
1686
+ isExpired: boolean;
1687
+ };
1688
+ "multipart/form-data": {
1689
+ creditsAmount: number;
1690
+ expirationDate: (((Record<string, never> | string | number) | string) | null) | null;
1691
+ restrictedEmail: (string | null) | null;
1692
+ restrictedAccountName: (string | null) | null;
1693
+ isClaimed: boolean;
1694
+ isExpired: boolean;
1695
+ };
1696
+ "text/plain": {
1697
+ creditsAmount: number;
1698
+ expirationDate: (((Record<string, never> | string | number) | string) | null) | null;
1699
+ restrictedEmail: (string | null) | null;
1700
+ restrictedAccountName: (string | null) | null;
1701
+ isClaimed: boolean;
1702
+ isExpired: boolean;
1703
+ };
1704
+ };
1705
+ };
1706
+ };
1707
+ };
1708
+ getTemplates: {
1709
+ parameters: {
1710
+ query?: never;
1711
+ header?: never;
1712
+ path?: never;
1713
+ cookie?: never;
1714
+ };
1715
+ requestBody?: never;
1716
+ responses: {
1717
+ 200: {
1718
+ headers: {
1719
+ [name: string]: unknown;
1720
+ };
1721
+ content: {
1722
+ "application/json": {
1723
+ id: string;
1724
+ name: string;
1725
+ jobDefinition: unknown;
1726
+ icon: (string | null) | null;
1727
+ readme: (string | null) | null;
1728
+ category: (string | null) | null;
1729
+ vram_requirement: (number | null) | null;
1730
+ cuda_requirement: (number[] | null) | null;
1731
+ is_variant_template: (boolean | null) | null;
1732
+ parent_template_id: (string | null) | null;
1733
+ variants: unknown;
1734
+ }[];
1735
+ "multipart/form-data": {
1736
+ id: string;
1737
+ name: string;
1738
+ jobDefinition: unknown;
1739
+ icon: (string | null) | null;
1740
+ readme: (string | null) | null;
1741
+ category: (string | null) | null;
1742
+ vram_requirement: (number | null) | null;
1743
+ cuda_requirement: (number[] | null) | null;
1744
+ is_variant_template: (boolean | null) | null;
1745
+ parent_template_id: (string | null) | null;
1746
+ variants: unknown;
1747
+ }[];
1748
+ "text/plain": {
1749
+ id: string;
1750
+ name: string;
1751
+ jobDefinition: unknown;
1752
+ icon: (string | null) | null;
1753
+ readme: (string | null) | null;
1754
+ category: (string | null) | null;
1755
+ vram_requirement: (number | null) | null;
1756
+ cuda_requirement: (number[] | null) | null;
1757
+ is_variant_template: (boolean | null) | null;
1758
+ parent_template_id: (string | null) | null;
1759
+ variants: unknown;
1760
+ }[];
1761
+ };
1762
+ };
1763
+ };
1764
+ };
1765
+ getTemplatesGrouped: {
1766
+ parameters: {
1767
+ query?: never;
1768
+ header?: never;
1769
+ path?: never;
1770
+ cookie?: never;
1771
+ };
1772
+ requestBody?: never;
1773
+ responses: {
1774
+ 200: {
1775
+ headers: {
1776
+ [name: string]: unknown;
1777
+ };
1778
+ content: {
1779
+ "application/json": {
1780
+ [key: string]: {
1781
+ id: string;
1782
+ name: string;
1783
+ jobDefinition: unknown;
1784
+ icon: (string | null) | null;
1785
+ readme: (string | null) | null;
1786
+ category: (string | null) | null;
1787
+ vram_requirement: (number | null) | null;
1788
+ cuda_requirement: (number[] | null) | null;
1789
+ is_variant_template: (boolean | null) | null;
1790
+ parent_template_id: (string | null) | null;
1791
+ variants: unknown;
1792
+ }[];
1793
+ };
1794
+ "multipart/form-data": {
1795
+ [key: string]: {
1796
+ id: string;
1797
+ name: string;
1798
+ jobDefinition: unknown;
1799
+ icon: (string | null) | null;
1800
+ readme: (string | null) | null;
1801
+ category: (string | null) | null;
1802
+ vram_requirement: (number | null) | null;
1803
+ cuda_requirement: (number[] | null) | null;
1804
+ is_variant_template: (boolean | null) | null;
1805
+ parent_template_id: (string | null) | null;
1806
+ variants: unknown;
1807
+ }[];
1808
+ };
1809
+ "text/plain": {
1810
+ [key: string]: {
1811
+ id: string;
1812
+ name: string;
1813
+ jobDefinition: unknown;
1814
+ icon: (string | null) | null;
1815
+ readme: (string | null) | null;
1816
+ category: (string | null) | null;
1817
+ vram_requirement: (number | null) | null;
1818
+ cuda_requirement: (number[] | null) | null;
1819
+ is_variant_template: (boolean | null) | null;
1820
+ parent_template_id: (string | null) | null;
1821
+ variants: unknown;
1822
+ }[];
1823
+ };
1824
+ };
1825
+ };
1826
+ };
1827
+ };
1828
+ getTemplatesById: {
1829
+ parameters: {
1830
+ query?: never;
1831
+ header?: never;
1832
+ path: {
1833
+ id: string;
1834
+ };
1835
+ cookie?: never;
1836
+ };
1837
+ requestBody?: never;
1838
+ responses: {
1839
+ 200: {
1840
+ headers: {
1841
+ [name: string]: unknown;
1842
+ };
1843
+ content: {
1844
+ "application/json": {
1845
+ id: string;
1846
+ name: string;
1847
+ jobDefinition: unknown;
1848
+ icon: (string | null) | null;
1849
+ readme: (string | null) | null;
1850
+ category: (string | null) | null;
1851
+ vram_requirement: (number | null) | null;
1852
+ cuda_requirement: (number[] | null) | null;
1853
+ is_variant_template: (boolean | null) | null;
1854
+ parent_template_id: (string | null) | null;
1855
+ variants: unknown;
1856
+ };
1857
+ "multipart/form-data": {
1858
+ id: string;
1859
+ name: string;
1860
+ jobDefinition: unknown;
1861
+ icon: (string | null) | null;
1862
+ readme: (string | null) | null;
1863
+ category: (string | null) | null;
1864
+ vram_requirement: (number | null) | null;
1865
+ cuda_requirement: (number[] | null) | null;
1866
+ is_variant_template: (boolean | null) | null;
1867
+ parent_template_id: (string | null) | null;
1868
+ variants: unknown;
1869
+ };
1870
+ "text/plain": {
1871
+ id: string;
1872
+ name: string;
1873
+ jobDefinition: unknown;
1874
+ icon: (string | null) | null;
1875
+ readme: (string | null) | null;
1876
+ category: (string | null) | null;
1877
+ vram_requirement: (number | null) | null;
1878
+ cuda_requirement: (number[] | null) | null;
1879
+ is_variant_template: (boolean | null) | null;
1880
+ parent_template_id: (string | null) | null;
1881
+ variants: unknown;
1882
+ };
1883
+ };
1884
+ };
1885
+ };
1886
+ };
1887
+ getTemplatesByIdByVariantId: {
1888
+ parameters: {
1889
+ query?: never;
1890
+ header?: never;
1891
+ path: {
1892
+ id: string;
1893
+ variantId: string;
1894
+ };
1895
+ cookie?: never;
1896
+ };
1897
+ requestBody?: never;
1898
+ responses: {
1899
+ 200: {
1900
+ headers: {
1901
+ [name: string]: unknown;
1902
+ };
1903
+ content: {
1904
+ "application/json": unknown;
1905
+ "multipart/form-data": unknown;
1906
+ "text/plain": unknown;
1907
+ };
1908
+ };
1909
+ };
1910
+ };
1911
+ postJobsList: {
1912
+ parameters: {
1913
+ query?: never;
1914
+ header?: {
1915
+ /** @description De-duplicates retried requests sharing the same key, making the call safely retryable. Optional here; required on the batch endpoints. */
1916
+ "Idempotency-Key"?: string;
1917
+ };
1918
+ path?: never;
1919
+ cookie?: never;
1920
+ };
1921
+ requestBody: {
1922
+ content: {
1923
+ "application/json": {
1924
+ /** @description IPFS hash of the job definition */
1925
+ ipfsHash: string;
1926
+ /** @description Market address */
1927
+ market: string;
1928
+ /** @description Job timeout in seconds (default: 3600) */
1929
+ timeout?: number;
1930
+ /** @description Optional node address */
1931
+ node?: string;
1932
+ };
1933
+ "multipart/form-data": {
1934
+ /** @description IPFS hash of the job definition */
1935
+ ipfsHash: string;
1936
+ /** @description Market address */
1937
+ market: string;
1938
+ /** @description Job timeout in seconds (default: 3600) */
1939
+ timeout?: number;
1940
+ /** @description Optional node address */
1941
+ node?: string;
1942
+ };
1943
+ "text/plain": {
1944
+ /** @description IPFS hash of the job definition */
1945
+ ipfsHash: string;
1946
+ /** @description Market address */
1947
+ market: string;
1948
+ /** @description Job timeout in seconds (default: 3600) */
1949
+ timeout?: number;
1950
+ /** @description Optional node address */
1951
+ node?: string;
1952
+ };
1953
+ };
1954
+ };
1955
+ responses: {
1956
+ /** @description Job listed on the market and charged to credits. */
1957
+ 200: {
1958
+ headers: {
1959
+ [name: string]: unknown;
1960
+ };
1961
+ content: {
1962
+ "application/json": components["schemas"]["CreateJobWithCreditsResponse"];
1963
+ };
1964
+ };
1965
+ /** @description Invalid request (e.g. unknown market). Ordinary error: no `code` field. */
1966
+ 400: {
1967
+ headers: {
1968
+ [name: string]: unknown;
1969
+ };
1970
+ content: {
1971
+ "application/json": components["schemas"]["JobError"];
1972
+ };
1973
+ };
1974
+ /** @description Caller does not own the job, or the market is not credit-eligible. Ordinary error: no `code` field. */
1975
+ 403: {
1976
+ headers: {
1977
+ [name: string]: unknown;
1978
+ };
1979
+ content: {
1980
+ "application/json": components["schemas"]["JobError"];
1981
+ };
1982
+ };
1983
+ /** @description Job, credit-job, or user not found — or an Idempotency-Key minted by a different user. Ordinary error: no `code` field. */
1984
+ 404: {
1985
+ headers: {
1986
+ [name: string]: unknown;
1987
+ };
1988
+ content: {
1989
+ "application/json": components["schemas"]["JobError"];
1990
+ };
1991
+ };
1992
+ /** @description Idempotency control signal — branch on `code` (IDEMPOTENCY_KEY_*), never on the HTTP status. IN_PROGRESS → retry the same key after Retry-After; EXPIRED → mint a fresh key; PAYLOAD_MISMATCH → do not retry. */
1993
+ 409: {
1994
+ headers: {
1995
+ /** @description Seconds to wait before retrying the same key. Sent only for IDEMPOTENCY_KEY_IN_PROGRESS. */
1996
+ "Retry-After"?: number;
1997
+ [name: string]: unknown;
1998
+ };
1999
+ content: {
2000
+ "application/json": components["schemas"]["IdempotencyError"];
2001
+ };
2002
+ };
2003
+ };
2004
+ };
2005
+ postJobsListBatch: {
2006
+ parameters: {
2007
+ query?: never;
2008
+ header: {
2009
+ /** @description De-duplicates retried requests sharing the same key (one key per batch). Required on batch endpoints — omitting it returns 400. */
2010
+ "Idempotency-Key": string;
2011
+ };
2012
+ path?: never;
2013
+ cookie?: never;
2014
+ };
2015
+ requestBody: {
2016
+ content: {
2017
+ "application/json": {
2018
+ /** @description Jobs to bulk-create */
2019
+ jobs: {
2020
+ /** @description IPFS hash of the job definition */
2021
+ ipfsHash: string;
2022
+ /** @description Market address */
2023
+ market: string;
2024
+ /** @description Job timeout in seconds (default: 3600) */
2025
+ timeout?: number;
2026
+ }[];
2027
+ };
2028
+ "multipart/form-data": {
2029
+ /** @description Jobs to bulk-create */
2030
+ jobs: {
2031
+ /** @description IPFS hash of the job definition */
2032
+ ipfsHash: string;
2033
+ /** @description Market address */
2034
+ market: string;
2035
+ /** @description Job timeout in seconds (default: 3600) */
2036
+ timeout?: number;
2037
+ }[];
2038
+ };
2039
+ "text/plain": {
2040
+ /** @description Jobs to bulk-create */
2041
+ jobs: {
2042
+ /** @description IPFS hash of the job definition */
2043
+ ipfsHash: string;
2044
+ /** @description Market address */
2045
+ market: string;
2046
+ /** @description Job timeout in seconds (default: 3600) */
2047
+ timeout?: number;
2048
+ }[];
2049
+ };
2050
+ };
2051
+ };
2052
+ responses: {
2053
+ /** @description Per-item results by `index`: `confirmed` (with its job/run address) or `expired` — re-post only the expired items under a fresh key. */
2054
+ 200: {
2055
+ headers: {
2056
+ [name: string]: unknown;
2057
+ };
2058
+ content: {
2059
+ "application/json": components["schemas"]["JobsBatchResponse"];
2060
+ };
2061
+ };
2062
+ /** @description Missing `Idempotency-Key` header (required on batch endpoints) or an otherwise invalid request. Ordinary error: no `code` field. */
2063
+ 400: {
2064
+ headers: {
2065
+ [name: string]: unknown;
2066
+ };
2067
+ content: {
2068
+ "application/json": components["schemas"]["JobError"];
2069
+ };
2070
+ };
2071
+ /** @description Caller does not own the job, or the market is not credit-eligible. Ordinary error: no `code` field. */
2072
+ 403: {
2073
+ headers: {
2074
+ [name: string]: unknown;
2075
+ };
2076
+ content: {
2077
+ "application/json": components["schemas"]["JobError"];
2078
+ };
2079
+ };
2080
+ /** @description Job, credit-job, or user not found — or an Idempotency-Key minted by a different user. Ordinary error: no `code` field. */
2081
+ 404: {
2082
+ headers: {
2083
+ [name: string]: unknown;
2084
+ };
2085
+ content: {
2086
+ "application/json": components["schemas"]["JobError"];
2087
+ };
2088
+ };
2089
+ /** @description Idempotency control signal — branch on `code` (IDEMPOTENCY_KEY_*), never on the HTTP status. IN_PROGRESS → retry the same key after Retry-After; EXPIRED → mint a fresh key; PAYLOAD_MISMATCH → do not retry. */
2090
+ 409: {
2091
+ headers: {
2092
+ /** @description Seconds to wait before retrying the same key. Sent only for IDEMPOTENCY_KEY_IN_PROGRESS. */
2093
+ "Retry-After"?: number;
2094
+ [name: string]: unknown;
2095
+ };
2096
+ content: {
2097
+ "application/json": components["schemas"]["IdempotencyError"];
2098
+ };
2099
+ };
2100
+ };
2101
+ };
2102
+ postJobsByAddressExtend: {
2103
+ parameters: {
2104
+ query?: never;
2105
+ header?: {
2106
+ /** @description De-duplicates retried requests sharing the same key, making the call safely retryable. Optional here; required on the batch endpoints. */
2107
+ "Idempotency-Key"?: string;
2108
+ };
2109
+ path: {
2110
+ /** @description Job address */
2111
+ address: string;
2112
+ };
2113
+ cookie?: never;
2114
+ };
2115
+ requestBody: {
2116
+ content: {
2117
+ "application/json": {
2118
+ /** @description Number of seconds to extend the job */
2119
+ seconds: string | number;
2120
+ };
2121
+ "multipart/form-data": {
2122
+ /** @description Number of seconds to extend the job */
2123
+ seconds: string | number;
2124
+ };
2125
+ "text/plain": {
2126
+ /** @description Number of seconds to extend the job */
2127
+ seconds: string | number;
2128
+ };
2129
+ };
2130
+ };
2131
+ responses: {
2132
+ /** @description Job extended and charged to credits. */
2133
+ 200: {
2134
+ headers: {
2135
+ [name: string]: unknown;
2136
+ };
2137
+ content: {
2138
+ "application/json": components["schemas"]["ExtendJobWithCreditsResponse"];
2139
+ };
2140
+ };
2141
+ /** @description Invalid request (e.g. unknown market). Ordinary error: no `code` field. */
2142
+ 400: {
2143
+ headers: {
2144
+ [name: string]: unknown;
2145
+ };
2146
+ content: {
2147
+ "application/json": components["schemas"]["JobError"];
2148
+ };
2149
+ };
2150
+ /** @description Caller does not own the job, or the market is not credit-eligible. Ordinary error: no `code` field. */
2151
+ 403: {
2152
+ headers: {
2153
+ [name: string]: unknown;
2154
+ };
2155
+ content: {
2156
+ "application/json": components["schemas"]["JobError"];
2157
+ };
2158
+ };
2159
+ /** @description Job, credit-job, or user not found — or an Idempotency-Key minted by a different user. Ordinary error: no `code` field. */
2160
+ 404: {
2161
+ headers: {
2162
+ [name: string]: unknown;
2163
+ };
2164
+ content: {
2165
+ "application/json": components["schemas"]["JobError"];
2166
+ };
2167
+ };
2168
+ /** @description Either an idempotency control signal (has `code`: IDEMPOTENCY_KEY_*) or a code-less, non-retryable rejection because the job is in a terminal, non-extendable state. Branch on the presence of `code`. */
2169
+ 409: {
2170
+ headers: {
2171
+ /** @description Seconds to wait before retrying the same key. Sent only for IDEMPOTENCY_KEY_IN_PROGRESS. */
2172
+ "Retry-After"?: number;
2173
+ [name: string]: unknown;
2174
+ };
2175
+ content: {
2176
+ "application/json": components["schemas"]["IdempotencyError"];
2177
+ };
2178
+ };
2179
+ };
2180
+ };
2181
+ postJobsByAddressStop: {
2182
+ parameters: {
2183
+ query?: never;
2184
+ header?: {
2185
+ /** @description De-duplicates retried requests sharing the same key, making the call safely retryable. Optional here; required on the batch endpoints. */
2186
+ "Idempotency-Key"?: string;
2187
+ };
2188
+ path: {
2189
+ /** @description Job address */
2190
+ address: string;
2191
+ };
2192
+ cookie?: never;
2193
+ };
2194
+ requestBody?: never;
2195
+ responses: {
2196
+ /** @description Job stopped (or already terminal). `tx` is null and `outcome` is `already_terminal` when the job was already terminal and no transaction was minted. */
2197
+ 200: {
2198
+ headers: {
2199
+ [name: string]: unknown;
2200
+ };
2201
+ content: {
2202
+ "application/json": components["schemas"]["StopJobWithCreditsResponse"];
2203
+ };
2204
+ };
2205
+ /** @description Caller does not own the job, or the market is not credit-eligible. Ordinary error: no `code` field. */
2206
+ 403: {
2207
+ headers: {
2208
+ [name: string]: unknown;
2209
+ };
2210
+ content: {
2211
+ "application/json": components["schemas"]["JobError"];
2212
+ };
2213
+ };
2214
+ /** @description Job, credit-job, or user not found — or an Idempotency-Key minted by a different user. Ordinary error: no `code` field. */
2215
+ 404: {
2216
+ headers: {
2217
+ [name: string]: unknown;
2218
+ };
2219
+ content: {
2220
+ "application/json": components["schemas"]["JobError"];
2221
+ };
2222
+ };
2223
+ /** @description Idempotency control signal — branch on `code` (IDEMPOTENCY_KEY_*), never on the HTTP status. IN_PROGRESS → retry the same key after Retry-After; EXPIRED → mint a fresh key; PAYLOAD_MISMATCH → do not retry. */
2224
+ 409: {
2225
+ headers: {
2226
+ /** @description Seconds to wait before retrying the same key. Sent only for IDEMPOTENCY_KEY_IN_PROGRESS. */
2227
+ "Retry-After"?: number;
2228
+ [name: string]: unknown;
2229
+ };
2230
+ content: {
2231
+ "application/json": components["schemas"]["IdempotencyError"];
2232
+ };
2233
+ };
2234
+ };
2235
+ };
2236
+ postJobsExtendBatch: {
2237
+ parameters: {
2238
+ query?: never;
2239
+ header: {
2240
+ /** @description De-duplicates retried requests sharing the same key (one key per batch). Required on batch endpoints — omitting it returns 400. */
2241
+ "Idempotency-Key": string;
2242
+ };
2243
+ path?: never;
2244
+ cookie?: never;
2245
+ };
2246
+ requestBody: {
2247
+ content: {
2248
+ "application/json": {
2249
+ /** @description Jobs to bulk-extend */
2250
+ jobs: {
2251
+ /** @description Job address */
2252
+ jobAddress: string;
2253
+ /** @description Seconds to extend by */
2254
+ seconds: number;
2255
+ }[];
2256
+ };
2257
+ "multipart/form-data": {
2258
+ /** @description Jobs to bulk-extend */
2259
+ jobs: {
2260
+ /** @description Job address */
2261
+ jobAddress: string;
2262
+ /** @description Seconds to extend by */
2263
+ seconds: number;
2264
+ }[];
2265
+ };
2266
+ "text/plain": {
2267
+ /** @description Jobs to bulk-extend */
2268
+ jobs: {
2269
+ /** @description Job address */
2270
+ jobAddress: string;
2271
+ /** @description Seconds to extend by */
2272
+ seconds: number;
2273
+ }[];
2274
+ };
2275
+ };
2276
+ };
2277
+ responses: {
2278
+ /** @description Per-item results by `index`: `confirmed` (with its job/run address) or `expired` — re-post only the expired items under a fresh key. */
2279
+ 200: {
2280
+ headers: {
2281
+ [name: string]: unknown;
2282
+ };
2283
+ content: {
2284
+ "application/json": components["schemas"]["JobsBatchResponse"];
2285
+ };
2286
+ };
2287
+ /** @description Missing `Idempotency-Key` header (required on batch endpoints) or an otherwise invalid request. Ordinary error: no `code` field. */
2288
+ 400: {
2289
+ headers: {
2290
+ [name: string]: unknown;
2291
+ };
2292
+ content: {
2293
+ "application/json": components["schemas"]["JobError"];
2294
+ };
2295
+ };
2296
+ /** @description Caller does not own the job, or the market is not credit-eligible. Ordinary error: no `code` field. */
2297
+ 403: {
2298
+ headers: {
2299
+ [name: string]: unknown;
2300
+ };
2301
+ content: {
2302
+ "application/json": components["schemas"]["JobError"];
2303
+ };
2304
+ };
2305
+ /** @description Job, credit-job, or user not found — or an Idempotency-Key minted by a different user. Ordinary error: no `code` field. */
2306
+ 404: {
2307
+ headers: {
2308
+ [name: string]: unknown;
2309
+ };
2310
+ content: {
2311
+ "application/json": components["schemas"]["JobError"];
2312
+ };
2313
+ };
2314
+ /** @description Either an idempotency control signal (has `code`: IDEMPOTENCY_KEY_*) or a code-less, non-retryable rejection because the job is in a terminal, non-extendable state. Branch on the presence of `code`. */
2315
+ 409: {
2316
+ headers: {
2317
+ /** @description Seconds to wait before retrying the same key. Sent only for IDEMPOTENCY_KEY_IN_PROGRESS. */
2318
+ "Retry-After"?: number;
2319
+ [name: string]: unknown;
2320
+ };
2321
+ content: {
2322
+ "application/json": components["schemas"]["IdempotencyError"];
2323
+ };
2324
+ };
2325
+ };
2326
+ };
2327
+ postJobsStopBatch: {
2328
+ parameters: {
2329
+ query?: never;
2330
+ header: {
2331
+ /** @description De-duplicates retried requests sharing the same key (one key per batch). Required on batch endpoints — omitting it returns 400. */
2332
+ "Idempotency-Key": string;
2333
+ };
2334
+ path?: never;
2335
+ cookie?: never;
2336
+ };
2337
+ requestBody: {
2338
+ content: {
2339
+ "application/json": {
2340
+ /** @description Jobs to bulk-stop */
2341
+ jobs: {
2342
+ /** @description Job address */
2343
+ jobAddress: string;
2344
+ }[];
2345
+ };
2346
+ "multipart/form-data": {
2347
+ /** @description Jobs to bulk-stop */
2348
+ jobs: {
2349
+ /** @description Job address */
2350
+ jobAddress: string;
2351
+ }[];
2352
+ };
2353
+ "text/plain": {
2354
+ /** @description Jobs to bulk-stop */
2355
+ jobs: {
2356
+ /** @description Job address */
2357
+ jobAddress: string;
2358
+ }[];
2359
+ };
2360
+ };
2361
+ };
2362
+ responses: {
2363
+ /** @description Per-item results by `index`: `confirmed` (with its job/run address) or `expired` — re-post only the expired items under a fresh key. */
2364
+ 200: {
2365
+ headers: {
2366
+ [name: string]: unknown;
2367
+ };
2368
+ content: {
2369
+ "application/json": components["schemas"]["JobsBatchResponse"];
2370
+ };
2371
+ };
2372
+ /** @description Missing `Idempotency-Key` header (required on batch endpoints) or an otherwise invalid request. Ordinary error: no `code` field. */
2373
+ 400: {
2374
+ headers: {
2375
+ [name: string]: unknown;
2376
+ };
2377
+ content: {
2378
+ "application/json": components["schemas"]["JobError"];
2379
+ };
2380
+ };
2381
+ /** @description Caller does not own the job, or the market is not credit-eligible. Ordinary error: no `code` field. */
2382
+ 403: {
2383
+ headers: {
2384
+ [name: string]: unknown;
2385
+ };
2386
+ content: {
2387
+ "application/json": components["schemas"]["JobError"];
2388
+ };
2389
+ };
2390
+ /** @description Job, credit-job, or user not found — or an Idempotency-Key minted by a different user. Ordinary error: no `code` field. */
2391
+ 404: {
2392
+ headers: {
2393
+ [name: string]: unknown;
2394
+ };
2395
+ content: {
2396
+ "application/json": components["schemas"]["JobError"];
2397
+ };
2398
+ };
2399
+ /** @description Idempotency control signal — branch on `code` (IDEMPOTENCY_KEY_*), never on the HTTP status. IN_PROGRESS → retry the same key after Retry-After; EXPIRED → mint a fresh key; PAYLOAD_MISMATCH → do not retry. */
2400
+ 409: {
2401
+ headers: {
2402
+ /** @description Seconds to wait before retrying the same key. Sent only for IDEMPOTENCY_KEY_IN_PROGRESS. */
2403
+ "Retry-After"?: number;
2404
+ [name: string]: unknown;
2405
+ };
2406
+ content: {
2407
+ "application/json": components["schemas"]["IdempotencyError"];
2408
+ };
2409
+ };
2410
+ };
2411
+ };
2412
+ postNewsletterSubscribe: {
2413
+ parameters: {
2414
+ query?: never;
2415
+ header?: never;
2416
+ path?: never;
2417
+ cookie?: never;
2418
+ };
2419
+ requestBody: {
2420
+ content: {
2421
+ "application/json": {
2422
+ /**
2423
+ * Format: email
2424
+ * @description Email address to subscribe to the newsletter.
2425
+ */
2426
+ email: string;
2427
+ };
2428
+ "multipart/form-data": {
2429
+ /**
2430
+ * Format: email
2431
+ * @description Email address to subscribe to the newsletter.
2432
+ */
2433
+ email: string;
2434
+ };
2435
+ "text/plain": {
2436
+ /**
2437
+ * Format: email
2438
+ * @description Email address to subscribe to the newsletter.
2439
+ */
2440
+ email: string;
2441
+ };
2442
+ };
2443
+ };
2444
+ responses: {
2445
+ 200: {
2446
+ headers: {
2447
+ [name: string]: unknown;
2448
+ };
2449
+ content: {
2450
+ "application/json": {
2451
+ success: boolean;
2452
+ };
2453
+ "multipart/form-data": {
2454
+ success: boolean;
2455
+ };
2456
+ "text/plain": {
2457
+ success: boolean;
2458
+ };
2459
+ };
2460
+ };
2461
+ };
2462
+ };
2463
+ postPaymentsWebhooksStripe: {
2464
+ parameters: {
2465
+ query?: never;
2466
+ header?: never;
2467
+ path?: never;
2468
+ cookie?: never;
2469
+ };
2470
+ requestBody?: never;
2471
+ responses: {
2472
+ 200: {
2473
+ headers: {
2474
+ [name: string]: unknown;
2475
+ };
2476
+ content?: never;
2477
+ };
2478
+ };
2479
+ };
2480
+ "postPaymentsSetup-intent": {
2481
+ parameters: {
2482
+ query?: never;
2483
+ header?: never;
2484
+ path?: never;
2485
+ cookie?: never;
2486
+ };
2487
+ requestBody: {
2488
+ content: {
2489
+ "application/json": {
2490
+ paymentMethodId: string;
2491
+ };
2492
+ "multipart/form-data": {
2493
+ paymentMethodId: string;
2494
+ };
2495
+ "text/plain": {
2496
+ paymentMethodId: string;
2497
+ };
2498
+ };
2499
+ };
2500
+ responses: {
2501
+ 200: {
2502
+ headers: {
2503
+ [name: string]: unknown;
2504
+ };
2505
+ content: {
2506
+ "application/json": {
2507
+ accepted: boolean;
2508
+ verificationError: (string | null) | null;
2509
+ paymentVerified: boolean;
2510
+ requiresAction: boolean;
2511
+ clientSecret: (string | null) | null;
2512
+ setupIntentId: (string | null) | null;
2513
+ };
2514
+ "multipart/form-data": {
2515
+ accepted: boolean;
2516
+ verificationError: (string | null) | null;
2517
+ paymentVerified: boolean;
2518
+ requiresAction: boolean;
2519
+ clientSecret: (string | null) | null;
2520
+ setupIntentId: (string | null) | null;
2521
+ };
2522
+ "text/plain": {
2523
+ accepted: boolean;
2524
+ verificationError: (string | null) | null;
2525
+ paymentVerified: boolean;
2526
+ requiresAction: boolean;
2527
+ clientSecret: (string | null) | null;
2528
+ setupIntentId: (string | null) | null;
2529
+ };
2530
+ };
2531
+ };
2532
+ };
2533
+ };
2534
+ getPaymentsMethods: {
2535
+ parameters: {
2536
+ query?: never;
2537
+ header?: never;
2538
+ path?: never;
2539
+ cookie?: never;
2540
+ };
2541
+ requestBody?: never;
2542
+ responses: {
2543
+ 200: {
2544
+ headers: {
2545
+ [name: string]: unknown;
2546
+ };
2547
+ content: {
2548
+ "application/json": {
2549
+ methods: {
2550
+ id: string;
2551
+ brand: (string | null) | null;
2552
+ last4: (string | null) | null;
2553
+ expMonth: (number | null) | null;
2554
+ expYear: (number | null) | null;
2555
+ funding: (string | null) | null;
2556
+ isDefault: boolean;
2557
+ }[];
2558
+ paymentVerified: boolean;
2559
+ };
2560
+ "multipart/form-data": {
2561
+ methods: {
2562
+ id: string;
2563
+ brand: (string | null) | null;
2564
+ last4: (string | null) | null;
2565
+ expMonth: (number | null) | null;
2566
+ expYear: (number | null) | null;
2567
+ funding: (string | null) | null;
2568
+ isDefault: boolean;
2569
+ }[];
2570
+ paymentVerified: boolean;
2571
+ };
2572
+ "text/plain": {
2573
+ methods: {
2574
+ id: string;
2575
+ brand: (string | null) | null;
2576
+ last4: (string | null) | null;
2577
+ expMonth: (number | null) | null;
2578
+ expYear: (number | null) | null;
2579
+ funding: (string | null) | null;
2580
+ isDefault: boolean;
2581
+ }[];
2582
+ paymentVerified: boolean;
2583
+ };
2584
+ };
2585
+ };
2586
+ };
2587
+ };
2588
+ deletePaymentsMethodsById: {
2589
+ parameters: {
2590
+ query?: never;
2591
+ header?: never;
2592
+ path: {
2593
+ id: string;
2594
+ };
2595
+ cookie?: never;
2596
+ };
2597
+ requestBody?: never;
2598
+ responses: {
2599
+ 200: {
2600
+ headers: {
2601
+ [name: string]: unknown;
2602
+ };
2603
+ content: {
2604
+ "application/json": {
2605
+ success: boolean;
2606
+ };
2607
+ "multipart/form-data": {
2608
+ success: boolean;
2609
+ };
2610
+ "text/plain": {
2611
+ success: boolean;
2612
+ };
2613
+ };
2614
+ };
2615
+ };
2616
+ };
2617
+ putPaymentsMethodsByIdDefault: {
2618
+ parameters: {
2619
+ query?: never;
2620
+ header?: never;
2621
+ path: {
2622
+ id: string;
2623
+ };
2624
+ cookie?: never;
2625
+ };
2626
+ requestBody?: never;
2627
+ responses: {
2628
+ 200: {
2629
+ headers: {
2630
+ [name: string]: unknown;
2631
+ };
2632
+ content: {
2633
+ "application/json": {
2634
+ methods: {
2635
+ id: string;
2636
+ brand: (string | null) | null;
2637
+ last4: (string | null) | null;
2638
+ expMonth: (number | null) | null;
2639
+ expYear: (number | null) | null;
2640
+ funding: (string | null) | null;
2641
+ isDefault: boolean;
2642
+ }[];
2643
+ paymentVerified: boolean;
2644
+ };
2645
+ "multipart/form-data": {
2646
+ methods: {
2647
+ id: string;
2648
+ brand: (string | null) | null;
2649
+ last4: (string | null) | null;
2650
+ expMonth: (number | null) | null;
2651
+ expYear: (number | null) | null;
2652
+ funding: (string | null) | null;
2653
+ isDefault: boolean;
2654
+ }[];
2655
+ paymentVerified: boolean;
2656
+ };
2657
+ "text/plain": {
2658
+ methods: {
2659
+ id: string;
2660
+ brand: (string | null) | null;
2661
+ last4: (string | null) | null;
2662
+ expMonth: (number | null) | null;
2663
+ expYear: (number | null) | null;
2664
+ funding: (string | null) | null;
2665
+ isDefault: boolean;
2666
+ }[];
2667
+ paymentVerified: boolean;
2668
+ };
2669
+ };
2670
+ };
2671
+ };
2672
+ };
2673
+ "postPaymentsPayment-intent": {
2674
+ parameters: {
2675
+ query?: never;
2676
+ header?: never;
2677
+ path?: never;
2678
+ cookie?: never;
2679
+ };
2680
+ requestBody: {
2681
+ content: {
2682
+ "application/json": {
2683
+ amountUsd: number;
2684
+ paymentMethodId?: string;
2685
+ };
2686
+ "multipart/form-data": {
2687
+ amountUsd: number;
2688
+ paymentMethodId?: string;
2689
+ };
2690
+ "text/plain": {
2691
+ amountUsd: number;
2692
+ paymentMethodId?: string;
2693
+ };
2694
+ };
2695
+ };
2696
+ responses: {
2697
+ 200: {
2698
+ headers: {
2699
+ [name: string]: unknown;
2700
+ };
2701
+ content: {
2702
+ "application/json": {
2703
+ clientSecret: (string | null) | null;
2704
+ paymentIntentId: string;
2705
+ };
2706
+ "multipart/form-data": {
2707
+ clientSecret: (string | null) | null;
2708
+ paymentIntentId: string;
2709
+ };
2710
+ "text/plain": {
2711
+ clientSecret: (string | null) | null;
2712
+ paymentIntentId: string;
2713
+ };
2714
+ };
2715
+ };
2716
+ };
2717
+ };
2718
+ getPaymentsPurchases: {
2719
+ parameters: {
2720
+ query?: never;
2721
+ header?: never;
2722
+ path?: never;
2723
+ cookie?: never;
2724
+ };
2725
+ requestBody?: never;
2726
+ responses: {
2727
+ 200: {
2728
+ headers: {
2729
+ [name: string]: unknown;
2730
+ };
2731
+ content: {
2732
+ "application/json": {
2733
+ purchases: {
2734
+ id: string;
2735
+ amountUsd: number;
2736
+ createdAt: string;
2737
+ referenceId: (string | null) | null;
2738
+ cardBrand: (string | null) | null;
2739
+ cardLast4: (string | null) | null;
2740
+ }[];
2741
+ };
2742
+ "multipart/form-data": {
2743
+ purchases: {
2744
+ id: string;
2745
+ amountUsd: number;
2746
+ createdAt: string;
2747
+ referenceId: (string | null) | null;
2748
+ cardBrand: (string | null) | null;
2749
+ cardLast4: (string | null) | null;
2750
+ }[];
2751
+ };
2752
+ "text/plain": {
2753
+ purchases: {
2754
+ id: string;
2755
+ amountUsd: number;
2756
+ createdAt: string;
2757
+ referenceId: (string | null) | null;
2758
+ cardBrand: (string | null) | null;
2759
+ cardLast4: (string | null) | null;
2760
+ }[];
2761
+ };
2762
+ };
2763
+ };
2764
+ };
2765
+ };
2766
+ getMetrics: {
2767
+ parameters: {
2768
+ query?: never;
2769
+ header?: never;
2770
+ path?: never;
2771
+ cookie?: never;
2772
+ };
2773
+ requestBody?: never;
2774
+ responses: {
2775
+ 200: {
2776
+ headers: {
2777
+ [name: string]: unknown;
2778
+ };
2779
+ content?: never;
2780
+ };
2781
+ };
2782
+ };
2783
+ getHealth: {
2784
+ parameters: {
2785
+ query?: never;
2786
+ header?: never;
2787
+ path?: never;
2788
+ cookie?: never;
2789
+ };
2790
+ requestBody?: never;
2791
+ responses: {
2792
+ 200: {
2793
+ headers: {
2794
+ [name: string]: unknown;
2795
+ };
2796
+ content?: never;
2797
+ };
2798
+ };
2799
+ };
2800
+ }
2801
+ //# sourceMappingURL=clientManagerSchema.d.ts.map