@modelrelay/sdk 2.1.0 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/dist/api-Bitsm1tl.d.cts +5290 -0
  2. package/dist/api-Bitsm1tl.d.ts +5290 -0
  3. package/dist/{api-Ct5bpI3U.d.cts → api-CzFaWgs_.d.cts} +2636 -2113
  4. package/dist/{api-Ct5bpI3U.d.ts → api-CzFaWgs_.d.ts} +2636 -2113
  5. package/dist/{api-Bb7sw9L4.d.cts → api-D0wnVpwn.d.cts} +2598 -2148
  6. package/dist/{api-Bb7sw9L4.d.ts → api-D0wnVpwn.d.ts} +2598 -2148
  7. package/dist/billing/index.d.cts +1 -1
  8. package/dist/billing/index.d.ts +1 -1
  9. package/dist/{chunk-AZD5EKLV.js → chunk-5O4NJXLJ.js} +1 -1
  10. package/dist/{chunk-4FXUTSRZ.js → chunk-ADQ74R7T.js} +1 -1
  11. package/dist/{chunk-CXJZB6MA.js → chunk-CV3DTA6P.js} +1 -1
  12. package/dist/{chunk-VOFLESGQ.js → chunk-EMQKOEF3.js} +10 -8
  13. package/dist/{chunk-R6O6UQYM.js → chunk-JZRSCFQH.js} +1 -1
  14. package/dist/{chunk-MXXJDLGU.js → chunk-LW6SC7NQ.js} +2 -63
  15. package/dist/index.cjs +58 -51
  16. package/dist/index.d.cts +27 -21
  17. package/dist/index.d.ts +27 -21
  18. package/dist/index.js +58 -51
  19. package/dist/node.cjs +1 -1
  20. package/dist/node.js +1 -1
  21. package/dist/{tools-B7444ZtV.d.cts → tools-DAqAFZ8F.d.cts} +11 -13
  22. package/dist/{tools-B7444ZtV.d.ts → tools-DAqAFZ8F.d.ts} +11 -13
  23. package/package.json +1 -1
  24. package/dist/api-DWUVls-S.d.cts +0 -4762
  25. package/dist/api-DWUVls-S.d.ts +0 -4762
  26. package/dist/api-DZpC1zuz.d.cts +0 -4691
  27. package/dist/api-DZpC1zuz.d.ts +0 -4691
  28. package/dist/api-D_hE36Ps.d.cts +0 -4535
  29. package/dist/api-D_hE36Ps.d.ts +0 -4535
  30. package/dist/api-Dz9HcUTt.d.cts +0 -4522
  31. package/dist/api-Dz9HcUTt.d.ts +0 -4522
  32. package/dist/chunk-BP5HUQ4M.js +0 -1194
  33. package/dist/chunk-CYGWZYYJ.js +0 -1194
  34. package/dist/chunk-PLZWDUOP.js +0 -1194
  35. package/dist/chunk-SCOP57J4.js +0 -1194
  36. package/dist/chunk-SXNP5Y5L.js +0 -1194
  37. package/dist/tools-CWEBFsql.d.cts +0 -1192
  38. package/dist/tools-CWEBFsql.d.ts +0 -1192
  39. package/dist/tools-CvfwPjC5.d.cts +0 -1098
  40. package/dist/tools-CvfwPjC5.d.ts +0 -1098
  41. package/dist/tools-DUYHZdZP.d.cts +0 -982
  42. package/dist/tools-DUYHZdZP.d.ts +0 -982
@@ -1,4691 +0,0 @@
1
- /**
2
- * This file was auto-generated by openapi-typescript.
3
- * Do not make direct changes to the file.
4
- */
5
- interface paths {
6
- "/schemas/workflow_v0.schema.json": {
7
- parameters: {
8
- query?: never;
9
- header?: never;
10
- path?: never;
11
- cookie?: never;
12
- };
13
- /**
14
- * Get JSON Schema for workflow.v0
15
- * @description Returns the canonical JSON Schema (draft-07) for `workflow.v0`.
16
- */
17
- get: operations["getWorkflowV0Schema"];
18
- put?: never;
19
- post?: never;
20
- delete?: never;
21
- options?: never;
22
- head?: never;
23
- patch?: never;
24
- trace?: never;
25
- };
26
- "/schemas/workflow_v1.schema.json": {
27
- parameters: {
28
- query?: never;
29
- header?: never;
30
- path?: never;
31
- cookie?: never;
32
- };
33
- /**
34
- * Get JSON Schema for workflow.v1
35
- * @description Returns the canonical JSON Schema (draft-07) for `workflow.v1`.
36
- */
37
- get: operations["getWorkflowV1Schema"];
38
- put?: never;
39
- post?: never;
40
- delete?: never;
41
- options?: never;
42
- head?: never;
43
- patch?: never;
44
- trace?: never;
45
- };
46
- "/schemas/run_event_v0.schema.json": {
47
- parameters: {
48
- query?: never;
49
- header?: never;
50
- path?: never;
51
- cookie?: never;
52
- };
53
- /**
54
- * Get JSON Schema for run_event.v0
55
- * @description Returns the canonical JSON Schema (draft-07) for `run_event.v0` (workflow run history events).
56
- */
57
- get: operations["getRunEventV0Schema"];
58
- put?: never;
59
- post?: never;
60
- delete?: never;
61
- options?: never;
62
- head?: never;
63
- patch?: never;
64
- trace?: never;
65
- };
66
- "/auth/register": {
67
- parameters: {
68
- query?: never;
69
- header?: never;
70
- path?: never;
71
- cookie?: never;
72
- };
73
- get?: never;
74
- put?: never;
75
- /** Register a new owner account */
76
- post: operations["registerOwner"];
77
- delete?: never;
78
- options?: never;
79
- head?: never;
80
- patch?: never;
81
- trace?: never;
82
- };
83
- "/auth/login": {
84
- parameters: {
85
- query?: never;
86
- header?: never;
87
- path?: never;
88
- cookie?: never;
89
- };
90
- get?: never;
91
- put?: never;
92
- /** Exchange credentials for tokens */
93
- post: operations["login"];
94
- delete?: never;
95
- options?: never;
96
- head?: never;
97
- patch?: never;
98
- trace?: never;
99
- };
100
- "/auth/refresh": {
101
- parameters: {
102
- query?: never;
103
- header?: never;
104
- path?: never;
105
- cookie?: never;
106
- };
107
- get?: never;
108
- put?: never;
109
- /** Refresh an access token */
110
- post: operations["refreshToken"];
111
- delete?: never;
112
- options?: never;
113
- head?: never;
114
- patch?: never;
115
- trace?: never;
116
- };
117
- "/auth/logout": {
118
- parameters: {
119
- query?: never;
120
- header?: never;
121
- path?: never;
122
- cookie?: never;
123
- };
124
- get?: never;
125
- put?: never;
126
- /** Revoke a refresh token */
127
- post: operations["logout"];
128
- delete?: never;
129
- options?: never;
130
- head?: never;
131
- patch?: never;
132
- trace?: never;
133
- };
134
- "/auth/me": {
135
- parameters: {
136
- query?: never;
137
- header?: never;
138
- path?: never;
139
- cookie?: never;
140
- };
141
- /** Fetch the authenticated user profile */
142
- get: operations["getAuthenticatedUser"];
143
- put?: never;
144
- post?: never;
145
- delete?: never;
146
- options?: never;
147
- head?: never;
148
- patch?: never;
149
- trace?: never;
150
- };
151
- "/auth/customer-token": {
152
- parameters: {
153
- query?: never;
154
- header?: never;
155
- path?: never;
156
- cookie?: never;
157
- };
158
- get?: never;
159
- put?: never;
160
- /**
161
- * Mint a customer-scoped bearer token
162
- * @description Used by trusted backends to mint short-lived customer-scoped bearer tokens
163
- * for data-plane access (/responses, /runs). Requires a secret API key (mr_sk_*).
164
- * The customer must already exist; use /customers endpoints to create customers first.
165
- */
166
- post: operations["mintCustomerToken"];
167
- delete?: never;
168
- options?: never;
169
- head?: never;
170
- patch?: never;
171
- trace?: never;
172
- };
173
- "/auth/oidc/exchange": {
174
- parameters: {
175
- query?: never;
176
- header?: never;
177
- path?: never;
178
- cookie?: never;
179
- };
180
- get?: never;
181
- put?: never;
182
- /**
183
- * Exchange an OIDC id_token for a customer bearer token
184
- * @description Verifies a provided OIDC `id_token` using the project's configured OIDC settings,
185
- * resolves (provider, subject) to a customer via customer_identities, and returns
186
- * a short-lived customer-scoped bearer token for data-plane access.
187
- */
188
- post: operations["exchangeOidcToken"];
189
- delete?: never;
190
- options?: never;
191
- head?: never;
192
- patch?: never;
193
- trace?: never;
194
- };
195
- "/customers/claim": {
196
- parameters: {
197
- query?: never;
198
- header?: never;
199
- path?: never;
200
- cookie?: never;
201
- };
202
- get?: never;
203
- put?: never;
204
- /**
205
- * Link a customer identity to a customer by email
206
- * @description Used when a customer subscribes via Stripe Checkout (email only) and later authenticates to the app.
207
- * Links (provider, subject) to the existing customer record found by email.
208
- */
209
- post: operations["claimCustomer"];
210
- delete?: never;
211
- options?: never;
212
- head?: never;
213
- patch?: never;
214
- trace?: never;
215
- };
216
- "/customers": {
217
- parameters: {
218
- query?: never;
219
- header?: never;
220
- path?: never;
221
- cookie?: never;
222
- };
223
- /** List customers */
224
- get: operations["listCustomers"];
225
- /** Upsert a customer by external_id */
226
- put: operations["upsertCustomer"];
227
- /** Create a customer */
228
- post: operations["createProjectCustomer"];
229
- delete?: never;
230
- options?: never;
231
- head?: never;
232
- patch?: never;
233
- trace?: never;
234
- };
235
- "/customers/{customer_id}": {
236
- parameters: {
237
- query?: never;
238
- header?: never;
239
- path: {
240
- customer_id: string;
241
- };
242
- cookie?: never;
243
- };
244
- /** Get a customer */
245
- get: operations["getCustomer"];
246
- put?: never;
247
- post?: never;
248
- /** Delete a customer */
249
- delete: operations["deleteProjectCustomer"];
250
- options?: never;
251
- head?: never;
252
- patch?: never;
253
- trace?: never;
254
- };
255
- "/customers/{customer_id}/subscribe": {
256
- parameters: {
257
- query?: never;
258
- header?: never;
259
- path: {
260
- customer_id: string;
261
- };
262
- cookie?: never;
263
- };
264
- get?: never;
265
- put?: never;
266
- /** Create a customer subscription checkout session */
267
- post: operations["subscribeCustomer"];
268
- delete?: never;
269
- options?: never;
270
- head?: never;
271
- patch?: never;
272
- trace?: never;
273
- };
274
- "/customers/{customer_id}/subscription": {
275
- parameters: {
276
- query?: never;
277
- header?: never;
278
- path: {
279
- customer_id: string;
280
- };
281
- cookie?: never;
282
- };
283
- /** Get a customer's subscription */
284
- get: operations["getCustomerSubscription"];
285
- put?: never;
286
- post?: never;
287
- /** Cancel a customer's subscription */
288
- delete: operations["cancelCustomerSubscription"];
289
- options?: never;
290
- head?: never;
291
- patch?: never;
292
- trace?: never;
293
- };
294
- "/customers/{customer_id}/balance": {
295
- parameters: {
296
- query?: never;
297
- header?: never;
298
- path: {
299
- customer_id: string;
300
- };
301
- cookie?: never;
302
- };
303
- /** Get a customer's PAYGO balance */
304
- get: operations["getCustomerBalance"];
305
- put?: never;
306
- post?: never;
307
- delete?: never;
308
- options?: never;
309
- head?: never;
310
- patch?: never;
311
- trace?: never;
312
- };
313
- "/customers/{customer_id}/balance/history": {
314
- parameters: {
315
- query?: never;
316
- header?: never;
317
- path: {
318
- customer_id: string;
319
- };
320
- cookie?: never;
321
- };
322
- /** Get a customer's PAYGO ledger history */
323
- get: operations["getCustomerBalanceHistory"];
324
- put?: never;
325
- post?: never;
326
- delete?: never;
327
- options?: never;
328
- head?: never;
329
- patch?: never;
330
- trace?: never;
331
- };
332
- "/customers/{customer_id}/topup": {
333
- parameters: {
334
- query?: never;
335
- header?: never;
336
- path: {
337
- customer_id: string;
338
- };
339
- cookie?: never;
340
- };
341
- get?: never;
342
- put?: never;
343
- /** Create a PAYGO top-up checkout session for a customer */
344
- post: operations["createCustomerTopup"];
345
- delete?: never;
346
- options?: never;
347
- head?: never;
348
- patch?: never;
349
- trace?: never;
350
- };
351
- "/customers/me": {
352
- parameters: {
353
- query?: never;
354
- header?: never;
355
- path?: never;
356
- cookie?: never;
357
- };
358
- /**
359
- * Get the authenticated customer
360
- * @description Returns the current customer associated with the provided customer-scoped bearer token.
361
- * Includes the customer's subscription and tier when available.
362
- */
363
- get: operations["getCustomerMe"];
364
- put?: never;
365
- post?: never;
366
- delete?: never;
367
- options?: never;
368
- head?: never;
369
- patch?: never;
370
- trace?: never;
371
- };
372
- "/customers/me/usage": {
373
- parameters: {
374
- query?: never;
375
- header?: never;
376
- path?: never;
377
- cookie?: never;
378
- };
379
- /**
380
- * Get the authenticated customer's usage
381
- * @description Returns customer-visible usage metrics for the current billing window.
382
- * Includes request/token counts and (for paid tiers) remaining subscription credits.
383
- * Does not include any developer-private budgets (e.g., internal tier spend caps).
384
- */
385
- get: operations["getCustomerMeUsage"];
386
- put?: never;
387
- post?: never;
388
- delete?: never;
389
- options?: never;
390
- head?: never;
391
- patch?: never;
392
- trace?: never;
393
- };
394
- "/customers/me/subscription": {
395
- parameters: {
396
- query?: never;
397
- header?: never;
398
- path?: never;
399
- cookie?: never;
400
- };
401
- /**
402
- * Get the authenticated customer's subscription
403
- * @description Returns customer-visible subscription details for the authenticated customer bearer token.
404
- * Includes tier name and subscription price; does not include developer-private usage cost accounting.
405
- */
406
- get: operations["getCustomerMeSubscription"];
407
- put?: never;
408
- post?: never;
409
- delete?: never;
410
- options?: never;
411
- head?: never;
412
- patch?: never;
413
- trace?: never;
414
- };
415
- "/customers/me/balance": {
416
- parameters: {
417
- query?: never;
418
- header?: never;
419
- path?: never;
420
- cookie?: never;
421
- };
422
- /** Get the authenticated customer's PAYGO balance */
423
- get: operations["getCustomerMeBalance"];
424
- put?: never;
425
- post?: never;
426
- delete?: never;
427
- options?: never;
428
- head?: never;
429
- patch?: never;
430
- trace?: never;
431
- };
432
- "/customers/me/balance/history": {
433
- parameters: {
434
- query?: never;
435
- header?: never;
436
- path?: never;
437
- cookie?: never;
438
- };
439
- /** Get the authenticated customer's PAYGO ledger history */
440
- get: operations["getCustomerMeBalanceHistory"];
441
- put?: never;
442
- post?: never;
443
- delete?: never;
444
- options?: never;
445
- head?: never;
446
- patch?: never;
447
- trace?: never;
448
- };
449
- "/customers/me/topup": {
450
- parameters: {
451
- query?: never;
452
- header?: never;
453
- path?: never;
454
- cookie?: never;
455
- };
456
- get?: never;
457
- put?: never;
458
- /** Create a PAYGO top-up checkout session for the authenticated customer */
459
- post: operations["createCustomerMeTopup"];
460
- delete?: never;
461
- options?: never;
462
- head?: never;
463
- patch?: never;
464
- trace?: never;
465
- };
466
- "/customers/me/change-tier": {
467
- parameters: {
468
- query?: never;
469
- header?: never;
470
- path?: never;
471
- cookie?: never;
472
- };
473
- get?: never;
474
- put?: never;
475
- /**
476
- * Change the authenticated customer's subscription tier
477
- * @description Allows customers to upgrade or downgrade their subscription tier. Supports paid-to-paid (with proration), free-to-paid (requires payment method on file), paid-to-free (cancels at period end), and free-to-free transitions.
478
- */
479
- post: operations["changeCustomerMeTier"];
480
- delete?: never;
481
- options?: never;
482
- head?: never;
483
- patch?: never;
484
- trace?: never;
485
- };
486
- "/customers/me/checkout": {
487
- parameters: {
488
- query?: never;
489
- header?: never;
490
- path?: never;
491
- cookie?: never;
492
- };
493
- get?: never;
494
- put?: never;
495
- /**
496
- * Create a checkout session for the authenticated customer
497
- * @description Creates a Stripe checkout session using the customer-first flow. A Stripe Customer is created with the verified OAuth email before checkout, preventing email spoofing. The email field in the Stripe checkout will be locked to the authenticated user's email.
498
- */
499
- post: operations["createCustomerMeCheckout"];
500
- delete?: never;
501
- options?: never;
502
- head?: never;
503
- patch?: never;
504
- trace?: never;
505
- };
506
- "/models": {
507
- parameters: {
508
- query?: never;
509
- header?: never;
510
- path?: never;
511
- cookie?: never;
512
- };
513
- /**
514
- * List active models
515
- * @description Returns all active models with rich metadata for building model selectors.
516
- */
517
- get: operations["listModels"];
518
- put?: never;
519
- post?: never;
520
- delete?: never;
521
- options?: never;
522
- head?: never;
523
- patch?: never;
524
- trace?: never;
525
- };
526
- "/projects": {
527
- parameters: {
528
- query?: never;
529
- header?: never;
530
- path?: never;
531
- cookie?: never;
532
- };
533
- /** List projects for the authenticated owner */
534
- get: operations["listProjects"];
535
- put?: never;
536
- /** Create a project */
537
- post: operations["createProject"];
538
- delete?: never;
539
- options?: never;
540
- head?: never;
541
- patch?: never;
542
- trace?: never;
543
- };
544
- "/projects/{id}": {
545
- parameters: {
546
- query?: never;
547
- header?: never;
548
- path: {
549
- id: components["parameters"]["ProjectID"];
550
- };
551
- cookie?: never;
552
- };
553
- /** Get a project */
554
- get: operations["getProject"];
555
- /** Update a project */
556
- put: operations["updateProject"];
557
- post?: never;
558
- /** Delete a project */
559
- delete: operations["deleteProject"];
560
- options?: never;
561
- head?: never;
562
- patch?: never;
563
- trace?: never;
564
- };
565
- "/projects/{id}/tiers": {
566
- parameters: {
567
- query?: never;
568
- header?: never;
569
- path: {
570
- id: components["parameters"]["ProjectID"];
571
- };
572
- cookie?: never;
573
- };
574
- /** List tiers for a project */
575
- get: operations["listProjectTiers"];
576
- put?: never;
577
- /** Create a tier */
578
- post: operations["createTier"];
579
- delete?: never;
580
- options?: never;
581
- head?: never;
582
- patch?: never;
583
- trace?: never;
584
- };
585
- "/projects/{id}/tiers/{tier_id}": {
586
- parameters: {
587
- query?: never;
588
- header?: never;
589
- path: {
590
- id: components["parameters"]["ProjectID"];
591
- tier_id: string;
592
- };
593
- cookie?: never;
594
- };
595
- get?: never;
596
- /** Update a tier */
597
- put: operations["updateTier"];
598
- post?: never;
599
- /** Delete a tier */
600
- delete: operations["deleteTier"];
601
- options?: never;
602
- head?: never;
603
- patch?: never;
604
- trace?: never;
605
- };
606
- "/projects/{id}/customers": {
607
- parameters: {
608
- query?: never;
609
- header?: never;
610
- path: {
611
- id: components["parameters"]["ProjectID"];
612
- };
613
- cookie?: never;
614
- };
615
- /** List customers for a project */
616
- get: operations["listProjectCustomers"];
617
- put?: never;
618
- /** Create a customer */
619
- post: operations["createCustomer"];
620
- delete?: never;
621
- options?: never;
622
- head?: never;
623
- patch?: never;
624
- trace?: never;
625
- };
626
- "/projects/{id}/customers/{customer_id}": {
627
- parameters: {
628
- query?: never;
629
- header?: never;
630
- path: {
631
- id: components["parameters"]["ProjectID"];
632
- customer_id: string;
633
- };
634
- cookie?: never;
635
- };
636
- get?: never;
637
- put?: never;
638
- post?: never;
639
- /** Delete a customer */
640
- delete: operations["deleteCustomer"];
641
- options?: never;
642
- head?: never;
643
- patch?: never;
644
- trace?: never;
645
- };
646
- "/projects/{id}/webhooks": {
647
- parameters: {
648
- query?: never;
649
- header?: never;
650
- path: {
651
- id: components["parameters"]["ProjectID"];
652
- };
653
- cookie?: never;
654
- };
655
- /** List project webhooks */
656
- get: operations["listProjectWebhooks"];
657
- put?: never;
658
- /** Create a project webhook */
659
- post: operations["createProjectWebhook"];
660
- delete?: never;
661
- options?: never;
662
- head?: never;
663
- patch?: never;
664
- trace?: never;
665
- };
666
- "/projects/{id}/webhooks/{webhook_id}": {
667
- parameters: {
668
- query?: never;
669
- header?: never;
670
- path: {
671
- id: components["parameters"]["ProjectID"];
672
- webhook_id: components["parameters"]["WebhookID"];
673
- };
674
- cookie?: never;
675
- };
676
- /** Get a project webhook */
677
- get: operations["getProjectWebhook"];
678
- /** Update a project webhook */
679
- put: operations["updateProjectWebhook"];
680
- post?: never;
681
- /** Delete a project webhook */
682
- delete: operations["deleteProjectWebhook"];
683
- options?: never;
684
- head?: never;
685
- patch?: never;
686
- trace?: never;
687
- };
688
- "/projects/{id}/webhooks/{webhook_id}/test": {
689
- parameters: {
690
- query?: never;
691
- header?: never;
692
- path: {
693
- id: components["parameters"]["ProjectID"];
694
- webhook_id: components["parameters"]["WebhookID"];
695
- };
696
- cookie?: never;
697
- };
698
- get?: never;
699
- put?: never;
700
- /** Test a webhook */
701
- post: operations["testProjectWebhook"];
702
- delete?: never;
703
- options?: never;
704
- head?: never;
705
- patch?: never;
706
- trace?: never;
707
- };
708
- "/projects/{id}/webhooks/{webhook_id}/events": {
709
- parameters: {
710
- query?: never;
711
- header?: never;
712
- path: {
713
- id: components["parameters"]["ProjectID"];
714
- webhook_id: components["parameters"]["WebhookID"];
715
- };
716
- cookie?: never;
717
- };
718
- /** List webhook delivery events */
719
- get: operations["listProjectWebhookEvents"];
720
- put?: never;
721
- post?: never;
722
- delete?: never;
723
- options?: never;
724
- head?: never;
725
- patch?: never;
726
- trace?: never;
727
- };
728
- "/responses": {
729
- parameters: {
730
- query?: never;
731
- header?: never;
732
- path?: never;
733
- cookie?: never;
734
- };
735
- get?: never;
736
- put?: never;
737
- /**
738
- * Create a response via the provider-agnostic API
739
- * @description Creates a model response. Auth accepts secret API keys or bearer tokens. Bearer tokens may be owner session tokens (dashboard/server) or end-user tokens; publishable keys are not allowed.
740
- */
741
- post: operations["createResponse"];
742
- delete?: never;
743
- options?: never;
744
- head?: never;
745
- patch?: never;
746
- trace?: never;
747
- };
748
- "/responses:batch": {
749
- parameters: {
750
- query?: never;
751
- header?: never;
752
- path?: never;
753
- cookie?: never;
754
- };
755
- get?: never;
756
- put?: never;
757
- /** Create multiple responses concurrently (batch) */
758
- post: operations["createResponsesBatch"];
759
- delete?: never;
760
- options?: never;
761
- head?: never;
762
- patch?: never;
763
- trace?: never;
764
- };
765
- "/images/generate": {
766
- parameters: {
767
- query?: never;
768
- header?: never;
769
- path?: never;
770
- cookie?: never;
771
- };
772
- get?: never;
773
- put?: never;
774
- /**
775
- * Generate images from a text prompt
776
- * @description Generate images using AI models. Returns URLs by default (requires storage configuration) or base64-encoded data when response_format is 'b64_json'.
777
- */
778
- post: operations["generateImage"];
779
- delete?: never;
780
- options?: never;
781
- head?: never;
782
- patch?: never;
783
- trace?: never;
784
- };
785
- "/images/{image_id}": {
786
- parameters: {
787
- query?: never;
788
- header?: never;
789
- path: {
790
- /** @description Image ID */
791
- image_id: string;
792
- };
793
- cookie?: never;
794
- };
795
- /**
796
- * Get image details
797
- * @description Retrieve information about a specific image, including its pinned status and URL.
798
- */
799
- get: operations["getImage"];
800
- put?: never;
801
- post?: never;
802
- delete?: never;
803
- options?: never;
804
- head?: never;
805
- patch?: never;
806
- trace?: never;
807
- };
808
- "/images/{image_id}/pin": {
809
- parameters: {
810
- query?: never;
811
- header?: never;
812
- path: {
813
- /** @description Image ID */
814
- image_id: string;
815
- };
816
- cookie?: never;
817
- };
818
- get?: never;
819
- put?: never;
820
- /**
821
- * Pin an image
822
- * @description Pin an image to prevent it from expiring. Pinned images remain accessible permanently (subject to tier limits).
823
- */
824
- post: operations["pinImage"];
825
- /**
826
- * Unpin an image
827
- * @description Unpin an image, setting it to expire after the default ephemeral period (7 days).
828
- */
829
- delete: operations["unpinImage"];
830
- options?: never;
831
- head?: never;
832
- patch?: never;
833
- trace?: never;
834
- };
835
- "/runs": {
836
- parameters: {
837
- query?: never;
838
- header?: never;
839
- path?: never;
840
- cookie?: never;
841
- };
842
- get?: never;
843
- put?: never;
844
- /**
845
- * Start a workflow run (workflow.v0 or workflow.v1)
846
- * @description Starts a run for a `workflow.v0` or `workflow.v1` spec and returns a `run_id`. Auth matches `/responses` (API key or frontend bearer token). Session owner tokens from `/auth/login` are not accepted. Provide `session_id` to link the run to a session; when linked, assistant messages are appended to the session on completion.
847
- */
848
- post: operations["createRun"];
849
- delete?: never;
850
- options?: never;
851
- head?: never;
852
- patch?: never;
853
- trace?: never;
854
- };
855
- "/runs/{run_id}": {
856
- parameters: {
857
- query?: never;
858
- header?: never;
859
- path: {
860
- run_id: string;
861
- };
862
- cookie?: never;
863
- };
864
- /**
865
- * Get a derived run snapshot
866
- * @description Returns a derived snapshot state for the run (folded from event history + artifacts), including outputs and an aggregated cost summary when available.
867
- */
868
- get: operations["getRun"];
869
- put?: never;
870
- post?: never;
871
- delete?: never;
872
- options?: never;
873
- head?: never;
874
- patch?: never;
875
- trace?: never;
876
- };
877
- "/runs/{run_id}/events": {
878
- parameters: {
879
- query?: {
880
- /** @description Returns events where `seq > after_seq`. */
881
- after_seq?: number;
882
- /** @description When false, returns currently available events then closes. */
883
- wait?: boolean;
884
- /** @description Maximum number of events to send before closing. */
885
- limit?: number;
886
- };
887
- header?: never;
888
- path: {
889
- run_id: string;
890
- };
891
- cookie?: never;
892
- };
893
- /**
894
- * Stream run events (append-only)
895
- * @description Streams an append-only, totally ordered history for the run. The wire format is negotiated via `Accept`: NDJSON (`application/x-ndjson`) or Server-Sent Events (`text/event-stream`). Each line/event is a `run_event.v0` envelope; see `/schemas/run_event_v0.schema.json` for the canonical schema.
896
- */
897
- get: operations["streamRunEvents"];
898
- put?: never;
899
- post?: never;
900
- delete?: never;
901
- options?: never;
902
- head?: never;
903
- patch?: never;
904
- trace?: never;
905
- };
906
- "/sessions": {
907
- parameters: {
908
- query?: never;
909
- header?: never;
910
- path?: never;
911
- cookie?: never;
912
- };
913
- /**
914
- * List sessions
915
- * @description Returns a paginated list of sessions for the project.
916
- */
917
- get: operations["listSessions"];
918
- put?: never;
919
- /**
920
- * Create a new session
921
- * @description Creates a new session for multi-turn conversation management. Sessions persist message history on the server for cross-device continuity.
922
- */
923
- post: operations["createSession"];
924
- delete?: never;
925
- options?: never;
926
- head?: never;
927
- patch?: never;
928
- trace?: never;
929
- };
930
- "/sessions/{session_id}": {
931
- parameters: {
932
- query?: never;
933
- header?: never;
934
- path: {
935
- session_id: string;
936
- };
937
- cookie?: never;
938
- };
939
- /**
940
- * Get session with messages
941
- * @description Returns a session including its full message history.
942
- */
943
- get: operations["getSession"];
944
- put?: never;
945
- post?: never;
946
- /**
947
- * Delete a session
948
- * @description Deletes a session and all its messages. Requires a secret API key (mr_sk_*).
949
- */
950
- delete: operations["deleteSession"];
951
- options?: never;
952
- head?: never;
953
- /**
954
- * Update session metadata
955
- * @description Updates session metadata. Keys with null values are removed.
956
- */
957
- patch: operations["updateSession"];
958
- trace?: never;
959
- };
960
- "/sessions/{session_id}/messages": {
961
- parameters: {
962
- query?: never;
963
- header?: never;
964
- path: {
965
- session_id: string;
966
- };
967
- cookie?: never;
968
- };
969
- get?: never;
970
- put?: never;
971
- /**
972
- * Append a session message
973
- * @description Appends a message to an existing session.
974
- */
975
- post: operations["addSessionMessage"];
976
- delete?: never;
977
- options?: never;
978
- head?: never;
979
- patch?: never;
980
- trace?: never;
981
- };
982
- "/projects/{id}/tool-hooks": {
983
- parameters: {
984
- query?: never;
985
- header?: never;
986
- path: {
987
- id: components["parameters"]["ProjectID"];
988
- };
989
- cookie?: never;
990
- };
991
- /** List project tool hooks */
992
- get: operations["listProjectToolHooks"];
993
- put?: never;
994
- /** Create a project tool hook */
995
- post: operations["createProjectToolHook"];
996
- delete?: never;
997
- options?: never;
998
- head?: never;
999
- patch?: never;
1000
- trace?: never;
1001
- };
1002
- "/projects/{id}/tool-hooks/{hook_id}": {
1003
- parameters: {
1004
- query?: never;
1005
- header?: never;
1006
- path: {
1007
- id: components["parameters"]["ProjectID"];
1008
- hook_id: components["parameters"]["ToolHookID"];
1009
- };
1010
- cookie?: never;
1011
- };
1012
- /** Get a project tool hook */
1013
- get: operations["getProjectToolHook"];
1014
- /** Update a project tool hook */
1015
- put: operations["updateProjectToolHook"];
1016
- post?: never;
1017
- /** Delete a project tool hook */
1018
- delete: operations["deleteProjectToolHook"];
1019
- options?: never;
1020
- head?: never;
1021
- patch?: never;
1022
- trace?: never;
1023
- };
1024
- "/projects/{id}/tool-hooks/{hook_id}/events": {
1025
- parameters: {
1026
- query?: never;
1027
- header?: never;
1028
- path: {
1029
- id: components["parameters"]["ProjectID"];
1030
- hook_id: components["parameters"]["ToolHookID"];
1031
- };
1032
- cookie?: never;
1033
- };
1034
- /** List tool hook delivery events */
1035
- get: operations["listProjectToolHookEvents"];
1036
- put?: never;
1037
- post?: never;
1038
- delete?: never;
1039
- options?: never;
1040
- head?: never;
1041
- patch?: never;
1042
- trace?: never;
1043
- };
1044
- "/projects/{id}/tool-hooks/{hook_id}/test": {
1045
- parameters: {
1046
- query?: never;
1047
- header?: never;
1048
- path: {
1049
- id: components["parameters"]["ProjectID"];
1050
- hook_id: components["parameters"]["ToolHookID"];
1051
- };
1052
- cookie?: never;
1053
- };
1054
- get?: never;
1055
- put?: never;
1056
- /** Test a tool hook */
1057
- post: operations["testProjectToolHook"];
1058
- delete?: never;
1059
- options?: never;
1060
- head?: never;
1061
- patch?: never;
1062
- trace?: never;
1063
- };
1064
- "/sessions/{session_id}/clear": {
1065
- parameters: {
1066
- query?: never;
1067
- header?: never;
1068
- path: {
1069
- session_id: string;
1070
- };
1071
- cookie?: never;
1072
- };
1073
- get?: never;
1074
- put?: never;
1075
- /**
1076
- * Clear session messages
1077
- * @description Deletes all messages in the session and returns the updated session.
1078
- */
1079
- post: operations["clearSession"];
1080
- delete?: never;
1081
- options?: never;
1082
- head?: never;
1083
- patch?: never;
1084
- trace?: never;
1085
- };
1086
- }
1087
- type webhooks = Record<string, never>;
1088
- interface components {
1089
- schemas: {
1090
- /**
1091
- * @description Billing mode for a project. 'managed' uses ModelRelay billing with tiers and subscriptions. 'byob' (Bring Your Own Billing) allows external billing.
1092
- * @enum {string}
1093
- */
1094
- BillingMode: "managed" | "byob";
1095
- /**
1096
- * @description Billing mode for a tier. 'subscription' uses monthly spend limits; 'paygo' uses prepaid balances.
1097
- * @enum {string}
1098
- */
1099
- TierBillingMode: "subscription" | "paygo";
1100
- AuthTokens: {
1101
- access_token?: string;
1102
- refresh_token?: string;
1103
- /** Format: date-time */
1104
- expires_at?: string;
1105
- };
1106
- AuthResponse: {
1107
- user?: components["schemas"]["User"];
1108
- tokens?: components["schemas"]["AuthTokens"];
1109
- access_token?: string;
1110
- refresh_token?: string;
1111
- };
1112
- User: {
1113
- /** Format: uuid */
1114
- id?: string;
1115
- /** Format: email */
1116
- email?: string;
1117
- /** Format: uuid */
1118
- project_id?: string;
1119
- };
1120
- Project: {
1121
- /** Format: uuid */
1122
- id?: string;
1123
- /** Format: uuid */
1124
- owner_id?: string;
1125
- name?: string;
1126
- description?: string;
1127
- markup_percentage?: number;
1128
- billing_mode?: components["schemas"]["BillingMode"];
1129
- /** Format: uuid */
1130
- customer_auto_provision_tier_id?: string;
1131
- customer_oauth_providers?: ("github" | "google")[];
1132
- oidc_enabled?: boolean;
1133
- oidc_issuer?: string;
1134
- oidc_audiences?: string[];
1135
- oidc_jwks_url?: string;
1136
- oidc_subject_claim?: string;
1137
- /** Format: date-time */
1138
- created_at?: string;
1139
- /** Format: date-time */
1140
- updated_at?: string;
1141
- };
1142
- /**
1143
- * @description Billing interval for a tier.
1144
- * @enum {string}
1145
- */
1146
- PriceInterval: "month" | "year";
1147
- TierModel: {
1148
- /** Format: uuid */
1149
- id: string;
1150
- /** Format: uuid */
1151
- tier_id: string;
1152
- model_id: components["schemas"]["ModelId"];
1153
- /** @description Human-friendly model name resolved from pricing (e.g., 'GPT-4o Mini') */
1154
- model_display_name: string;
1155
- /** @description Human-friendly description of what the model is good at */
1156
- description: string;
1157
- /** @description Workflow-critical capability flags for the model */
1158
- capabilities: components["schemas"]["ModelCapability"][];
1159
- /**
1160
- * Format: int32
1161
- * @description Maximum supported context window in tokens (if known)
1162
- */
1163
- context_window: number;
1164
- /**
1165
- * Format: int32
1166
- * @description Maximum supported output tokens (if known)
1167
- */
1168
- max_output_tokens: number;
1169
- /** @description Whether the model is deprecated */
1170
- deprecated: boolean;
1171
- /**
1172
- * Format: int64
1173
- * @description Provider input cost in cents per million tokens. Customer price is derived as cost * (1 + platformFeePercent/100).
1174
- */
1175
- model_input_cost_cents: number;
1176
- /**
1177
- * Format: int64
1178
- * @description Provider output cost in cents per million tokens. Customer price is derived as cost * (1 + platformFeePercent/100).
1179
- */
1180
- model_output_cost_cents: number;
1181
- /** @description Whether this is the default model for the tier */
1182
- is_default: boolean;
1183
- /** Format: date-time */
1184
- created_at: string;
1185
- /** Format: date-time */
1186
- updated_at: string;
1187
- };
1188
- /** @description Model to add to a tier. Pricing is derived from the model_pricing table. */
1189
- TierModelCreate: {
1190
- model_id: components["schemas"]["ModelId"];
1191
- /** @default false */
1192
- is_default: boolean;
1193
- };
1194
- Tier: {
1195
- /** Format: uuid */
1196
- id?: string;
1197
- /** Format: uuid */
1198
- project_id?: string;
1199
- tier_code?: components["schemas"]["TierCode"];
1200
- /** @description Human-readable tier name */
1201
- display_name?: string;
1202
- /**
1203
- * Format: uint64
1204
- * @description Monthly spend limit in cents (e.g., 2000 = $20/month). Must be non-negative.
1205
- */
1206
- spend_limit_cents?: number;
1207
- billing_mode?: components["schemas"]["TierBillingMode"];
1208
- models?: components["schemas"]["TierModel"][];
1209
- billing_provider?: components["schemas"]["BillingProvider"];
1210
- /** @description Billing provider price reference for this tier */
1211
- billing_price_ref?: string;
1212
- /**
1213
- * Format: uint64
1214
- * @description Subscription price amount in cents
1215
- */
1216
- price_amount_cents?: number;
1217
- /** @description Currency code for the price (e.g., 'usd') */
1218
- price_currency?: string;
1219
- price_interval?: components["schemas"]["PriceInterval"];
1220
- /**
1221
- * Format: uint32
1222
- * @description Number of trial days for new subscriptions
1223
- */
1224
- trial_days?: number;
1225
- /** Format: date-time */
1226
- created_at?: string;
1227
- /** Format: date-time */
1228
- updated_at?: string;
1229
- };
1230
- TierCreate: {
1231
- tier_code: components["schemas"]["TierCode"];
1232
- /** @description Human-readable tier name */
1233
- display_name: string;
1234
- /**
1235
- * Format: uint64
1236
- * @description Monthly spend limit in cents (e.g., 2000 = $20/month). Must be non-negative.
1237
- */
1238
- spend_limit_cents: number;
1239
- billing_mode?: components["schemas"]["TierBillingMode"];
1240
- models: components["schemas"]["TierModelCreate"][];
1241
- billing_provider?: components["schemas"]["BillingProvider"];
1242
- /**
1243
- * Format: uint64
1244
- * @description Subscription price amount in cents (paid tiers)
1245
- */
1246
- price_amount_cents?: number;
1247
- price_interval?: components["schemas"]["PriceInterval"];
1248
- /**
1249
- * Format: uint32
1250
- * @description Number of trial days for new subscriptions (paid tiers)
1251
- */
1252
- trial_days?: number;
1253
- };
1254
- TierUpdate: {
1255
- tier_code: components["schemas"]["TierCode"];
1256
- /** @description Human-readable tier name */
1257
- display_name: string;
1258
- /**
1259
- * Format: uint64
1260
- * @description Monthly spend limit in cents (e.g., 2000 = $20/month). Must be non-negative.
1261
- */
1262
- spend_limit_cents: number;
1263
- models?: components["schemas"]["TierModelCreate"][];
1264
- billing_provider?: components["schemas"]["BillingProvider"];
1265
- /**
1266
- * Format: uint64
1267
- * @description Subscription price amount in cents (paid tiers)
1268
- */
1269
- price_amount_cents?: number;
1270
- price_interval?: components["schemas"]["PriceInterval"];
1271
- /**
1272
- * Format: uint32
1273
- * @description Number of trial days for new subscriptions (paid tiers)
1274
- */
1275
- trial_days?: number;
1276
- };
1277
- /** @description Arbitrary customer metadata (max 10KB). Keys are limited to 40 characters. Values can be any JSON type. Nesting depth limited to 5 levels. */
1278
- CustomerMetadata: {
1279
- [key: string]: unknown;
1280
- };
1281
- /**
1282
- * @description Subscription status (active, past_due, canceled, etc.)
1283
- * @enum {string}
1284
- */
1285
- SubscriptionStatusKind: "active" | "trialing" | "past_due" | "canceled" | "unpaid" | "incomplete" | "incomplete_expired" | "paused";
1286
- /**
1287
- * @description Billing provider backing the subscription or tier.
1288
- * @enum {string}
1289
- */
1290
- BillingProvider: "stripe" | "crypto" | "app_store" | "external";
1291
- Customer: {
1292
- /** Format: uuid */
1293
- id?: string;
1294
- /** Format: uuid */
1295
- project_id?: string;
1296
- /** @description External customer identifier from your system */
1297
- external_id?: string;
1298
- /**
1299
- * Format: email
1300
- * @description Customer email address
1301
- */
1302
- email?: string;
1303
- metadata?: components["schemas"]["CustomerMetadata"];
1304
- /** Format: date-time */
1305
- created_at?: string;
1306
- /** Format: date-time */
1307
- updated_at?: string;
1308
- };
1309
- Subscription: {
1310
- /** Format: uuid */
1311
- id?: string;
1312
- /** Format: uuid */
1313
- project_id?: string;
1314
- /** Format: uuid */
1315
- customer_id?: string;
1316
- /** Format: uuid */
1317
- tier_id?: string;
1318
- tier_code?: components["schemas"]["TierCode"];
1319
- billing_provider?: components["schemas"]["BillingProvider"];
1320
- /** @description Billing subscription ID from the provider */
1321
- billing_subscription_id?: string;
1322
- subscription_status?: components["schemas"]["SubscriptionStatusKind"];
1323
- /**
1324
- * Format: date-time
1325
- * @description Start of the current billing period
1326
- */
1327
- current_period_start?: string;
1328
- /**
1329
- * Format: date-time
1330
- * @description End of the current billing period
1331
- */
1332
- current_period_end?: string;
1333
- /** Format: date-time */
1334
- created_at?: string;
1335
- /** Format: date-time */
1336
- updated_at?: string;
1337
- };
1338
- CustomerWithSubscription: {
1339
- customer: components["schemas"]["Customer"];
1340
- subscription?: components["schemas"]["Subscription"];
1341
- /** @description Billing provider customer ID (e.g., Stripe customer ID) */
1342
- billing_customer_id?: string;
1343
- };
1344
- CustomerMe: {
1345
- customer: components["schemas"]["Customer"];
1346
- subscription?: components["schemas"]["Subscription"];
1347
- tier?: components["schemas"]["Tier"];
1348
- };
1349
- CustomerMeResponse: {
1350
- customer: components["schemas"]["CustomerMe"];
1351
- };
1352
- CustomerUsagePoint: {
1353
- /**
1354
- * Format: date-time
1355
- * @description UTC day bucket
1356
- */
1357
- day: string;
1358
- /** Format: int64 */
1359
- requests: number;
1360
- /** Format: int64 */
1361
- tokens: number;
1362
- /** Format: int64 */
1363
- images?: number;
1364
- /**
1365
- * Format: int64
1366
- * @description Credits used in this day bucket (only for paid tiers)
1367
- */
1368
- credits_used_cents?: number;
1369
- };
1370
- /** @description Customer-visible usage metrics for the current billing window. */
1371
- CustomerMeUsage: {
1372
- /**
1373
- * Format: date-time
1374
- * @description Start of the current billing window
1375
- */
1376
- window_start: string;
1377
- /**
1378
- * Format: date-time
1379
- * @description End of the current billing window
1380
- */
1381
- window_end: string;
1382
- /** Format: int64 */
1383
- requests: number;
1384
- /** Format: int64 */
1385
- tokens: number;
1386
- /** Format: int64 */
1387
- images: number;
1388
- /**
1389
- * Format: int64
1390
- * @description Credits granted for this billing window (only for paid tiers)
1391
- */
1392
- credits_granted_cents?: number;
1393
- /**
1394
- * Format: int64
1395
- * @description Credits used so far in this billing window (only for paid tiers)
1396
- */
1397
- credits_used_cents?: number;
1398
- /**
1399
- * Format: int64
1400
- * @description Credits remaining in this billing window (only for paid tiers)
1401
- */
1402
- credits_remaining_cents?: number;
1403
- /**
1404
- * Format: float
1405
- * @description Percentage of granted credits used (only for paid tiers)
1406
- */
1407
- percentage_used?: number;
1408
- /** @description Whether remaining credits are low (only for paid tiers) */
1409
- low?: boolean;
1410
- /**
1411
- * Format: int64
1412
- * @description PAYGO wallet balance in cents (available when PAYGO wallet is enabled)
1413
- */
1414
- wallet_balance_cents?: number;
1415
- /**
1416
- * Format: int64
1417
- * @description PAYGO wallet reserved amount in cents
1418
- */
1419
- wallet_reserved_cents?: number;
1420
- /** @description True when PAYGO wallet can cover subscription overages */
1421
- overage_enabled?: boolean;
1422
- daily: components["schemas"]["CustomerUsagePoint"][];
1423
- };
1424
- CustomerMeUsageResponse: {
1425
- usage: components["schemas"]["CustomerMeUsage"];
1426
- };
1427
- /** @description Customer-visible subscription details for the current tier. */
1428
- CustomerMeSubscription: {
1429
- tier_code: components["schemas"]["TierCode"];
1430
- /** @description Human-readable tier name */
1431
- tier_display_name: string;
1432
- /**
1433
- * Format: int64
1434
- * @description Subscription price amount in cents (omitted for free tiers)
1435
- */
1436
- price_amount_cents?: number;
1437
- /** @description Currency code for the price (e.g., 'usd') */
1438
- price_currency?: string;
1439
- price_interval?: components["schemas"]["PriceInterval"];
1440
- subscription_status?: components["schemas"]["SubscriptionStatusKind"];
1441
- /**
1442
- * Format: date-time
1443
- * @description Start of the current billing period
1444
- */
1445
- current_period_start?: string;
1446
- /**
1447
- * Format: date-time
1448
- * @description End of the current billing period
1449
- */
1450
- current_period_end?: string;
1451
- };
1452
- CustomerMeSubscriptionResponse: {
1453
- subscription: components["schemas"]["CustomerMeSubscription"];
1454
- };
1455
- CustomerBalanceResponse: {
1456
- /** Format: uuid */
1457
- customer_id: string;
1458
- /** Format: int64 */
1459
- balance_cents: number;
1460
- /** Format: int64 */
1461
- reserved_cents: number;
1462
- currency: string;
1463
- };
1464
- CustomerLedgerEntry: {
1465
- /** Format: uuid */
1466
- id: string;
1467
- direction: string;
1468
- reason: string;
1469
- /** Format: int64 */
1470
- amount_cents: number;
1471
- /** Format: int64 */
1472
- balance_after_cents?: number;
1473
- description: string;
1474
- stripe_payment_intent_id?: string;
1475
- stripe_invoice_id?: string;
1476
- stripe_checkout_session_id?: string;
1477
- /** Format: int64 */
1478
- gross_amount_cents?: number;
1479
- /** Format: int64 */
1480
- credit_amount_cents?: number;
1481
- /** Format: int64 */
1482
- owner_revenue_cents?: number;
1483
- /** Format: int64 */
1484
- platform_fee_cents?: number;
1485
- model_id?: components["schemas"]["ModelId"];
1486
- /** Format: int64 */
1487
- input_tokens?: number;
1488
- /** Format: int64 */
1489
- output_tokens?: number;
1490
- /** Format: uuid */
1491
- request_id?: string;
1492
- /** Format: date-time */
1493
- occurred_at: string;
1494
- };
1495
- CustomerLedgerResponse: {
1496
- entries: components["schemas"]["CustomerLedgerEntry"][];
1497
- };
1498
- ChangeTierRequest: {
1499
- /** @description The tier code to switch to */
1500
- tier_code: string;
1501
- };
1502
- CustomerMeCheckoutRequest: {
1503
- /** @description The tier code to subscribe to */
1504
- tier_code: string;
1505
- /**
1506
- * Format: uri
1507
- * @description URL to redirect to after successful checkout
1508
- */
1509
- success_url: string;
1510
- /**
1511
- * Format: uri
1512
- * @description URL to redirect to if checkout is cancelled
1513
- */
1514
- cancel_url: string;
1515
- };
1516
- CustomerTopupRequest: {
1517
- /** Format: int64 */
1518
- credit_amount_cents: number;
1519
- /** Format: uri */
1520
- success_url: string;
1521
- /** Format: uri */
1522
- cancel_url: string;
1523
- };
1524
- CustomerTopupResponse: {
1525
- session_id: string;
1526
- /** Format: uri */
1527
- checkout_url: string;
1528
- /** Format: int64 */
1529
- gross_amount_cents: number;
1530
- /** Format: int64 */
1531
- credit_amount_cents: number;
1532
- /** Format: int64 */
1533
- owner_revenue_cents: number;
1534
- /** Format: int64 */
1535
- platform_fee_cents: number;
1536
- status: string;
1537
- };
1538
- CustomerCreate: {
1539
- /** @description External customer identifier from your system */
1540
- external_id: string;
1541
- /**
1542
- * Format: email
1543
- * @description Customer email address
1544
- */
1545
- email: string;
1546
- metadata?: components["schemas"]["CustomerMetadata"];
1547
- };
1548
- /** @enum {string} */
1549
- MessageRole: "system" | "user" | "assistant" | "tool";
1550
- ContentPart: {
1551
- /** @enum {string} */
1552
- type: "text";
1553
- text?: string;
1554
- };
1555
- InputItem: {
1556
- /** @enum {string} */
1557
- type: "message";
1558
- role?: components["schemas"]["MessageRole"];
1559
- content?: components["schemas"]["ContentPart"][];
1560
- tool_calls?: components["schemas"]["ToolCall"][];
1561
- tool_call_id?: components["schemas"]["ToolCallId"];
1562
- };
1563
- OutputItem: {
1564
- /** @enum {string} */
1565
- type: "message";
1566
- role?: components["schemas"]["MessageRole"];
1567
- content?: components["schemas"]["ContentPart"][];
1568
- tool_calls?: components["schemas"]["ToolCall"][];
1569
- };
1570
- JSONSchemaFormat: {
1571
- name: string;
1572
- description?: string;
1573
- schema?: {
1574
- [key: string]: unknown;
1575
- };
1576
- strict?: boolean;
1577
- };
1578
- OutputFormat: {
1579
- /** @enum {string} */
1580
- type: "text" | "json_schema";
1581
- json_schema?: components["schemas"]["JSONSchemaFormat"];
1582
- };
1583
- Tool: {
1584
- /** @enum {string} */
1585
- type: "function" | "web" | "x_search" | "code_execution" | "image_generation";
1586
- function?: {
1587
- name?: components["schemas"]["ToolName"];
1588
- description?: string;
1589
- parameters?: {
1590
- [key: string]: unknown;
1591
- };
1592
- };
1593
- web?: {
1594
- [key: string]: unknown;
1595
- };
1596
- x_search?: {
1597
- [key: string]: unknown;
1598
- };
1599
- code_execution?: {
1600
- [key: string]: unknown;
1601
- };
1602
- /** @description Configuration for server-side image generation tool */
1603
- image_generation?: {
1604
- /** @description Image generation model ID (e.g., gemini-2.5-flash-image) */
1605
- model: string;
1606
- };
1607
- };
1608
- ToolChoice: {
1609
- /** @enum {string} */
1610
- type: "auto" | "required" | "none";
1611
- function?: components["schemas"]["ToolName"];
1612
- };
1613
- ResponsesRequest: {
1614
- provider?: components["schemas"]["ProviderId"];
1615
- model?: components["schemas"]["ModelId"];
1616
- input: components["schemas"]["InputItem"][];
1617
- output_format?: components["schemas"]["OutputFormat"];
1618
- /** Format: uint32 */
1619
- max_output_tokens?: number;
1620
- temperature?: number;
1621
- stop?: string[];
1622
- tools?: components["schemas"]["Tool"][];
1623
- tool_choice?: components["schemas"]["ToolChoice"];
1624
- };
1625
- ResponsesResponse: {
1626
- /** @description Response identifier from the provider */
1627
- id: string;
1628
- output: components["schemas"]["OutputItem"][];
1629
- model: components["schemas"]["ModelId"];
1630
- provider?: components["schemas"]["ProviderId"];
1631
- /** @description Why generation stopped (stop, max_tokens, tool_use, etc.) */
1632
- stop_reason?: string;
1633
- usage: components["schemas"]["Usage"];
1634
- /** @description Sources from web search results */
1635
- citations?: components["schemas"]["Citation"][];
1636
- };
1637
- JSONPatchOperation: {
1638
- /** @enum {string} */
1639
- op: "add" | "remove" | "replace" | "move" | "copy" | "test";
1640
- path: string;
1641
- from?: string;
1642
- value?: {
1643
- [key: string]: unknown;
1644
- };
1645
- };
1646
- ResponsesStreamEnvelope: {
1647
- /** @enum {string} */
1648
- type: "start" | "update" | "completion" | "error" | "keepalive" | "tool_use_start" | "tool_use_delta" | "tool_use_stop";
1649
- /** @enum {string} */
1650
- stream_mode?: "text-delta" | "structured-patch";
1651
- /** @enum {string} */
1652
- stream_version?: "v2";
1653
- delta?: string;
1654
- content?: string;
1655
- patch?: components["schemas"]["JSONPatchOperation"][];
1656
- payload?: {
1657
- [key: string]: unknown;
1658
- };
1659
- complete_fields?: string[];
1660
- code?: string;
1661
- message?: string;
1662
- status?: number;
1663
- request_id?: string;
1664
- provider?: components["schemas"]["ProviderId"];
1665
- model?: components["schemas"]["ModelId"];
1666
- stop_reason?: string;
1667
- usage?: components["schemas"]["Usage"];
1668
- };
1669
- ResponsesBatchRequest: {
1670
- requests: components["schemas"]["ResponsesRequest"][];
1671
- options?: {
1672
- /** Format: uint32 */
1673
- max_parallelism?: number;
1674
- abort_on_error?: boolean;
1675
- };
1676
- };
1677
- ResponsesBatchError: {
1678
- status: number;
1679
- message: string;
1680
- /** @description Raw error details from the provider */
1681
- detail?: string;
1682
- code?: string;
1683
- };
1684
- ResponsesBatchResult: {
1685
- /** Format: uint32 */
1686
- index: number;
1687
- ok: boolean;
1688
- response?: components["schemas"]["ResponsesResponse"];
1689
- error?: components["schemas"]["ResponsesBatchError"];
1690
- };
1691
- ResponsesBatchResponse: {
1692
- results: components["schemas"]["ResponsesBatchResult"][];
1693
- request_id?: string;
1694
- };
1695
- /** @description A `workflow.v0` spec. The canonical JSON Schema is available at `/schemas/workflow_v0.schema.json`. */
1696
- WorkflowSpecV0: {
1697
- [key: string]: unknown;
1698
- };
1699
- /** @description A `workflow.v1` spec. The canonical JSON Schema is available at `/schemas/workflow_v1.schema.json`. */
1700
- WorkflowSpecV1: {
1701
- [key: string]: unknown;
1702
- };
1703
- RunsCreateOptionsV0: {
1704
- idempotency_key?: string;
1705
- };
1706
- RunsCreateRequest: {
1707
- spec: components["schemas"]["WorkflowSpecV0"] | components["schemas"]["WorkflowSpecV1"];
1708
- /**
1709
- * Format: uuid
1710
- * @description Optional session ID to link this run to a session.
1711
- */
1712
- session_id?: string;
1713
- /** @description Runtime inputs for the workflow. Required when the spec uses from_input references (e.g., map.fanout with items.from_input). Each key is the input name, and the value is the JSON data to provide. */
1714
- input?: {
1715
- [key: string]: unknown;
1716
- };
1717
- options?: components["schemas"]["RunsCreateOptionsV0"];
1718
- };
1719
- /** @enum {string} */
1720
- RunStatusV0: "running" | "waiting" | "succeeded" | "failed" | "canceled";
1721
- RunsCreateResponse: {
1722
- run_id: components["schemas"]["RunId"];
1723
- status: components["schemas"]["RunStatusV0"];
1724
- plan_hash: components["schemas"]["PlanHash"];
1725
- };
1726
- /** @enum {string} */
1727
- NodeStatusV0: "pending" | "running" | "waiting" | "succeeded" | "failed" | "canceled";
1728
- NodeErrorV0: {
1729
- code?: string;
1730
- message: string;
1731
- /** @description Raw error details from the provider */
1732
- detail?: string;
1733
- };
1734
- NodeResultV0: {
1735
- id: components["schemas"]["NodeId"];
1736
- type: components["schemas"]["NodeTypeV0"];
1737
- status: components["schemas"]["NodeStatusV0"];
1738
- /** Format: date-time */
1739
- started_at?: string;
1740
- /** Format: date-time */
1741
- ended_at?: string;
1742
- output?: {
1743
- [key: string]: unknown;
1744
- };
1745
- error?: components["schemas"]["NodeErrorV0"];
1746
- };
1747
- RunCostLineItemV0: {
1748
- provider_id: components["schemas"]["ProviderId"];
1749
- model: components["schemas"]["ModelId"];
1750
- /** Format: uint64 */
1751
- requests: number;
1752
- /** Format: uint64 */
1753
- input_tokens: number;
1754
- /** Format: uint64 */
1755
- output_tokens: number;
1756
- /** Format: uint64 */
1757
- usd_cents: number;
1758
- };
1759
- RunCostSummaryV0: {
1760
- /** Format: uint64 */
1761
- total_usd_cents: number;
1762
- line_items?: components["schemas"]["RunCostLineItemV0"][];
1763
- };
1764
- RunsGetResponse: {
1765
- run_id: components["schemas"]["RunId"];
1766
- status: components["schemas"]["RunStatusV0"];
1767
- plan_hash: components["schemas"]["PlanHash"];
1768
- cost_summary: components["schemas"]["RunCostSummaryV0"];
1769
- nodes?: components["schemas"]["NodeResultV0"][];
1770
- outputs?: {
1771
- [key: string]: unknown;
1772
- };
1773
- };
1774
- /** @description Token usage statistics. All fields default to 0 if not present. */
1775
- Usage: {
1776
- /**
1777
- * Format: uint64
1778
- * @default 0
1779
- */
1780
- input_tokens: number;
1781
- /**
1782
- * Format: uint64
1783
- * @default 0
1784
- */
1785
- output_tokens: number;
1786
- /**
1787
- * Format: uint64
1788
- * @default 0
1789
- */
1790
- total_tokens: number;
1791
- };
1792
- /** @description Unique identifier for a tool call. Treated as an opaque string and must be preserved exactly. */
1793
- ToolCallId: string;
1794
- /** @description Tool identifier. For tools.v0 client tools, use dot-separated lowercase segments (e.g. fs.search). */
1795
- ToolName: string;
1796
- ToolCall: {
1797
- id: components["schemas"]["ToolCallId"];
1798
- /** @enum {string} */
1799
- type: "function" | "web" | "x_search" | "code_execution" | "image_generation";
1800
- function?: {
1801
- name?: components["schemas"]["ToolName"];
1802
- /** @description JSON string of function arguments */
1803
- arguments?: string;
1804
- };
1805
- };
1806
- Citation: {
1807
- url?: string;
1808
- title?: string;
1809
- };
1810
- CustomerTokenResponse: {
1811
- /** @description The customer bearer token */
1812
- token: string;
1813
- /**
1814
- * Format: date-time
1815
- * @description Token expiration timestamp
1816
- */
1817
- expires_at: string;
1818
- /**
1819
- * Format: uint32
1820
- * @description Seconds until token expires
1821
- */
1822
- expires_in: number;
1823
- /**
1824
- * Format: uuid
1825
- * @description Project the token is scoped to
1826
- */
1827
- project_id: string;
1828
- /**
1829
- * Format: uuid
1830
- * @description Internal customer UUID. Only present for managed billing projects; BYOB projects have end-users but not customers.
1831
- */
1832
- customer_id?: string;
1833
- /** @description External customer identifier */
1834
- customer_external_id: string;
1835
- tier_code?: components["schemas"]["TierCode"];
1836
- };
1837
- CheckoutSessionResponse: {
1838
- /** @description Stripe checkout session ID */
1839
- session_id: string;
1840
- /**
1841
- * Format: uri
1842
- * @description Checkout URL
1843
- */
1844
- url: string;
1845
- };
1846
- APIError: {
1847
- error: string;
1848
- code: string;
1849
- message: string;
1850
- };
1851
- /** @description Subscription status for a customer. */
1852
- SubscriptionStatus: {
1853
- /** @description Whether the subscription is currently active */
1854
- active: boolean;
1855
- /** @description Stripe subscription ID */
1856
- subscription_id?: string;
1857
- status?: components["schemas"]["SubscriptionStatusKind"];
1858
- /**
1859
- * Format: date-time
1860
- * @description Start of the current billing period
1861
- */
1862
- current_period_start?: string;
1863
- /**
1864
- * Format: date-time
1865
- * @description End of the current billing period
1866
- */
1867
- current_period_end?: string;
1868
- };
1869
- /** @description Response containing pending tool calls for a workflow run. */
1870
- RunsPendingToolsResponse: {
1871
- run_id: components["schemas"]["RunId"];
1872
- pending?: components["schemas"]["RunsPendingToolsNodeV0"][];
1873
- };
1874
- /** @description A node with pending tool calls. */
1875
- RunsPendingToolsNodeV0: {
1876
- node_id: components["schemas"]["NodeId"];
1877
- /**
1878
- * Format: uint64
1879
- * @description The step number within the node execution
1880
- */
1881
- step: number;
1882
- request_id: components["schemas"]["RequestId"];
1883
- tool_calls?: components["schemas"]["RunsPendingToolCallV0"][];
1884
- };
1885
- /** @description A pending tool call waiting for a result. */
1886
- RunsPendingToolCallV0: {
1887
- /** @description Unique identifier for this tool call */
1888
- tool_call_id: components["schemas"]["ToolCallId"];
1889
- /** @description Name of the tool to be called */
1890
- name: components["schemas"]["ToolName"];
1891
- /** @description JSON-encoded arguments for the tool call */
1892
- arguments: string;
1893
- };
1894
- /**
1895
- * @description Events sent during streaming responses (application/x-ndjson).
1896
- * Each line is a JSON object with an "event" field indicating the type.
1897
- */
1898
- NDJSONStreamEvent: {
1899
- /**
1900
- * @description Event type
1901
- * @enum {string}
1902
- */
1903
- event: "message_start" | "message_delta" | "message_stop" | "tool_use_start" | "tool_use_delta" | "tool_use_stop" | "ping" | "keepalive";
1904
- /** @description Response identifier (message_start) */
1905
- response_id?: string;
1906
- model?: components["schemas"]["ModelId"];
1907
- /** @description Text content fragment (message_delta) */
1908
- text_delta?: string;
1909
- /** @description Why generation stopped (message_stop) */
1910
- stop_reason?: string;
1911
- usage?: components["schemas"]["Usage"];
1912
- /** @description Completed tool calls (tool_use_stop, message_stop) */
1913
- tool_calls?: components["schemas"]["ToolCall"][];
1914
- tool_call_delta?: components["schemas"]["ToolCallDelta"];
1915
- };
1916
- /** @description Incremental tool call data during streaming */
1917
- ToolCallDelta: {
1918
- /** Format: uint32 */
1919
- index?: number;
1920
- id?: components["schemas"]["ToolCallId"];
1921
- type?: string;
1922
- function?: {
1923
- name?: components["schemas"]["ToolName"];
1924
- /** @description Partial JSON string */
1925
- arguments?: string;
1926
- };
1927
- };
1928
- /** @description Workflow node identifier. Must start with a lowercase letter and contain only lowercase letters, numbers, and underscores. */
1929
- NodeId: string;
1930
- /** @description LLM model identifier (e.g., claude-sonnet-4-20250514, gpt-4o). */
1931
- ModelId: string;
1932
- /**
1933
- * @description Workflow-critical model capability identifier.
1934
- * @enum {string}
1935
- */
1936
- ModelCapability: "text_generation" | "tools" | "vision" | "web_search" | "web_fetch" | "computer_use" | "code_execution" | "image_generation";
1937
- Model: {
1938
- model_id: components["schemas"]["ModelId"];
1939
- provider: components["schemas"]["ProviderId"];
1940
- display_name: string;
1941
- description: string;
1942
- capabilities: components["schemas"]["ModelCapability"][];
1943
- /** Format: int32 */
1944
- context_window: number;
1945
- /** Format: int32 */
1946
- max_output_tokens: number;
1947
- /** @description Training cutoff in YYYY-MM format */
1948
- training_cutoff: string;
1949
- deprecated: boolean;
1950
- deprecation_message: string;
1951
- /** Format: uint64 */
1952
- input_cost_per_million_cents: number;
1953
- /** Format: uint64 */
1954
- output_cost_per_million_cents: number;
1955
- };
1956
- ModelsResponse: {
1957
- models: components["schemas"]["Model"][];
1958
- };
1959
- /**
1960
- * Format: uuid
1961
- * @description Unique identifier for a workflow run.
1962
- */
1963
- RunId: string;
1964
- /**
1965
- * Format: uuid
1966
- * @description Unique identifier for an LLM request within a workflow run.
1967
- */
1968
- RequestId: string;
1969
- /** @description SHA-256 hash of the compiled workflow plan (64 hex characters). */
1970
- PlanHash: string;
1971
- /** @description SHA-256 hash (64 hex characters). */
1972
- Sha256Hash: string;
1973
- /**
1974
- * @description LLM provider identifier.
1975
- * @enum {string}
1976
- */
1977
- ProviderId: "anthropic" | "openai" | "xai" | "google-ai-studio";
1978
- PluginManifestV0: {
1979
- name?: string;
1980
- description?: string;
1981
- version?: string;
1982
- commands?: string[];
1983
- agents?: string[];
1984
- };
1985
- PluginGitHubRefV0: {
1986
- owner?: string;
1987
- repo?: string;
1988
- ref?: string;
1989
- path?: string;
1990
- };
1991
- PluginCommandV0: {
1992
- name: string;
1993
- prompt: string;
1994
- agent_refs?: string[];
1995
- };
1996
- PluginAgentV0: {
1997
- name: string;
1998
- system_prompt: string;
1999
- };
2000
- WebhookConfig: {
2001
- /** Format: uuid */
2002
- id?: string;
2003
- /** Format: uuid */
2004
- project_id?: string;
2005
- /** Format: uri */
2006
- endpoint_url?: string;
2007
- signing_secret?: string;
2008
- enabled?: boolean;
2009
- events?: ("customer.created" | "customer.updated" | "customer.deleted" | "usage.threshold_exceeded" | "request.completed" | "billing.subscription_changed")[];
2010
- /** Format: date-time */
2011
- created_at?: string;
2012
- /** Format: date-time */
2013
- updated_at?: string;
2014
- };
2015
- WebhookConfigInput: {
2016
- /** Format: uri */
2017
- endpoint_url: string;
2018
- enabled?: boolean;
2019
- events: ("customer.created" | "customer.updated" | "customer.deleted" | "usage.threshold_exceeded" | "request.completed" | "billing.subscription_changed")[];
2020
- };
2021
- WebhookConfigUpdate: {
2022
- /** Format: uri */
2023
- endpoint_url: string;
2024
- enabled?: boolean;
2025
- events: ("customer.created" | "customer.updated" | "customer.deleted" | "usage.threshold_exceeded" | "request.completed" | "billing.subscription_changed")[];
2026
- rotate_secret?: boolean;
2027
- };
2028
- OutboundWebhookEvent: {
2029
- /** Format: uuid */
2030
- id?: string;
2031
- /** Format: uuid */
2032
- webhook_config_id?: string;
2033
- event_type?: string;
2034
- event_id?: string;
2035
- payload?: Record<string, never>;
2036
- status?: string;
2037
- /** Format: int32 */
2038
- attempt_count?: number;
2039
- /** Format: date-time */
2040
- next_attempt_at?: string;
2041
- /** Format: date-time */
2042
- last_attempt_at?: string;
2043
- /** Format: int32 */
2044
- response_status?: number;
2045
- response_body?: string;
2046
- /** Format: int32 */
2047
- latency_ms?: number;
2048
- error?: string;
2049
- /** Format: date-time */
2050
- created_at?: string;
2051
- /** Format: date-time */
2052
- updated_at?: string;
2053
- };
2054
- /**
2055
- * @description Type of workflow node.
2056
- * @enum {string}
2057
- */
2058
- NodeTypeV0: "llm.responses" | "route.switch" | "join.all" | "join.any" | "join.collect" | "map.fanout" | "transform.json";
2059
- /** @description Tier code identifier (e.g., free, pro, enterprise). */
2060
- TierCode: string;
2061
- /** @description Request to generate images from a text prompt. */
2062
- ImageRequest: {
2063
- /** @description Image generation model ID (e.g., gemini-2.5-flash-image). Optional when using a customer token with a tier that defines a default model. */
2064
- model?: string;
2065
- /** @description Text description of the image to generate */
2066
- prompt: string;
2067
- /**
2068
- * @description Number of images to generate (1-10, default 1)
2069
- * @default 1
2070
- */
2071
- n: number;
2072
- response_format?: components["schemas"]["ImageResponseFormat"];
2073
- };
2074
- /**
2075
- * @description Output format for generated images.
2076
- * @default url
2077
- * @enum {string}
2078
- */
2079
- ImageResponseFormat: "url" | "b64_json";
2080
- /** @description Response containing generated images. */
2081
- ImageResponse: {
2082
- /** @description Unique identifier for this generation request */
2083
- id: string;
2084
- /** @description Model used for generation */
2085
- model: string;
2086
- /** @description Generated images */
2087
- data: components["schemas"]["ImageData"][];
2088
- usage: components["schemas"]["ImageUsage"];
2089
- };
2090
- /** @description A single generated image. */
2091
- ImageData: {
2092
- /** @description URL of the generated image (when response_format is 'url') */
2093
- url?: string;
2094
- /** @description Base64-encoded image data (when response_format is 'b64_json') */
2095
- b64_json?: string;
2096
- /** @description MIME type of the image (e.g., 'image/png', 'image/webp') */
2097
- mime_type?: string;
2098
- /** @description Unique identifier for the image (used for pinning) */
2099
- image_id?: string;
2100
- /**
2101
- * Format: date-time
2102
- * @description When the image URL expires (null if pinned)
2103
- */
2104
- expires_at?: string;
2105
- /** @description URL to pin this image for permanent storage */
2106
- pin_url?: string;
2107
- };
2108
- /** @description Usage statistics for image generation. */
2109
- ImageUsage: {
2110
- /**
2111
- * Format: int32
2112
- * @description Number of images generated
2113
- */
2114
- images: number;
2115
- };
2116
- /** @description Response from pin/unpin operations. */
2117
- ImagePinResponse: {
2118
- /** @description Image ID */
2119
- id: string;
2120
- /** @description Whether the image is currently pinned */
2121
- pinned: boolean;
2122
- /**
2123
- * Format: date-time
2124
- * @description When the image expires (null if pinned)
2125
- */
2126
- expires_at?: string;
2127
- /** @description URL of the image */
2128
- url: string;
2129
- };
2130
- /** @description Request body for creating a session. */
2131
- SessionCreateRequest: {
2132
- /**
2133
- * Format: uuid
2134
- * @description Optional end user ID to associate with the session
2135
- */
2136
- end_user_id?: string;
2137
- /** @description Optional metadata for the session */
2138
- metadata?: {
2139
- [key: string]: unknown;
2140
- };
2141
- };
2142
- /** @description A session resource. */
2143
- SessionResponse: {
2144
- /**
2145
- * Format: uuid
2146
- * @description Session unique identifier
2147
- */
2148
- id: string;
2149
- /**
2150
- * Format: uuid
2151
- * @description Project the session belongs to
2152
- */
2153
- project_id: string;
2154
- /**
2155
- * Format: uuid
2156
- * @description End user associated with the session (if any)
2157
- */
2158
- end_user_id?: string;
2159
- /** @description Session metadata */
2160
- metadata: {
2161
- [key: string]: unknown;
2162
- };
2163
- /**
2164
- * Format: int64
2165
- * @description Number of messages in the session
2166
- */
2167
- message_count: number;
2168
- /**
2169
- * Format: date-time
2170
- * @description Session creation timestamp
2171
- */
2172
- created_at: string;
2173
- /**
2174
- * Format: date-time
2175
- * @description Session last update timestamp
2176
- */
2177
- updated_at: string;
2178
- };
2179
- /** @description A message within a session. */
2180
- SessionMessageResponse: {
2181
- /**
2182
- * Format: uuid
2183
- * @description Message unique identifier
2184
- */
2185
- id: string;
2186
- /**
2187
- * Format: int32
2188
- * @description Sequence number within the session
2189
- */
2190
- seq: number;
2191
- /** @description Message role (user, assistant, tool) */
2192
- role: string;
2193
- /** @description Message content parts */
2194
- content: {
2195
- [key: string]: unknown;
2196
- }[];
2197
- /**
2198
- * Format: uuid
2199
- * @description Run ID that generated this message (for assistant messages)
2200
- */
2201
- run_id?: string;
2202
- /**
2203
- * Format: date-time
2204
- * @description Message creation timestamp
2205
- */
2206
- created_at: string;
2207
- };
2208
- /** @description A session with its full message history. */
2209
- SessionWithMessagesResponse: components["schemas"]["SessionResponse"] & {
2210
- /** @description All messages in the session */
2211
- messages: components["schemas"]["SessionMessageResponse"][];
2212
- };
2213
- /** @description Paginated list of sessions. */
2214
- SessionListResponse: {
2215
- /** @description List of sessions */
2216
- sessions: components["schemas"]["SessionResponse"][];
2217
- /** @description Cursor for fetching the next page (if more results exist) */
2218
- next_cursor?: string;
2219
- };
2220
- /** @description Request body for appending a message to a session. */
2221
- SessionMessageCreateRequest: {
2222
- /** @description Message role (user, assistant, tool) */
2223
- role: string;
2224
- /** @description Message content parts */
2225
- content: {
2226
- [key: string]: unknown;
2227
- }[];
2228
- /**
2229
- * Format: uuid
2230
- * @description Run ID that generated this message (for assistant messages)
2231
- */
2232
- run_id?: string;
2233
- };
2234
- ToolHookConfig: {
2235
- /** Format: uuid */
2236
- id?: string;
2237
- /** Format: uuid */
2238
- project_id?: string;
2239
- /** @enum {string} */
2240
- hook_type?: "pre_tool_use" | "post_tool_use" | "tool_execute";
2241
- /** Format: uri */
2242
- endpoint_url?: string;
2243
- enabled?: boolean;
2244
- /** Format: int32 */
2245
- timeout_ms?: number;
2246
- /** @enum {string} */
2247
- fail_behavior?: "fail_closed" | "fail_open";
2248
- tools_allowlist?: string[];
2249
- allow_mutation?: boolean;
2250
- /** Format: date-time */
2251
- created_at?: string;
2252
- /** Format: date-time */
2253
- updated_at?: string;
2254
- };
2255
- ToolHookConfigInput: {
2256
- /** @enum {string} */
2257
- hook_type: "pre_tool_use" | "post_tool_use" | "tool_execute";
2258
- /** Format: uri */
2259
- endpoint_url: string;
2260
- enabled?: boolean;
2261
- /** Format: int32 */
2262
- timeout_ms?: number;
2263
- /** @enum {string} */
2264
- fail_behavior?: "fail_closed" | "fail_open";
2265
- tools_allowlist?: string[];
2266
- allow_mutation?: boolean;
2267
- };
2268
- ToolHookConfigUpdate: {
2269
- /** Format: uri */
2270
- endpoint_url?: string;
2271
- enabled?: boolean;
2272
- /** Format: int32 */
2273
- timeout_ms?: number;
2274
- /** @enum {string} */
2275
- fail_behavior?: "fail_closed" | "fail_open";
2276
- tools_allowlist?: string[];
2277
- allow_mutation?: boolean;
2278
- rotate_secret?: boolean;
2279
- };
2280
- ToolHookEvent: {
2281
- /** Format: uuid */
2282
- id?: string;
2283
- /** Format: uuid */
2284
- hook_config_id?: string;
2285
- request_id?: string;
2286
- tool_call_id?: string;
2287
- /** @enum {string} */
2288
- status?: "success" | "blocked" | "timeout" | "error";
2289
- /** Format: int32 */
2290
- response_status?: number;
2291
- response_body?: string;
2292
- /** Format: int32 */
2293
- latency_ms?: number;
2294
- error?: string;
2295
- /** Format: date-time */
2296
- created_at?: string;
2297
- };
2298
- ToolHookTestResult: {
2299
- /** @enum {string} */
2300
- status?: "success" | "blocked" | "timeout" | "error";
2301
- /** Format: int32 */
2302
- response_status?: number;
2303
- response_body?: string;
2304
- /** Format: int32 */
2305
- latency_ms?: number;
2306
- error?: string;
2307
- };
2308
- WebhookTestResult: {
2309
- /** @enum {string} */
2310
- status?: "delivered" | "failed";
2311
- /** Format: int32 */
2312
- response_status?: number;
2313
- response_body?: string;
2314
- /** Format: int32 */
2315
- latency_ms?: number;
2316
- error?: string;
2317
- };
2318
- /** @description Request body for updating session metadata. Null values remove keys. */
2319
- SessionUpdateRequest: {
2320
- /** @description Metadata fields to set or remove */
2321
- metadata: {
2322
- [key: string]: unknown;
2323
- };
2324
- };
2325
- };
2326
- responses: never;
2327
- parameters: {
2328
- ProjectID: string;
2329
- WebhookID: string;
2330
- ToolHookID: string;
2331
- };
2332
- requestBodies: never;
2333
- headers: never;
2334
- pathItems: never;
2335
- }
2336
- type $defs = Record<string, never>;
2337
- interface operations {
2338
- getWorkflowV0Schema: {
2339
- parameters: {
2340
- query?: never;
2341
- header?: never;
2342
- path?: never;
2343
- cookie?: never;
2344
- };
2345
- requestBody?: never;
2346
- responses: {
2347
- /** @description Schema document */
2348
- 200: {
2349
- headers: {
2350
- [name: string]: unknown;
2351
- };
2352
- content: {
2353
- "application/schema+json": Record<string, never>;
2354
- };
2355
- };
2356
- };
2357
- };
2358
- getWorkflowV1Schema: {
2359
- parameters: {
2360
- query?: never;
2361
- header?: never;
2362
- path?: never;
2363
- cookie?: never;
2364
- };
2365
- requestBody?: never;
2366
- responses: {
2367
- /** @description Schema document */
2368
- 200: {
2369
- headers: {
2370
- [name: string]: unknown;
2371
- };
2372
- content: {
2373
- "application/schema+json": Record<string, never>;
2374
- };
2375
- };
2376
- };
2377
- };
2378
- getRunEventV0Schema: {
2379
- parameters: {
2380
- query?: never;
2381
- header?: never;
2382
- path?: never;
2383
- cookie?: never;
2384
- };
2385
- requestBody?: never;
2386
- responses: {
2387
- /** @description Schema document */
2388
- 200: {
2389
- headers: {
2390
- [name: string]: unknown;
2391
- };
2392
- content: {
2393
- "application/schema+json": Record<string, never>;
2394
- };
2395
- };
2396
- };
2397
- };
2398
- registerOwner: {
2399
- parameters: {
2400
- query?: never;
2401
- header?: never;
2402
- path?: never;
2403
- cookie?: never;
2404
- };
2405
- requestBody: {
2406
- content: {
2407
- "application/json": {
2408
- /** Format: email */
2409
- email?: string;
2410
- password?: string;
2411
- billing_provider?: components["schemas"]["BillingProvider"];
2412
- };
2413
- };
2414
- };
2415
- responses: {
2416
- /** @description User created */
2417
- 201: {
2418
- headers: {
2419
- [name: string]: unknown;
2420
- };
2421
- content: {
2422
- "application/json": components["schemas"]["AuthResponse"];
2423
- };
2424
- };
2425
- };
2426
- };
2427
- login: {
2428
- parameters: {
2429
- query?: never;
2430
- header?: never;
2431
- path?: never;
2432
- cookie?: never;
2433
- };
2434
- requestBody: {
2435
- content: {
2436
- "application/json": {
2437
- /** Format: email */
2438
- email?: string;
2439
- password?: string;
2440
- };
2441
- };
2442
- };
2443
- responses: {
2444
- /** @description Tokens issued */
2445
- 200: {
2446
- headers: {
2447
- [name: string]: unknown;
2448
- };
2449
- content: {
2450
- "application/json": components["schemas"]["AuthResponse"];
2451
- };
2452
- };
2453
- };
2454
- };
2455
- refreshToken: {
2456
- parameters: {
2457
- query?: never;
2458
- header?: never;
2459
- path?: never;
2460
- cookie?: never;
2461
- };
2462
- requestBody: {
2463
- content: {
2464
- "application/json": {
2465
- refresh_token?: string;
2466
- };
2467
- };
2468
- };
2469
- responses: {
2470
- /** @description Tokens refreshed */
2471
- 200: {
2472
- headers: {
2473
- [name: string]: unknown;
2474
- };
2475
- content: {
2476
- "application/json": components["schemas"]["AuthTokens"];
2477
- };
2478
- };
2479
- };
2480
- };
2481
- logout: {
2482
- parameters: {
2483
- query?: never;
2484
- header?: never;
2485
- path?: never;
2486
- cookie?: never;
2487
- };
2488
- requestBody: {
2489
- content: {
2490
- "application/json": {
2491
- refresh_token?: string;
2492
- };
2493
- };
2494
- };
2495
- responses: {
2496
- /** @description Session revoked */
2497
- 204: {
2498
- headers: {
2499
- [name: string]: unknown;
2500
- };
2501
- content?: never;
2502
- };
2503
- };
2504
- };
2505
- getAuthenticatedUser: {
2506
- parameters: {
2507
- query?: never;
2508
- header?: never;
2509
- path?: never;
2510
- cookie?: never;
2511
- };
2512
- requestBody?: never;
2513
- responses: {
2514
- /** @description Current user */
2515
- 200: {
2516
- headers: {
2517
- [name: string]: unknown;
2518
- };
2519
- content: {
2520
- "application/json": {
2521
- user?: components["schemas"]["User"];
2522
- };
2523
- };
2524
- };
2525
- };
2526
- };
2527
- mintCustomerToken: {
2528
- parameters: {
2529
- query?: never;
2530
- header?: never;
2531
- path?: never;
2532
- cookie?: never;
2533
- };
2534
- requestBody: {
2535
- content: {
2536
- "application/json": {
2537
- /**
2538
- * Format: uuid
2539
- * @description Internal customer UUID (provide exactly one of customer_id or customer_external_id)
2540
- */
2541
- customer_id?: string;
2542
- /** @description External customer identifier (provide exactly one of customer_id or customer_external_id) */
2543
- customer_external_id?: string;
2544
- /**
2545
- * Format: uint32
2546
- * @description Requested token TTL in seconds (server may cap this)
2547
- */
2548
- ttl_seconds?: number;
2549
- };
2550
- };
2551
- };
2552
- responses: {
2553
- /** @description Customer token issued */
2554
- 200: {
2555
- headers: {
2556
- [name: string]: unknown;
2557
- };
2558
- content: {
2559
- "application/json": components["schemas"]["CustomerTokenResponse"];
2560
- };
2561
- };
2562
- /** @description Invalid request (missing or invalid customer selector) */
2563
- 400: {
2564
- headers: {
2565
- [name: string]: unknown;
2566
- };
2567
- content?: never;
2568
- };
2569
- /** @description Invalid or missing secret key */
2570
- 401: {
2571
- headers: {
2572
- [name: string]: unknown;
2573
- };
2574
- content?: never;
2575
- };
2576
- /** @description Customer not found */
2577
- 404: {
2578
- headers: {
2579
- [name: string]: unknown;
2580
- };
2581
- content?: never;
2582
- };
2583
- };
2584
- };
2585
- exchangeOidcToken: {
2586
- parameters: {
2587
- query?: never;
2588
- header?: never;
2589
- path?: never;
2590
- cookie?: never;
2591
- };
2592
- requestBody: {
2593
- content: {
2594
- "application/json": {
2595
- /** @description OIDC id_token JWT to verify and exchange */
2596
- id_token: string;
2597
- /**
2598
- * Format: uuid
2599
- * @description Optional; must match the API key's project_id if provided
2600
- */
2601
- project_id?: string;
2602
- };
2603
- };
2604
- };
2605
- responses: {
2606
- /** @description Customer token issued */
2607
- 200: {
2608
- headers: {
2609
- [name: string]: unknown;
2610
- };
2611
- content: {
2612
- "application/json": components["schemas"]["CustomerTokenResponse"];
2613
- };
2614
- };
2615
- /** @description Invalid request or token contents */
2616
- 400: {
2617
- headers: {
2618
- [name: string]: unknown;
2619
- };
2620
- content: {
2621
- "application/json": components["schemas"]["APIError"];
2622
- };
2623
- };
2624
- /** @description Invalid id_token */
2625
- 401: {
2626
- headers: {
2627
- [name: string]: unknown;
2628
- };
2629
- content?: never;
2630
- };
2631
- /** @description Identity unknown and auto-provision disabled */
2632
- 403: {
2633
- headers: {
2634
- [name: string]: unknown;
2635
- };
2636
- content: {
2637
- "application/json": components["schemas"]["APIError"];
2638
- };
2639
- };
2640
- /** @description Identity already linked to a different customer */
2641
- 409: {
2642
- headers: {
2643
- [name: string]: unknown;
2644
- };
2645
- content?: never;
2646
- };
2647
- };
2648
- };
2649
- claimCustomer: {
2650
- parameters: {
2651
- query?: never;
2652
- header?: never;
2653
- path?: never;
2654
- cookie?: never;
2655
- };
2656
- requestBody: {
2657
- content: {
2658
- "application/json": {
2659
- /** Format: email */
2660
- email: string;
2661
- /**
2662
- * @description Identity provider (must match project's enabled providers)
2663
- * @enum {string}
2664
- */
2665
- provider: "github" | "google" | "oidc";
2666
- /** @description OAuth/OIDC subject claim from the identity provider */
2667
- subject: string;
2668
- };
2669
- };
2670
- };
2671
- responses: {
2672
- /** @description Customer identity linked */
2673
- 200: {
2674
- headers: {
2675
- [name: string]: unknown;
2676
- };
2677
- content?: never;
2678
- };
2679
- /** @description Customer not found */
2680
- 404: {
2681
- headers: {
2682
- [name: string]: unknown;
2683
- };
2684
- content?: never;
2685
- };
2686
- /** @description Identity already linked to a different customer */
2687
- 409: {
2688
- headers: {
2689
- [name: string]: unknown;
2690
- };
2691
- content?: never;
2692
- };
2693
- };
2694
- };
2695
- listCustomers: {
2696
- parameters: {
2697
- query?: never;
2698
- header?: never;
2699
- path?: never;
2700
- cookie?: never;
2701
- };
2702
- requestBody?: never;
2703
- responses: {
2704
- /** @description Customer list */
2705
- 200: {
2706
- headers: {
2707
- [name: string]: unknown;
2708
- };
2709
- content: {
2710
- "application/json": {
2711
- customers?: components["schemas"]["CustomerWithSubscription"][];
2712
- };
2713
- };
2714
- };
2715
- };
2716
- };
2717
- upsertCustomer: {
2718
- parameters: {
2719
- query?: never;
2720
- header?: never;
2721
- path?: never;
2722
- cookie?: never;
2723
- };
2724
- requestBody: {
2725
- content: {
2726
- "application/json": components["schemas"]["CustomerCreate"];
2727
- };
2728
- };
2729
- responses: {
2730
- /** @description Customer updated */
2731
- 200: {
2732
- headers: {
2733
- [name: string]: unknown;
2734
- };
2735
- content: {
2736
- "application/json": {
2737
- customer?: components["schemas"]["CustomerWithSubscription"];
2738
- };
2739
- };
2740
- };
2741
- /** @description Customer created */
2742
- 201: {
2743
- headers: {
2744
- [name: string]: unknown;
2745
- };
2746
- content: {
2747
- "application/json": {
2748
- customer?: components["schemas"]["CustomerWithSubscription"];
2749
- };
2750
- };
2751
- };
2752
- };
2753
- };
2754
- createProjectCustomer: {
2755
- parameters: {
2756
- query?: never;
2757
- header?: never;
2758
- path?: never;
2759
- cookie?: never;
2760
- };
2761
- requestBody: {
2762
- content: {
2763
- "application/json": components["schemas"]["CustomerCreate"];
2764
- };
2765
- };
2766
- responses: {
2767
- /** @description Customer created */
2768
- 201: {
2769
- headers: {
2770
- [name: string]: unknown;
2771
- };
2772
- content: {
2773
- "application/json": {
2774
- customer?: components["schemas"]["CustomerWithSubscription"];
2775
- };
2776
- };
2777
- };
2778
- };
2779
- };
2780
- getCustomer: {
2781
- parameters: {
2782
- query?: never;
2783
- header?: never;
2784
- path: {
2785
- customer_id: string;
2786
- };
2787
- cookie?: never;
2788
- };
2789
- requestBody?: never;
2790
- responses: {
2791
- /** @description Customer */
2792
- 200: {
2793
- headers: {
2794
- [name: string]: unknown;
2795
- };
2796
- content: {
2797
- "application/json": {
2798
- customer?: components["schemas"]["CustomerWithSubscription"];
2799
- };
2800
- };
2801
- };
2802
- /** @description Customer not found */
2803
- 404: {
2804
- headers: {
2805
- [name: string]: unknown;
2806
- };
2807
- content?: never;
2808
- };
2809
- };
2810
- };
2811
- deleteProjectCustomer: {
2812
- parameters: {
2813
- query?: never;
2814
- header?: never;
2815
- path: {
2816
- customer_id: string;
2817
- };
2818
- cookie?: never;
2819
- };
2820
- requestBody?: never;
2821
- responses: {
2822
- /** @description Customer deleted */
2823
- 204: {
2824
- headers: {
2825
- [name: string]: unknown;
2826
- };
2827
- content?: never;
2828
- };
2829
- /** @description Customer not found */
2830
- 404: {
2831
- headers: {
2832
- [name: string]: unknown;
2833
- };
2834
- content?: never;
2835
- };
2836
- };
2837
- };
2838
- subscribeCustomer: {
2839
- parameters: {
2840
- query?: never;
2841
- header?: never;
2842
- path: {
2843
- customer_id: string;
2844
- };
2845
- cookie?: never;
2846
- };
2847
- requestBody: {
2848
- content: {
2849
- "application/json": {
2850
- /** Format: uuid */
2851
- tier_id: string;
2852
- /** Format: uri */
2853
- success_url: string;
2854
- /** Format: uri */
2855
- cancel_url: string;
2856
- };
2857
- };
2858
- };
2859
- responses: {
2860
- /** @description Checkout session created */
2861
- 201: {
2862
- headers: {
2863
- [name: string]: unknown;
2864
- };
2865
- content: {
2866
- "application/json": components["schemas"]["CheckoutSessionResponse"];
2867
- };
2868
- };
2869
- };
2870
- };
2871
- getCustomerSubscription: {
2872
- parameters: {
2873
- query?: never;
2874
- header?: never;
2875
- path: {
2876
- customer_id: string;
2877
- };
2878
- cookie?: never;
2879
- };
2880
- requestBody?: never;
2881
- responses: {
2882
- /** @description Subscription details */
2883
- 200: {
2884
- headers: {
2885
- [name: string]: unknown;
2886
- };
2887
- content: {
2888
- "application/json": {
2889
- subscription?: components["schemas"]["Subscription"];
2890
- };
2891
- };
2892
- };
2893
- /** @description Subscription not found */
2894
- 404: {
2895
- headers: {
2896
- [name: string]: unknown;
2897
- };
2898
- content?: never;
2899
- };
2900
- };
2901
- };
2902
- cancelCustomerSubscription: {
2903
- parameters: {
2904
- query?: never;
2905
- header?: never;
2906
- path: {
2907
- customer_id: string;
2908
- };
2909
- cookie?: never;
2910
- };
2911
- requestBody?: never;
2912
- responses: {
2913
- /** @description Subscription canceled */
2914
- 204: {
2915
- headers: {
2916
- [name: string]: unknown;
2917
- };
2918
- content?: never;
2919
- };
2920
- };
2921
- };
2922
- getCustomerBalance: {
2923
- parameters: {
2924
- query?: never;
2925
- header?: never;
2926
- path: {
2927
- customer_id: string;
2928
- };
2929
- cookie?: never;
2930
- };
2931
- requestBody?: never;
2932
- responses: {
2933
- /** @description PAYGO balance */
2934
- 200: {
2935
- headers: {
2936
- [name: string]: unknown;
2937
- };
2938
- content: {
2939
- "application/json": components["schemas"]["CustomerBalanceResponse"];
2940
- };
2941
- };
2942
- /** @description Subscription is not PAYGO */
2943
- 400: {
2944
- headers: {
2945
- [name: string]: unknown;
2946
- };
2947
- content?: never;
2948
- };
2949
- /** @description Customer or subscription not found */
2950
- 404: {
2951
- headers: {
2952
- [name: string]: unknown;
2953
- };
2954
- content?: never;
2955
- };
2956
- /** @description Service unavailable */
2957
- 503: {
2958
- headers: {
2959
- [name: string]: unknown;
2960
- };
2961
- content?: never;
2962
- };
2963
- };
2964
- };
2965
- getCustomerBalanceHistory: {
2966
- parameters: {
2967
- query?: {
2968
- limit?: number;
2969
- offset?: number;
2970
- };
2971
- header?: never;
2972
- path: {
2973
- customer_id: string;
2974
- };
2975
- cookie?: never;
2976
- };
2977
- requestBody?: never;
2978
- responses: {
2979
- /** @description Ledger entries */
2980
- 200: {
2981
- headers: {
2982
- [name: string]: unknown;
2983
- };
2984
- content: {
2985
- "application/json": components["schemas"]["CustomerLedgerResponse"];
2986
- };
2987
- };
2988
- /** @description Customer not found */
2989
- 404: {
2990
- headers: {
2991
- [name: string]: unknown;
2992
- };
2993
- content?: never;
2994
- };
2995
- /** @description Service unavailable */
2996
- 503: {
2997
- headers: {
2998
- [name: string]: unknown;
2999
- };
3000
- content?: never;
3001
- };
3002
- };
3003
- };
3004
- createCustomerTopup: {
3005
- parameters: {
3006
- query?: never;
3007
- header?: never;
3008
- path: {
3009
- customer_id: string;
3010
- };
3011
- cookie?: never;
3012
- };
3013
- requestBody: {
3014
- content: {
3015
- "application/json": components["schemas"]["CustomerTopupRequest"];
3016
- };
3017
- };
3018
- responses: {
3019
- /** @description Checkout session created */
3020
- 201: {
3021
- headers: {
3022
- [name: string]: unknown;
3023
- };
3024
- content: {
3025
- "application/json": components["schemas"]["CustomerTopupResponse"];
3026
- };
3027
- };
3028
- /** @description Invalid request */
3029
- 400: {
3030
- headers: {
3031
- [name: string]: unknown;
3032
- };
3033
- content?: never;
3034
- };
3035
- /** @description Customer not found */
3036
- 404: {
3037
- headers: {
3038
- [name: string]: unknown;
3039
- };
3040
- content?: never;
3041
- };
3042
- /** @description Service unavailable */
3043
- 503: {
3044
- headers: {
3045
- [name: string]: unknown;
3046
- };
3047
- content?: never;
3048
- };
3049
- };
3050
- };
3051
- getCustomerMe: {
3052
- parameters: {
3053
- query?: never;
3054
- header?: never;
3055
- path?: never;
3056
- cookie?: never;
3057
- };
3058
- requestBody?: never;
3059
- responses: {
3060
- /** @description Customer details */
3061
- 200: {
3062
- headers: {
3063
- [name: string]: unknown;
3064
- };
3065
- content: {
3066
- "application/json": components["schemas"]["CustomerMeResponse"];
3067
- };
3068
- };
3069
- /** @description Unauthorized */
3070
- 401: {
3071
- headers: {
3072
- [name: string]: unknown;
3073
- };
3074
- content?: never;
3075
- };
3076
- };
3077
- };
3078
- getCustomerMeUsage: {
3079
- parameters: {
3080
- query?: never;
3081
- header?: never;
3082
- path?: never;
3083
- cookie?: never;
3084
- };
3085
- requestBody?: never;
3086
- responses: {
3087
- /** @description Usage summary */
3088
- 200: {
3089
- headers: {
3090
- [name: string]: unknown;
3091
- };
3092
- content: {
3093
- "application/json": components["schemas"]["CustomerMeUsageResponse"];
3094
- };
3095
- };
3096
- /** @description Unauthorized */
3097
- 401: {
3098
- headers: {
3099
- [name: string]: unknown;
3100
- };
3101
- content?: never;
3102
- };
3103
- /** @description Customer not found */
3104
- 404: {
3105
- headers: {
3106
- [name: string]: unknown;
3107
- };
3108
- content?: never;
3109
- };
3110
- /** @description Failed to calculate usage */
3111
- 500: {
3112
- headers: {
3113
- [name: string]: unknown;
3114
- };
3115
- content?: never;
3116
- };
3117
- /** @description Service unavailable */
3118
- 503: {
3119
- headers: {
3120
- [name: string]: unknown;
3121
- };
3122
- content?: never;
3123
- };
3124
- };
3125
- };
3126
- getCustomerMeSubscription: {
3127
- parameters: {
3128
- query?: never;
3129
- header?: never;
3130
- path?: never;
3131
- cookie?: never;
3132
- };
3133
- requestBody?: never;
3134
- responses: {
3135
- /** @description Subscription details */
3136
- 200: {
3137
- headers: {
3138
- [name: string]: unknown;
3139
- };
3140
- content: {
3141
- "application/json": components["schemas"]["CustomerMeSubscriptionResponse"];
3142
- };
3143
- };
3144
- /** @description Unauthorized */
3145
- 401: {
3146
- headers: {
3147
- [name: string]: unknown;
3148
- };
3149
- content?: never;
3150
- };
3151
- /** @description Customer or tier not found */
3152
- 404: {
3153
- headers: {
3154
- [name: string]: unknown;
3155
- };
3156
- content?: never;
3157
- };
3158
- /** @description Internal server error */
3159
- 500: {
3160
- headers: {
3161
- [name: string]: unknown;
3162
- };
3163
- content?: never;
3164
- };
3165
- /** @description Service unavailable */
3166
- 503: {
3167
- headers: {
3168
- [name: string]: unknown;
3169
- };
3170
- content?: never;
3171
- };
3172
- };
3173
- };
3174
- getCustomerMeBalance: {
3175
- parameters: {
3176
- query?: never;
3177
- header?: never;
3178
- path?: never;
3179
- cookie?: never;
3180
- };
3181
- requestBody?: never;
3182
- responses: {
3183
- /** @description PAYGO balance */
3184
- 200: {
3185
- headers: {
3186
- [name: string]: unknown;
3187
- };
3188
- content: {
3189
- "application/json": components["schemas"]["CustomerBalanceResponse"];
3190
- };
3191
- };
3192
- /** @description Subscription is not PAYGO */
3193
- 400: {
3194
- headers: {
3195
- [name: string]: unknown;
3196
- };
3197
- content?: never;
3198
- };
3199
- /** @description Unauthorized */
3200
- 401: {
3201
- headers: {
3202
- [name: string]: unknown;
3203
- };
3204
- content?: never;
3205
- };
3206
- /** @description Customer or subscription not found */
3207
- 404: {
3208
- headers: {
3209
- [name: string]: unknown;
3210
- };
3211
- content?: never;
3212
- };
3213
- /** @description Service unavailable */
3214
- 503: {
3215
- headers: {
3216
- [name: string]: unknown;
3217
- };
3218
- content?: never;
3219
- };
3220
- };
3221
- };
3222
- getCustomerMeBalanceHistory: {
3223
- parameters: {
3224
- query?: {
3225
- limit?: number;
3226
- offset?: number;
3227
- };
3228
- header?: never;
3229
- path?: never;
3230
- cookie?: never;
3231
- };
3232
- requestBody?: never;
3233
- responses: {
3234
- /** @description Ledger entries */
3235
- 200: {
3236
- headers: {
3237
- [name: string]: unknown;
3238
- };
3239
- content: {
3240
- "application/json": components["schemas"]["CustomerLedgerResponse"];
3241
- };
3242
- };
3243
- /** @description Unauthorized */
3244
- 401: {
3245
- headers: {
3246
- [name: string]: unknown;
3247
- };
3248
- content?: never;
3249
- };
3250
- /** @description Customer not found */
3251
- 404: {
3252
- headers: {
3253
- [name: string]: unknown;
3254
- };
3255
- content?: never;
3256
- };
3257
- /** @description Service unavailable */
3258
- 503: {
3259
- headers: {
3260
- [name: string]: unknown;
3261
- };
3262
- content?: never;
3263
- };
3264
- };
3265
- };
3266
- createCustomerMeTopup: {
3267
- parameters: {
3268
- query?: never;
3269
- header?: never;
3270
- path?: never;
3271
- cookie?: never;
3272
- };
3273
- requestBody: {
3274
- content: {
3275
- "application/json": components["schemas"]["CustomerTopupRequest"];
3276
- };
3277
- };
3278
- responses: {
3279
- /** @description Checkout session created */
3280
- 201: {
3281
- headers: {
3282
- [name: string]: unknown;
3283
- };
3284
- content: {
3285
- "application/json": components["schemas"]["CustomerTopupResponse"];
3286
- };
3287
- };
3288
- /** @description Invalid request */
3289
- 400: {
3290
- headers: {
3291
- [name: string]: unknown;
3292
- };
3293
- content?: never;
3294
- };
3295
- /** @description Unauthorized */
3296
- 401: {
3297
- headers: {
3298
- [name: string]: unknown;
3299
- };
3300
- content?: never;
3301
- };
3302
- /** @description Customer not found */
3303
- 404: {
3304
- headers: {
3305
- [name: string]: unknown;
3306
- };
3307
- content?: never;
3308
- };
3309
- /** @description Service unavailable */
3310
- 503: {
3311
- headers: {
3312
- [name: string]: unknown;
3313
- };
3314
- content?: never;
3315
- };
3316
- };
3317
- };
3318
- changeCustomerMeTier: {
3319
- parameters: {
3320
- query?: never;
3321
- header?: never;
3322
- path?: never;
3323
- cookie?: never;
3324
- };
3325
- requestBody: {
3326
- content: {
3327
- "application/json": components["schemas"]["ChangeTierRequest"];
3328
- };
3329
- };
3330
- responses: {
3331
- /** @description Tier changed successfully */
3332
- 200: {
3333
- headers: {
3334
- [name: string]: unknown;
3335
- };
3336
- content: {
3337
- "application/json": components["schemas"]["CustomerMeSubscriptionResponse"];
3338
- };
3339
- };
3340
- /** @description Invalid request (missing tier_code, same tier, or PAYGO subscription) */
3341
- 400: {
3342
- headers: {
3343
- [name: string]: unknown;
3344
- };
3345
- content?: never;
3346
- };
3347
- /** @description Unauthorized */
3348
- 401: {
3349
- headers: {
3350
- [name: string]: unknown;
3351
- };
3352
- content?: never;
3353
- };
3354
- /** @description No payment method on file (required for free-to-paid upgrade) */
3355
- 402: {
3356
- headers: {
3357
- [name: string]: unknown;
3358
- };
3359
- content?: never;
3360
- };
3361
- /** @description Customer or tier not found */
3362
- 404: {
3363
- headers: {
3364
- [name: string]: unknown;
3365
- };
3366
- content?: never;
3367
- };
3368
- /** @description Billing provider mismatch */
3369
- 409: {
3370
- headers: {
3371
- [name: string]: unknown;
3372
- };
3373
- content?: never;
3374
- };
3375
- /** @description Service unavailable */
3376
- 503: {
3377
- headers: {
3378
- [name: string]: unknown;
3379
- };
3380
- content?: never;
3381
- };
3382
- };
3383
- };
3384
- createCustomerMeCheckout: {
3385
- parameters: {
3386
- query?: never;
3387
- header?: never;
3388
- path?: never;
3389
- cookie?: never;
3390
- };
3391
- requestBody: {
3392
- content: {
3393
- "application/json": components["schemas"]["CustomerMeCheckoutRequest"];
3394
- };
3395
- };
3396
- responses: {
3397
- /** @description Checkout session created successfully */
3398
- 200: {
3399
- headers: {
3400
- [name: string]: unknown;
3401
- };
3402
- content: {
3403
- "application/json": components["schemas"]["CheckoutSessionResponse"];
3404
- };
3405
- };
3406
- /** @description Invalid request (missing or invalid tier_code, success_url, or cancel_url) */
3407
- 400: {
3408
- headers: {
3409
- [name: string]: unknown;
3410
- };
3411
- content?: never;
3412
- };
3413
- /** @description Unauthorized */
3414
- 401: {
3415
- headers: {
3416
- [name: string]: unknown;
3417
- };
3418
- content?: never;
3419
- };
3420
- /** @description Customer or tier not found */
3421
- 404: {
3422
- headers: {
3423
- [name: string]: unknown;
3424
- };
3425
- content?: never;
3426
- };
3427
- /** @description Tier has no billing pricing configured */
3428
- 409: {
3429
- headers: {
3430
- [name: string]: unknown;
3431
- };
3432
- content?: never;
3433
- };
3434
- /** @description Billing not configured */
3435
- 503: {
3436
- headers: {
3437
- [name: string]: unknown;
3438
- };
3439
- content?: never;
3440
- };
3441
- };
3442
- };
3443
- listModels: {
3444
- parameters: {
3445
- query?: {
3446
- /** @description Filter results to a specific provider */
3447
- provider?: components["schemas"]["ProviderId"];
3448
- /** @description Filter results to models that support a capability */
3449
- capability?: components["schemas"]["ModelCapability"];
3450
- };
3451
- header?: never;
3452
- path?: never;
3453
- cookie?: never;
3454
- };
3455
- requestBody?: never;
3456
- responses: {
3457
- /** @description Models list */
3458
- 200: {
3459
- headers: {
3460
- [name: string]: unknown;
3461
- };
3462
- content: {
3463
- "application/json": components["schemas"]["ModelsResponse"];
3464
- };
3465
- };
3466
- };
3467
- };
3468
- listProjects: {
3469
- parameters: {
3470
- query?: never;
3471
- header?: never;
3472
- path?: never;
3473
- cookie?: never;
3474
- };
3475
- requestBody?: never;
3476
- responses: {
3477
- /** @description Project list */
3478
- 200: {
3479
- headers: {
3480
- [name: string]: unknown;
3481
- };
3482
- content: {
3483
- "application/json": {
3484
- projects?: components["schemas"]["Project"][];
3485
- };
3486
- };
3487
- };
3488
- };
3489
- };
3490
- createProject: {
3491
- parameters: {
3492
- query?: never;
3493
- header?: never;
3494
- path?: never;
3495
- cookie?: never;
3496
- };
3497
- requestBody: {
3498
- content: {
3499
- "application/json": {
3500
- name?: string;
3501
- description?: string;
3502
- markup_percentage?: number;
3503
- };
3504
- };
3505
- };
3506
- responses: {
3507
- /** @description Project created */
3508
- 201: {
3509
- headers: {
3510
- [name: string]: unknown;
3511
- };
3512
- content: {
3513
- "application/json": {
3514
- project?: components["schemas"]["Project"];
3515
- };
3516
- };
3517
- };
3518
- };
3519
- };
3520
- getProject: {
3521
- parameters: {
3522
- query?: never;
3523
- header?: never;
3524
- path: {
3525
- id: components["parameters"]["ProjectID"];
3526
- };
3527
- cookie?: never;
3528
- };
3529
- requestBody?: never;
3530
- responses: {
3531
- /** @description Project found */
3532
- 200: {
3533
- headers: {
3534
- [name: string]: unknown;
3535
- };
3536
- content: {
3537
- "application/json": {
3538
- project?: components["schemas"]["Project"];
3539
- };
3540
- };
3541
- };
3542
- };
3543
- };
3544
- updateProject: {
3545
- parameters: {
3546
- query?: never;
3547
- header?: never;
3548
- path: {
3549
- id: components["parameters"]["ProjectID"];
3550
- };
3551
- cookie?: never;
3552
- };
3553
- requestBody: {
3554
- content: {
3555
- "application/json": {
3556
- name?: string;
3557
- description?: string;
3558
- markup_percentage?: number;
3559
- billing_mode?: components["schemas"]["BillingMode"];
3560
- /** Format: uuid */
3561
- customer_auto_provision_tier_id?: string;
3562
- customer_oauth_providers?: ("github" | "google")[];
3563
- oidc_enabled?: boolean;
3564
- oidc_issuer?: string;
3565
- oidc_audiences?: string[];
3566
- oidc_jwks_url?: string;
3567
- oidc_subject_claim?: string;
3568
- };
3569
- };
3570
- };
3571
- responses: {
3572
- /** @description Project updated */
3573
- 200: {
3574
- headers: {
3575
- [name: string]: unknown;
3576
- };
3577
- content: {
3578
- "application/json": {
3579
- project?: components["schemas"]["Project"];
3580
- };
3581
- };
3582
- };
3583
- };
3584
- };
3585
- deleteProject: {
3586
- parameters: {
3587
- query?: never;
3588
- header?: never;
3589
- path: {
3590
- id: components["parameters"]["ProjectID"];
3591
- };
3592
- cookie?: never;
3593
- };
3594
- requestBody?: never;
3595
- responses: {
3596
- /** @description Project deleted */
3597
- 204: {
3598
- headers: {
3599
- [name: string]: unknown;
3600
- };
3601
- content?: never;
3602
- };
3603
- };
3604
- };
3605
- listProjectTiers: {
3606
- parameters: {
3607
- query?: never;
3608
- header?: never;
3609
- path: {
3610
- id: components["parameters"]["ProjectID"];
3611
- };
3612
- cookie?: never;
3613
- };
3614
- requestBody?: never;
3615
- responses: {
3616
- /** @description Tier list */
3617
- 200: {
3618
- headers: {
3619
- [name: string]: unknown;
3620
- };
3621
- content: {
3622
- "application/json": {
3623
- tiers?: components["schemas"]["Tier"][];
3624
- };
3625
- };
3626
- };
3627
- };
3628
- };
3629
- createTier: {
3630
- parameters: {
3631
- query?: never;
3632
- header?: never;
3633
- path: {
3634
- id: components["parameters"]["ProjectID"];
3635
- };
3636
- cookie?: never;
3637
- };
3638
- requestBody: {
3639
- content: {
3640
- "application/json": components["schemas"]["TierCreate"];
3641
- };
3642
- };
3643
- responses: {
3644
- /** @description Tier created */
3645
- 201: {
3646
- headers: {
3647
- [name: string]: unknown;
3648
- };
3649
- content: {
3650
- "application/json": {
3651
- tier?: components["schemas"]["Tier"];
3652
- };
3653
- };
3654
- };
3655
- };
3656
- };
3657
- updateTier: {
3658
- parameters: {
3659
- query?: never;
3660
- header?: never;
3661
- path: {
3662
- id: components["parameters"]["ProjectID"];
3663
- tier_id: string;
3664
- };
3665
- cookie?: never;
3666
- };
3667
- requestBody: {
3668
- content: {
3669
- "application/json": components["schemas"]["TierUpdate"];
3670
- };
3671
- };
3672
- responses: {
3673
- /** @description Tier updated */
3674
- 200: {
3675
- headers: {
3676
- [name: string]: unknown;
3677
- };
3678
- content?: never;
3679
- };
3680
- };
3681
- };
3682
- deleteTier: {
3683
- parameters: {
3684
- query?: never;
3685
- header?: never;
3686
- path: {
3687
- id: components["parameters"]["ProjectID"];
3688
- tier_id: string;
3689
- };
3690
- cookie?: never;
3691
- };
3692
- requestBody?: never;
3693
- responses: {
3694
- /** @description Tier deleted */
3695
- 204: {
3696
- headers: {
3697
- [name: string]: unknown;
3698
- };
3699
- content?: never;
3700
- };
3701
- };
3702
- };
3703
- listProjectCustomers: {
3704
- parameters: {
3705
- query?: never;
3706
- header?: never;
3707
- path: {
3708
- id: components["parameters"]["ProjectID"];
3709
- };
3710
- cookie?: never;
3711
- };
3712
- requestBody?: never;
3713
- responses: {
3714
- /** @description Customer list */
3715
- 200: {
3716
- headers: {
3717
- [name: string]: unknown;
3718
- };
3719
- content: {
3720
- "application/json": {
3721
- customers?: components["schemas"]["CustomerWithSubscription"][];
3722
- };
3723
- };
3724
- };
3725
- };
3726
- };
3727
- createCustomer: {
3728
- parameters: {
3729
- query?: never;
3730
- header?: never;
3731
- path: {
3732
- id: components["parameters"]["ProjectID"];
3733
- };
3734
- cookie?: never;
3735
- };
3736
- requestBody: {
3737
- content: {
3738
- "application/json": components["schemas"]["CustomerCreate"];
3739
- };
3740
- };
3741
- responses: {
3742
- /** @description Customer created */
3743
- 201: {
3744
- headers: {
3745
- [name: string]: unknown;
3746
- };
3747
- content: {
3748
- "application/json": {
3749
- customer?: components["schemas"]["CustomerWithSubscription"];
3750
- };
3751
- };
3752
- };
3753
- };
3754
- };
3755
- deleteCustomer: {
3756
- parameters: {
3757
- query?: never;
3758
- header?: never;
3759
- path: {
3760
- id: components["parameters"]["ProjectID"];
3761
- customer_id: string;
3762
- };
3763
- cookie?: never;
3764
- };
3765
- requestBody?: never;
3766
- responses: {
3767
- /** @description Customer deleted */
3768
- 204: {
3769
- headers: {
3770
- [name: string]: unknown;
3771
- };
3772
- content?: never;
3773
- };
3774
- };
3775
- };
3776
- listProjectWebhooks: {
3777
- parameters: {
3778
- query?: never;
3779
- header?: never;
3780
- path: {
3781
- id: components["parameters"]["ProjectID"];
3782
- };
3783
- cookie?: never;
3784
- };
3785
- requestBody?: never;
3786
- responses: {
3787
- /** @description Webhook list */
3788
- 200: {
3789
- headers: {
3790
- [name: string]: unknown;
3791
- };
3792
- content: {
3793
- "application/json": {
3794
- webhooks?: components["schemas"]["WebhookConfig"][];
3795
- };
3796
- };
3797
- };
3798
- };
3799
- };
3800
- createProjectWebhook: {
3801
- parameters: {
3802
- query?: never;
3803
- header?: never;
3804
- path: {
3805
- id: components["parameters"]["ProjectID"];
3806
- };
3807
- cookie?: never;
3808
- };
3809
- requestBody: {
3810
- content: {
3811
- "application/json": components["schemas"]["WebhookConfigInput"];
3812
- };
3813
- };
3814
- responses: {
3815
- /** @description Webhook created */
3816
- 201: {
3817
- headers: {
3818
- [name: string]: unknown;
3819
- };
3820
- content: {
3821
- "application/json": {
3822
- webhook?: components["schemas"]["WebhookConfig"];
3823
- };
3824
- };
3825
- };
3826
- };
3827
- };
3828
- getProjectWebhook: {
3829
- parameters: {
3830
- query?: never;
3831
- header?: never;
3832
- path: {
3833
- id: components["parameters"]["ProjectID"];
3834
- webhook_id: components["parameters"]["WebhookID"];
3835
- };
3836
- cookie?: never;
3837
- };
3838
- requestBody?: never;
3839
- responses: {
3840
- /** @description Webhook details */
3841
- 200: {
3842
- headers: {
3843
- [name: string]: unknown;
3844
- };
3845
- content: {
3846
- "application/json": {
3847
- webhook?: components["schemas"]["WebhookConfig"];
3848
- };
3849
- };
3850
- };
3851
- };
3852
- };
3853
- updateProjectWebhook: {
3854
- parameters: {
3855
- query?: never;
3856
- header?: never;
3857
- path: {
3858
- id: components["parameters"]["ProjectID"];
3859
- webhook_id: components["parameters"]["WebhookID"];
3860
- };
3861
- cookie?: never;
3862
- };
3863
- requestBody: {
3864
- content: {
3865
- "application/json": components["schemas"]["WebhookConfigUpdate"];
3866
- };
3867
- };
3868
- responses: {
3869
- /** @description Webhook updated */
3870
- 200: {
3871
- headers: {
3872
- [name: string]: unknown;
3873
- };
3874
- content: {
3875
- "application/json": {
3876
- webhook?: components["schemas"]["WebhookConfig"];
3877
- };
3878
- };
3879
- };
3880
- };
3881
- };
3882
- deleteProjectWebhook: {
3883
- parameters: {
3884
- query?: never;
3885
- header?: never;
3886
- path: {
3887
- id: components["parameters"]["ProjectID"];
3888
- webhook_id: components["parameters"]["WebhookID"];
3889
- };
3890
- cookie?: never;
3891
- };
3892
- requestBody?: never;
3893
- responses: {
3894
- /** @description Webhook deleted */
3895
- 204: {
3896
- headers: {
3897
- [name: string]: unknown;
3898
- };
3899
- content?: never;
3900
- };
3901
- };
3902
- };
3903
- testProjectWebhook: {
3904
- parameters: {
3905
- query?: never;
3906
- header?: never;
3907
- path: {
3908
- id: components["parameters"]["ProjectID"];
3909
- webhook_id: components["parameters"]["WebhookID"];
3910
- };
3911
- cookie?: never;
3912
- };
3913
- requestBody?: {
3914
- content: {
3915
- "application/json": {
3916
- event_type?: string;
3917
- };
3918
- };
3919
- };
3920
- responses: {
3921
- /** @description Webhook test result */
3922
- 200: {
3923
- headers: {
3924
- [name: string]: unknown;
3925
- };
3926
- content: {
3927
- "application/json": components["schemas"]["WebhookTestResult"];
3928
- };
3929
- };
3930
- /** @description Webhook test failed */
3931
- 502: {
3932
- headers: {
3933
- [name: string]: unknown;
3934
- };
3935
- content?: never;
3936
- };
3937
- };
3938
- };
3939
- listProjectWebhookEvents: {
3940
- parameters: {
3941
- query?: {
3942
- limit?: number;
3943
- offset?: number;
3944
- event_type?: string;
3945
- status?: string;
3946
- };
3947
- header?: never;
3948
- path: {
3949
- id: components["parameters"]["ProjectID"];
3950
- webhook_id: components["parameters"]["WebhookID"];
3951
- };
3952
- cookie?: never;
3953
- };
3954
- requestBody?: never;
3955
- responses: {
3956
- /** @description Webhook events */
3957
- 200: {
3958
- headers: {
3959
- [name: string]: unknown;
3960
- };
3961
- content: {
3962
- "application/json": {
3963
- events?: components["schemas"]["OutboundWebhookEvent"][];
3964
- next_cursor?: string;
3965
- };
3966
- };
3967
- };
3968
- };
3969
- };
3970
- createResponse: {
3971
- parameters: {
3972
- query?: never;
3973
- header?: never;
3974
- path?: never;
3975
- cookie?: never;
3976
- };
3977
- requestBody: {
3978
- content: {
3979
- "application/json": components["schemas"]["ResponsesRequest"];
3980
- };
3981
- };
3982
- responses: {
3983
- /** @description Response */
3984
- 200: {
3985
- headers: {
3986
- [name: string]: unknown;
3987
- };
3988
- content: {
3989
- "application/json": components["schemas"]["ResponsesResponse"];
3990
- };
3991
- };
3992
- };
3993
- };
3994
- createResponsesBatch: {
3995
- parameters: {
3996
- query?: never;
3997
- header?: never;
3998
- path?: never;
3999
- cookie?: never;
4000
- };
4001
- requestBody: {
4002
- content: {
4003
- "application/json": components["schemas"]["ResponsesBatchRequest"];
4004
- };
4005
- };
4006
- responses: {
4007
- /** @description Batch response results */
4008
- 200: {
4009
- headers: {
4010
- [name: string]: unknown;
4011
- };
4012
- content: {
4013
- "application/json": components["schemas"]["ResponsesBatchResponse"];
4014
- };
4015
- };
4016
- };
4017
- };
4018
- generateImage: {
4019
- parameters: {
4020
- query?: never;
4021
- header?: never;
4022
- path?: never;
4023
- cookie?: never;
4024
- };
4025
- requestBody: {
4026
- content: {
4027
- "application/json": components["schemas"]["ImageRequest"];
4028
- };
4029
- };
4030
- responses: {
4031
- /** @description Generated images */
4032
- 200: {
4033
- headers: {
4034
- [name: string]: unknown;
4035
- };
4036
- content: {
4037
- "application/json": components["schemas"]["ImageResponse"];
4038
- };
4039
- };
4040
- };
4041
- };
4042
- getImage: {
4043
- parameters: {
4044
- query?: never;
4045
- header?: never;
4046
- path: {
4047
- /** @description Image ID */
4048
- image_id: string;
4049
- };
4050
- cookie?: never;
4051
- };
4052
- requestBody?: never;
4053
- responses: {
4054
- /** @description Image details */
4055
- 200: {
4056
- headers: {
4057
- [name: string]: unknown;
4058
- };
4059
- content: {
4060
- "application/json": components["schemas"]["ImagePinResponse"];
4061
- };
4062
- };
4063
- /** @description Image not found */
4064
- 404: {
4065
- headers: {
4066
- [name: string]: unknown;
4067
- };
4068
- content?: never;
4069
- };
4070
- };
4071
- };
4072
- pinImage: {
4073
- parameters: {
4074
- query?: never;
4075
- header?: never;
4076
- path: {
4077
- /** @description Image ID */
4078
- image_id: string;
4079
- };
4080
- cookie?: never;
4081
- };
4082
- requestBody?: never;
4083
- responses: {
4084
- /** @description Image pinned successfully */
4085
- 200: {
4086
- headers: {
4087
- [name: string]: unknown;
4088
- };
4089
- content: {
4090
- "application/json": components["schemas"]["ImagePinResponse"];
4091
- };
4092
- };
4093
- /** @description Quota exceeded */
4094
- 403: {
4095
- headers: {
4096
- [name: string]: unknown;
4097
- };
4098
- content?: never;
4099
- };
4100
- /** @description Image not found */
4101
- 404: {
4102
- headers: {
4103
- [name: string]: unknown;
4104
- };
4105
- content?: never;
4106
- };
4107
- /** @description Image has expired */
4108
- 410: {
4109
- headers: {
4110
- [name: string]: unknown;
4111
- };
4112
- content?: never;
4113
- };
4114
- };
4115
- };
4116
- unpinImage: {
4117
- parameters: {
4118
- query?: never;
4119
- header?: never;
4120
- path: {
4121
- /** @description Image ID */
4122
- image_id: string;
4123
- };
4124
- cookie?: never;
4125
- };
4126
- requestBody?: never;
4127
- responses: {
4128
- /** @description Image unpinned successfully */
4129
- 200: {
4130
- headers: {
4131
- [name: string]: unknown;
4132
- };
4133
- content: {
4134
- "application/json": components["schemas"]["ImagePinResponse"];
4135
- };
4136
- };
4137
- /** @description Image not found */
4138
- 404: {
4139
- headers: {
4140
- [name: string]: unknown;
4141
- };
4142
- content?: never;
4143
- };
4144
- };
4145
- };
4146
- createRun: {
4147
- parameters: {
4148
- query?: never;
4149
- header?: never;
4150
- path?: never;
4151
- cookie?: never;
4152
- };
4153
- requestBody: {
4154
- content: {
4155
- "application/json": components["schemas"]["RunsCreateRequest"];
4156
- };
4157
- };
4158
- responses: {
4159
- /** @description Run created (or idempotent replay) */
4160
- 200: {
4161
- headers: {
4162
- [name: string]: unknown;
4163
- };
4164
- content: {
4165
- "application/json": components["schemas"]["RunsCreateResponse"];
4166
- };
4167
- };
4168
- };
4169
- };
4170
- getRun: {
4171
- parameters: {
4172
- query?: never;
4173
- header?: never;
4174
- path: {
4175
- run_id: string;
4176
- };
4177
- cookie?: never;
4178
- };
4179
- requestBody?: never;
4180
- responses: {
4181
- /** @description Run snapshot */
4182
- 200: {
4183
- headers: {
4184
- [name: string]: unknown;
4185
- };
4186
- content: {
4187
- "application/json": components["schemas"]["RunsGetResponse"];
4188
- };
4189
- };
4190
- /** @description Run not found */
4191
- 404: {
4192
- headers: {
4193
- [name: string]: unknown;
4194
- };
4195
- content?: never;
4196
- };
4197
- };
4198
- };
4199
- streamRunEvents: {
4200
- parameters: {
4201
- query?: {
4202
- /** @description Returns events where `seq > after_seq`. */
4203
- after_seq?: number;
4204
- /** @description When false, returns currently available events then closes. */
4205
- wait?: boolean;
4206
- /** @description Maximum number of events to send before closing. */
4207
- limit?: number;
4208
- };
4209
- header?: never;
4210
- path: {
4211
- run_id: string;
4212
- };
4213
- cookie?: never;
4214
- };
4215
- requestBody?: never;
4216
- responses: {
4217
- /** @description Event stream (NDJSON or SSE) */
4218
- 200: {
4219
- headers: {
4220
- [name: string]: unknown;
4221
- };
4222
- content: {
4223
- /**
4224
- * @example {"envelope_version":"v0","seq":1,"type":"run_compiled",...}
4225
- * {"envelope_version":"v0","seq":2,"type":"run_started",...}
4226
- */
4227
- "application/x-ndjson": string;
4228
- /**
4229
- * @example event: run_started
4230
- * id: 2
4231
- * data: {"envelope_version":"v0","seq":2,"type":"run_started",...}
4232
- */
4233
- "text/event-stream": string;
4234
- };
4235
- };
4236
- };
4237
- };
4238
- listSessions: {
4239
- parameters: {
4240
- query?: {
4241
- /** @description Maximum number of sessions to return */
4242
- limit?: number;
4243
- /** @description Number of sessions to skip */
4244
- offset?: number;
4245
- /** @description Filter sessions by end user ID */
4246
- end_user_id?: string;
4247
- };
4248
- header?: never;
4249
- path?: never;
4250
- cookie?: never;
4251
- };
4252
- requestBody?: never;
4253
- responses: {
4254
- /** @description Session list */
4255
- 200: {
4256
- headers: {
4257
- [name: string]: unknown;
4258
- };
4259
- content: {
4260
- "application/json": components["schemas"]["SessionListResponse"];
4261
- };
4262
- };
4263
- /** @description API key required */
4264
- 401: {
4265
- headers: {
4266
- [name: string]: unknown;
4267
- };
4268
- content?: never;
4269
- };
4270
- };
4271
- };
4272
- createSession: {
4273
- parameters: {
4274
- query?: never;
4275
- header?: never;
4276
- path?: never;
4277
- cookie?: never;
4278
- };
4279
- requestBody: {
4280
- content: {
4281
- "application/json": components["schemas"]["SessionCreateRequest"];
4282
- };
4283
- };
4284
- responses: {
4285
- /** @description Session created */
4286
- 201: {
4287
- headers: {
4288
- [name: string]: unknown;
4289
- };
4290
- content: {
4291
- "application/json": components["schemas"]["SessionResponse"];
4292
- };
4293
- };
4294
- /** @description Invalid request */
4295
- 400: {
4296
- headers: {
4297
- [name: string]: unknown;
4298
- };
4299
- content?: never;
4300
- };
4301
- /** @description API key required */
4302
- 401: {
4303
- headers: {
4304
- [name: string]: unknown;
4305
- };
4306
- content?: never;
4307
- };
4308
- };
4309
- };
4310
- getSession: {
4311
- parameters: {
4312
- query?: never;
4313
- header?: never;
4314
- path: {
4315
- session_id: string;
4316
- };
4317
- cookie?: never;
4318
- };
4319
- requestBody?: never;
4320
- responses: {
4321
- /** @description Session with messages */
4322
- 200: {
4323
- headers: {
4324
- [name: string]: unknown;
4325
- };
4326
- content: {
4327
- "application/json": components["schemas"]["SessionWithMessagesResponse"];
4328
- };
4329
- };
4330
- /** @description Session not found */
4331
- 404: {
4332
- headers: {
4333
- [name: string]: unknown;
4334
- };
4335
- content?: never;
4336
- };
4337
- };
4338
- };
4339
- deleteSession: {
4340
- parameters: {
4341
- query?: never;
4342
- header?: never;
4343
- path: {
4344
- session_id: string;
4345
- };
4346
- cookie?: never;
4347
- };
4348
- requestBody?: never;
4349
- responses: {
4350
- /** @description Session deleted */
4351
- 204: {
4352
- headers: {
4353
- [name: string]: unknown;
4354
- };
4355
- content?: never;
4356
- };
4357
- /** @description Secret key required for deletion */
4358
- 403: {
4359
- headers: {
4360
- [name: string]: unknown;
4361
- };
4362
- content?: never;
4363
- };
4364
- /** @description Session not found */
4365
- 404: {
4366
- headers: {
4367
- [name: string]: unknown;
4368
- };
4369
- content?: never;
4370
- };
4371
- };
4372
- };
4373
- updateSession: {
4374
- parameters: {
4375
- query?: never;
4376
- header?: never;
4377
- path: {
4378
- session_id: string;
4379
- };
4380
- cookie?: never;
4381
- };
4382
- requestBody: {
4383
- content: {
4384
- "application/json": components["schemas"]["SessionUpdateRequest"];
4385
- };
4386
- };
4387
- responses: {
4388
- /** @description Session updated */
4389
- 200: {
4390
- headers: {
4391
- [name: string]: unknown;
4392
- };
4393
- content: {
4394
- "application/json": components["schemas"]["SessionResponse"];
4395
- };
4396
- };
4397
- /** @description Invalid request */
4398
- 400: {
4399
- headers: {
4400
- [name: string]: unknown;
4401
- };
4402
- content?: never;
4403
- };
4404
- /** @description API key required */
4405
- 401: {
4406
- headers: {
4407
- [name: string]: unknown;
4408
- };
4409
- content?: never;
4410
- };
4411
- /** @description Session not found */
4412
- 404: {
4413
- headers: {
4414
- [name: string]: unknown;
4415
- };
4416
- content?: never;
4417
- };
4418
- };
4419
- };
4420
- addSessionMessage: {
4421
- parameters: {
4422
- query?: never;
4423
- header?: never;
4424
- path: {
4425
- session_id: string;
4426
- };
4427
- cookie?: never;
4428
- };
4429
- requestBody: {
4430
- content: {
4431
- "application/json": components["schemas"]["SessionMessageCreateRequest"];
4432
- };
4433
- };
4434
- responses: {
4435
- /** @description Message appended */
4436
- 201: {
4437
- headers: {
4438
- [name: string]: unknown;
4439
- };
4440
- content: {
4441
- "application/json": components["schemas"]["SessionMessageResponse"];
4442
- };
4443
- };
4444
- /** @description Invalid request */
4445
- 400: {
4446
- headers: {
4447
- [name: string]: unknown;
4448
- };
4449
- content?: never;
4450
- };
4451
- /** @description API key required */
4452
- 401: {
4453
- headers: {
4454
- [name: string]: unknown;
4455
- };
4456
- content?: never;
4457
- };
4458
- /** @description Session not found */
4459
- 404: {
4460
- headers: {
4461
- [name: string]: unknown;
4462
- };
4463
- content?: never;
4464
- };
4465
- };
4466
- };
4467
- listProjectToolHooks: {
4468
- parameters: {
4469
- query?: never;
4470
- header?: never;
4471
- path: {
4472
- id: components["parameters"]["ProjectID"];
4473
- };
4474
- cookie?: never;
4475
- };
4476
- requestBody?: never;
4477
- responses: {
4478
- /** @description Tool hook list */
4479
- 200: {
4480
- headers: {
4481
- [name: string]: unknown;
4482
- };
4483
- content: {
4484
- "application/json": {
4485
- hooks?: components["schemas"]["ToolHookConfig"][];
4486
- };
4487
- };
4488
- };
4489
- };
4490
- };
4491
- createProjectToolHook: {
4492
- parameters: {
4493
- query?: never;
4494
- header?: never;
4495
- path: {
4496
- id: components["parameters"]["ProjectID"];
4497
- };
4498
- cookie?: never;
4499
- };
4500
- requestBody: {
4501
- content: {
4502
- "application/json": components["schemas"]["ToolHookConfigInput"];
4503
- };
4504
- };
4505
- responses: {
4506
- /** @description Tool hook created */
4507
- 201: {
4508
- headers: {
4509
- [name: string]: unknown;
4510
- };
4511
- content: {
4512
- "application/json": {
4513
- hook?: components["schemas"]["ToolHookConfig"];
4514
- signing_secret?: string;
4515
- };
4516
- };
4517
- };
4518
- };
4519
- };
4520
- getProjectToolHook: {
4521
- parameters: {
4522
- query?: never;
4523
- header?: never;
4524
- path: {
4525
- id: components["parameters"]["ProjectID"];
4526
- hook_id: components["parameters"]["ToolHookID"];
4527
- };
4528
- cookie?: never;
4529
- };
4530
- requestBody?: never;
4531
- responses: {
4532
- /** @description Tool hook details */
4533
- 200: {
4534
- headers: {
4535
- [name: string]: unknown;
4536
- };
4537
- content: {
4538
- "application/json": {
4539
- hook?: components["schemas"]["ToolHookConfig"];
4540
- };
4541
- };
4542
- };
4543
- };
4544
- };
4545
- updateProjectToolHook: {
4546
- parameters: {
4547
- query?: never;
4548
- header?: never;
4549
- path: {
4550
- id: components["parameters"]["ProjectID"];
4551
- hook_id: components["parameters"]["ToolHookID"];
4552
- };
4553
- cookie?: never;
4554
- };
4555
- requestBody: {
4556
- content: {
4557
- "application/json": components["schemas"]["ToolHookConfigUpdate"];
4558
- };
4559
- };
4560
- responses: {
4561
- /** @description Tool hook updated */
4562
- 200: {
4563
- headers: {
4564
- [name: string]: unknown;
4565
- };
4566
- content: {
4567
- "application/json": {
4568
- hook?: components["schemas"]["ToolHookConfig"];
4569
- signing_secret?: string;
4570
- };
4571
- };
4572
- };
4573
- };
4574
- };
4575
- deleteProjectToolHook: {
4576
- parameters: {
4577
- query?: never;
4578
- header?: never;
4579
- path: {
4580
- id: components["parameters"]["ProjectID"];
4581
- hook_id: components["parameters"]["ToolHookID"];
4582
- };
4583
- cookie?: never;
4584
- };
4585
- requestBody?: never;
4586
- responses: {
4587
- /** @description Tool hook deleted */
4588
- 204: {
4589
- headers: {
4590
- [name: string]: unknown;
4591
- };
4592
- content?: never;
4593
- };
4594
- };
4595
- };
4596
- listProjectToolHookEvents: {
4597
- parameters: {
4598
- query?: {
4599
- limit?: number;
4600
- };
4601
- header?: never;
4602
- path: {
4603
- id: components["parameters"]["ProjectID"];
4604
- hook_id: components["parameters"]["ToolHookID"];
4605
- };
4606
- cookie?: never;
4607
- };
4608
- requestBody?: never;
4609
- responses: {
4610
- /** @description Tool hook events */
4611
- 200: {
4612
- headers: {
4613
- [name: string]: unknown;
4614
- };
4615
- content: {
4616
- "application/json": {
4617
- events?: components["schemas"]["ToolHookEvent"][];
4618
- };
4619
- };
4620
- };
4621
- };
4622
- };
4623
- testProjectToolHook: {
4624
- parameters: {
4625
- query?: never;
4626
- header?: never;
4627
- path: {
4628
- id: components["parameters"]["ProjectID"];
4629
- hook_id: components["parameters"]["ToolHookID"];
4630
- };
4631
- cookie?: never;
4632
- };
4633
- requestBody?: never;
4634
- responses: {
4635
- /** @description Tool hook test result */
4636
- 200: {
4637
- headers: {
4638
- [name: string]: unknown;
4639
- };
4640
- content: {
4641
- "application/json": components["schemas"]["ToolHookTestResult"];
4642
- };
4643
- };
4644
- /** @description Tool hook test failed */
4645
- 502: {
4646
- headers: {
4647
- [name: string]: unknown;
4648
- };
4649
- content?: never;
4650
- };
4651
- };
4652
- };
4653
- clearSession: {
4654
- parameters: {
4655
- query?: never;
4656
- header?: never;
4657
- path: {
4658
- session_id: string;
4659
- };
4660
- cookie?: never;
4661
- };
4662
- requestBody?: never;
4663
- responses: {
4664
- /** @description Session cleared */
4665
- 200: {
4666
- headers: {
4667
- [name: string]: unknown;
4668
- };
4669
- content: {
4670
- "application/json": components["schemas"]["SessionResponse"];
4671
- };
4672
- };
4673
- /** @description API key required */
4674
- 401: {
4675
- headers: {
4676
- [name: string]: unknown;
4677
- };
4678
- content?: never;
4679
- };
4680
- /** @description Session not found */
4681
- 404: {
4682
- headers: {
4683
- [name: string]: unknown;
4684
- };
4685
- content?: never;
4686
- };
4687
- };
4688
- };
4689
- }
4690
-
4691
- export type { $defs as $, components as c, operations as o, paths as p, webhooks as w };