@bubblebridge/sdk 0.0.0-stage → 0.1.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.
@@ -0,0 +1,1392 @@
1
+ /**
2
+ * This file was auto-generated by openapi-typescript.
3
+ * Do not make direct changes to the file.
4
+ */
5
+ export interface paths {
6
+ "/.well-known/jwks.json": {
7
+ parameters: {
8
+ query?: never;
9
+ header?: never;
10
+ path?: never;
11
+ cookie?: never;
12
+ };
13
+ get: operations["jwks"];
14
+ put?: never;
15
+ post?: never;
16
+ delete?: never;
17
+ options?: never;
18
+ head?: never;
19
+ patch?: never;
20
+ trace?: never;
21
+ };
22
+ "/auth/google": {
23
+ parameters: {
24
+ query?: never;
25
+ header?: never;
26
+ path?: never;
27
+ cookie?: never;
28
+ };
29
+ get?: never;
30
+ put?: never;
31
+ post: operations["google"];
32
+ delete?: never;
33
+ options?: never;
34
+ head?: never;
35
+ patch?: never;
36
+ trace?: never;
37
+ };
38
+ "/auth/logout": {
39
+ parameters: {
40
+ query?: never;
41
+ header?: never;
42
+ path?: never;
43
+ cookie?: never;
44
+ };
45
+ get?: never;
46
+ put?: never;
47
+ post: operations["logout"];
48
+ delete?: never;
49
+ options?: never;
50
+ head?: never;
51
+ patch?: never;
52
+ trace?: never;
53
+ };
54
+ "/auth/me": {
55
+ parameters: {
56
+ query?: never;
57
+ header?: never;
58
+ path?: never;
59
+ cookie?: never;
60
+ };
61
+ get: operations["me"];
62
+ put?: never;
63
+ post?: never;
64
+ delete?: never;
65
+ options?: never;
66
+ head?: never;
67
+ patch?: never;
68
+ trace?: never;
69
+ };
70
+ "/oauth/authorize": {
71
+ parameters: {
72
+ query?: never;
73
+ header?: never;
74
+ path?: never;
75
+ cookie?: never;
76
+ };
77
+ get: operations["authorize"];
78
+ put?: never;
79
+ post: operations["consent"];
80
+ delete?: never;
81
+ options?: never;
82
+ head?: never;
83
+ patch?: never;
84
+ trace?: never;
85
+ };
86
+ "/oauth/revoke": {
87
+ parameters: {
88
+ query?: never;
89
+ header?: never;
90
+ path?: never;
91
+ cookie?: never;
92
+ };
93
+ get?: never;
94
+ put?: never;
95
+ post: operations["revoke"];
96
+ delete?: never;
97
+ options?: never;
98
+ head?: never;
99
+ patch?: never;
100
+ trace?: never;
101
+ };
102
+ "/oauth/token": {
103
+ parameters: {
104
+ query?: never;
105
+ header?: never;
106
+ path?: never;
107
+ cookie?: never;
108
+ };
109
+ get?: never;
110
+ put?: never;
111
+ post: operations["token"];
112
+ delete?: never;
113
+ options?: never;
114
+ head?: never;
115
+ patch?: never;
116
+ trace?: never;
117
+ };
118
+ "/v1/agents": {
119
+ parameters: {
120
+ query?: never;
121
+ header?: never;
122
+ path?: never;
123
+ cookie?: never;
124
+ };
125
+ get: operations["list_catalog"];
126
+ put?: never;
127
+ post?: never;
128
+ delete?: never;
129
+ options?: never;
130
+ head?: never;
131
+ patch?: never;
132
+ trace?: never;
133
+ };
134
+ "/v1/agents/{slug}": {
135
+ parameters: {
136
+ query?: never;
137
+ header?: never;
138
+ path?: never;
139
+ cookie?: never;
140
+ };
141
+ get: operations["get"];
142
+ put?: never;
143
+ post?: never;
144
+ delete?: never;
145
+ options?: never;
146
+ head?: never;
147
+ patch?: never;
148
+ trace?: never;
149
+ };
150
+ "/v1/billing/checkout": {
151
+ parameters: {
152
+ query?: never;
153
+ header?: never;
154
+ path?: never;
155
+ cookie?: never;
156
+ };
157
+ get?: never;
158
+ put?: never;
159
+ post: operations["checkout"];
160
+ delete?: never;
161
+ options?: never;
162
+ head?: never;
163
+ patch?: never;
164
+ trace?: never;
165
+ };
166
+ "/v1/billing/portal": {
167
+ parameters: {
168
+ query?: never;
169
+ header?: never;
170
+ path?: never;
171
+ cookie?: never;
172
+ };
173
+ get?: never;
174
+ put?: never;
175
+ post: operations["portal"];
176
+ delete?: never;
177
+ options?: never;
178
+ head?: never;
179
+ patch?: never;
180
+ trace?: never;
181
+ };
182
+ "/v1/connections": {
183
+ parameters: {
184
+ query?: never;
185
+ header?: never;
186
+ path?: never;
187
+ cookie?: never;
188
+ };
189
+ /** @description Lists the connections of the user. A session sees every connection. An agent token sees only the connections that the user enabled for the agent. */
190
+ get: operations["list_connections"];
191
+ put?: never;
192
+ post?: never;
193
+ delete?: never;
194
+ options?: never;
195
+ head?: never;
196
+ patch?: never;
197
+ trace?: never;
198
+ };
199
+ "/v1/connections/google/callback": {
200
+ parameters: {
201
+ query?: never;
202
+ header?: never;
203
+ path?: never;
204
+ cookie?: never;
205
+ };
206
+ get: operations["google_callback"];
207
+ put?: never;
208
+ post?: never;
209
+ delete?: never;
210
+ options?: never;
211
+ head?: never;
212
+ patch?: never;
213
+ trace?: never;
214
+ };
215
+ "/v1/connections/google/start": {
216
+ parameters: {
217
+ query?: never;
218
+ header?: never;
219
+ path?: never;
220
+ cookie?: never;
221
+ };
222
+ get: operations["google_start"];
223
+ put?: never;
224
+ post?: never;
225
+ delete?: never;
226
+ options?: never;
227
+ head?: never;
228
+ patch?: never;
229
+ trace?: never;
230
+ };
231
+ "/v1/connections/{id}": {
232
+ parameters: {
233
+ query?: never;
234
+ header?: never;
235
+ path?: never;
236
+ cookie?: never;
237
+ };
238
+ get?: never;
239
+ put?: never;
240
+ post?: never;
241
+ delete: operations["remove_connection"];
242
+ options?: never;
243
+ head?: never;
244
+ patch?: never;
245
+ trace?: never;
246
+ };
247
+ "/v1/connections/{id}/agents": {
248
+ parameters: {
249
+ query?: never;
250
+ header?: never;
251
+ path?: never;
252
+ cookie?: never;
253
+ };
254
+ get: operations["list_agents"];
255
+ put?: never;
256
+ post?: never;
257
+ delete?: never;
258
+ options?: never;
259
+ head?: never;
260
+ patch?: never;
261
+ trace?: never;
262
+ };
263
+ "/v1/connections/{id}/agents/{agent_id}": {
264
+ parameters: {
265
+ query?: never;
266
+ header?: never;
267
+ path?: never;
268
+ cookie?: never;
269
+ };
270
+ get?: never;
271
+ put: operations["set_agent"];
272
+ post?: never;
273
+ delete?: never;
274
+ options?: never;
275
+ head?: never;
276
+ patch?: never;
277
+ trace?: never;
278
+ };
279
+ "/v1/grants": {
280
+ parameters: {
281
+ query?: never;
282
+ header?: never;
283
+ path?: never;
284
+ cookie?: never;
285
+ };
286
+ get: operations["list_grants"];
287
+ put?: never;
288
+ post?: never;
289
+ delete?: never;
290
+ options?: never;
291
+ head?: never;
292
+ patch?: never;
293
+ trace?: never;
294
+ };
295
+ "/v1/grants/{agent_id}": {
296
+ parameters: {
297
+ query?: never;
298
+ header?: never;
299
+ path?: never;
300
+ cookie?: never;
301
+ };
302
+ get?: never;
303
+ put?: never;
304
+ post?: never;
305
+ delete: operations["remove_grant"];
306
+ options?: never;
307
+ head?: never;
308
+ patch?: never;
309
+ trace?: never;
310
+ };
311
+ "/v1/providers/{provider}/{path}": {
312
+ parameters: {
313
+ query?: never;
314
+ header?: never;
315
+ path?: never;
316
+ cookie?: never;
317
+ };
318
+ get: operations["forward_get"];
319
+ put?: never;
320
+ post: operations["forward_post"];
321
+ delete?: never;
322
+ options?: never;
323
+ head?: never;
324
+ patch?: never;
325
+ trace?: never;
326
+ };
327
+ "/webhooks/stripe": {
328
+ parameters: {
329
+ query?: never;
330
+ header?: never;
331
+ path?: never;
332
+ cookie?: never;
333
+ };
334
+ get?: never;
335
+ put?: never;
336
+ post: operations["stripe"];
337
+ delete?: never;
338
+ options?: never;
339
+ head?: never;
340
+ patch?: never;
341
+ trace?: never;
342
+ };
343
+ }
344
+ export type webhooks = Record<string, never>;
345
+ export interface components {
346
+ schemas: {
347
+ /** @description One access rule of a connection. */
348
+ AccessRule: {
349
+ agent_id: string;
350
+ agent_name: string;
351
+ enabled: boolean;
352
+ };
353
+ /** @description Response of `GET /v1/connections/:id/agents`. */
354
+ AccessRuleList: {
355
+ agents: components["schemas"]["AccessRule"][];
356
+ };
357
+ /** @description Response of `GET /v1/agents/:slug`. Also an element of the catalog and the consent data. */
358
+ Agent: {
359
+ description: string;
360
+ homepage_url?: string | null;
361
+ id: string;
362
+ logo_url?: string | null;
363
+ name: string;
364
+ requested_scopes: components["schemas"]["Scope"][];
365
+ slug: string;
366
+ };
367
+ /** @description Response of `GET /v1/agents`. */
368
+ AgentList: {
369
+ agents: components["schemas"]["Agent"][];
370
+ };
371
+ /** @description Query of `GET /oauth/authorize`. `scope` is a space-separated list of scope names. */
372
+ AuthorizeQuery: {
373
+ client_id: string;
374
+ code_challenge: string;
375
+ redirect_uri: string;
376
+ scope: string;
377
+ state: string;
378
+ };
379
+ /** @description One connection without its credentials. */
380
+ Connection: {
381
+ account_email: string;
382
+ id: string;
383
+ provider: string;
384
+ scopes: components["schemas"]["Scope"][];
385
+ status: components["schemas"]["ConnectionStatus"];
386
+ };
387
+ /** @description Response of `GET /v1/connections` for a session and for an agent token. */
388
+ ConnectionList: {
389
+ connections: components["schemas"]["Connection"][];
390
+ };
391
+ /** @enum {string} */
392
+ ConnectionStatus: "active" | "reauth_required";
393
+ /** @description Response of `GET /oauth/authorize`. The consent page shows it. */
394
+ ConsentData: {
395
+ agent: components["schemas"]["Agent"];
396
+ connections: components["schemas"]["Connection"][];
397
+ scopes: components["schemas"]["Scope"][];
398
+ };
399
+ /** @description Body of `POST /oauth/authorize`. `connection_ids` holds the checked connections. */
400
+ ConsentRequest: components["schemas"]["AuthorizeQuery"] & {
401
+ connection_ids: string[];
402
+ };
403
+ /** @description Response of `POST /oauth/authorize`. */
404
+ ConsentResponse: {
405
+ redirect_url: string;
406
+ };
407
+ ErrorBody: {
408
+ code: components["schemas"]["ErrorCode"];
409
+ message: string;
410
+ request_id: string;
411
+ };
412
+ /**
413
+ * @description The error codes that the API returns. See the proxy page, section 6.
414
+ * @enum {string}
415
+ */
416
+ ErrorCode: "invalid_request" | "unauthorized" | "subscription_required" | "endpoint_not_allowed" | "scope_missing" | "agent_not_enabled" | "not_found" | "connection_not_found" | "connection_required" | "connection_reauth_required" | "payload_too_large" | "rate_limited" | "internal_error" | "upstream_timeout";
417
+ /** @description The JSON shape of every API error: `{ "error": { ... } }`. */
418
+ ErrorResponse: {
419
+ error: components["schemas"]["ErrorBody"];
420
+ };
421
+ /** @description Body of `POST /auth/google`. */
422
+ GoogleSignInRequest: {
423
+ id_token: string;
424
+ };
425
+ /** @description One added agent. */
426
+ Grant: {
427
+ agent_id: string;
428
+ agent_name: string;
429
+ agent_slug: string;
430
+ scopes: components["schemas"]["Scope"][];
431
+ status: components["schemas"]["GrantStatus"];
432
+ };
433
+ /** @description Response of `GET /v1/grants`. */
434
+ GrantList: {
435
+ grants: components["schemas"]["Grant"][];
436
+ };
437
+ /** @enum {string} */
438
+ GrantStatus: "active" | "revoked";
439
+ /** @description One RSA public key in `GET /.well-known/jwks.json`. */
440
+ Jwk: {
441
+ alg: string;
442
+ e: string;
443
+ kid: string;
444
+ kty: string;
445
+ n: string;
446
+ use: string;
447
+ };
448
+ /** @description Response of `GET /.well-known/jwks.json`. */
449
+ Jwks: {
450
+ keys: components["schemas"]["Jwk"][];
451
+ };
452
+ /** @description Body of `POST /oauth/revoke`. `token` is a refresh token. */
453
+ RevokeRequest: {
454
+ client_id: string;
455
+ client_secret: string;
456
+ token: string;
457
+ };
458
+ /**
459
+ * @description A BubbleBridge scope. Each variant maps to one Google OAuth scope URL.
460
+ * @enum {string}
461
+ */
462
+ Scope: "google.gmail.send" | "google.gmail.readonly" | "google.calendar.events" | "google.calendar.readonly";
463
+ /** @description Body of `PUT /v1/connections/:id/agents/:agentId`. */
464
+ SetAccessRuleRequest: {
465
+ enabled: boolean;
466
+ };
467
+ /** @description Response of `POST /v1/billing/checkout` and `POST /v1/billing/portal`. */
468
+ StripeUrl: {
469
+ url: string;
470
+ };
471
+ /** @description Body of `POST /oauth/token`. The `grant_type` field selects the variant. */
472
+ TokenRequest: {
473
+ client_id: string;
474
+ client_secret: string;
475
+ code: string;
476
+ code_verifier: string;
477
+ /** @enum {string} */
478
+ grant_type: "authorization_code";
479
+ redirect_uri: string;
480
+ } | {
481
+ client_id: string;
482
+ client_secret: string;
483
+ /** @enum {string} */
484
+ grant_type: "refresh_token";
485
+ refresh_token: string;
486
+ };
487
+ /** @description Response of `POST /oauth/token`. `scope` is a space-separated list of scope names. */
488
+ TokenResponse: {
489
+ access_token: string;
490
+ /** Format: int64 */
491
+ expires_in: number;
492
+ refresh_token: string;
493
+ scope: string;
494
+ user_id: string;
495
+ };
496
+ /** @description Response of `POST /auth/google` and `GET /auth/me`. */
497
+ User: {
498
+ avatar_url?: string | null;
499
+ email: string;
500
+ id: string;
501
+ name: string;
502
+ };
503
+ };
504
+ responses: never;
505
+ parameters: never;
506
+ requestBodies: never;
507
+ headers: never;
508
+ pathItems: never;
509
+ }
510
+ export type $defs = Record<string, never>;
511
+ export interface operations {
512
+ jwks: {
513
+ parameters: {
514
+ query?: never;
515
+ header?: never;
516
+ path?: never;
517
+ cookie?: never;
518
+ };
519
+ requestBody?: never;
520
+ responses: {
521
+ 200: {
522
+ headers: {
523
+ [name: string]: unknown;
524
+ };
525
+ content: {
526
+ "application/json": components["schemas"]["Jwks"];
527
+ };
528
+ };
529
+ };
530
+ };
531
+ google: {
532
+ parameters: {
533
+ query?: never;
534
+ header?: never;
535
+ path?: never;
536
+ cookie?: never;
537
+ };
538
+ requestBody: {
539
+ content: {
540
+ "application/json": components["schemas"]["GoogleSignInRequest"];
541
+ };
542
+ };
543
+ responses: {
544
+ 200: {
545
+ headers: {
546
+ [name: string]: unknown;
547
+ };
548
+ content: {
549
+ "application/json": components["schemas"]["User"];
550
+ };
551
+ };
552
+ 401: {
553
+ headers: {
554
+ [name: string]: unknown;
555
+ };
556
+ content: {
557
+ "application/json": components["schemas"]["ErrorResponse"];
558
+ };
559
+ };
560
+ };
561
+ };
562
+ logout: {
563
+ parameters: {
564
+ query?: never;
565
+ header?: never;
566
+ path?: never;
567
+ cookie?: never;
568
+ };
569
+ requestBody?: never;
570
+ responses: {
571
+ 204: {
572
+ headers: {
573
+ [name: string]: unknown;
574
+ };
575
+ content?: never;
576
+ };
577
+ 401: {
578
+ headers: {
579
+ [name: string]: unknown;
580
+ };
581
+ content: {
582
+ "application/json": components["schemas"]["ErrorResponse"];
583
+ };
584
+ };
585
+ };
586
+ };
587
+ me: {
588
+ parameters: {
589
+ query?: never;
590
+ header?: never;
591
+ path?: never;
592
+ cookie?: never;
593
+ };
594
+ requestBody?: never;
595
+ responses: {
596
+ 200: {
597
+ headers: {
598
+ [name: string]: unknown;
599
+ };
600
+ content: {
601
+ "application/json": components["schemas"]["User"];
602
+ };
603
+ };
604
+ 401: {
605
+ headers: {
606
+ [name: string]: unknown;
607
+ };
608
+ content: {
609
+ "application/json": components["schemas"]["ErrorResponse"];
610
+ };
611
+ };
612
+ };
613
+ };
614
+ authorize: {
615
+ parameters: {
616
+ query: {
617
+ client_id: string;
618
+ redirect_uri: string;
619
+ scope: string;
620
+ state: string;
621
+ code_challenge: string;
622
+ };
623
+ header?: never;
624
+ path?: never;
625
+ cookie?: never;
626
+ };
627
+ requestBody?: never;
628
+ responses: {
629
+ 200: {
630
+ headers: {
631
+ [name: string]: unknown;
632
+ };
633
+ content: {
634
+ "application/json": components["schemas"]["ConsentData"];
635
+ };
636
+ };
637
+ 400: {
638
+ headers: {
639
+ [name: string]: unknown;
640
+ };
641
+ content: {
642
+ "application/json": components["schemas"]["ErrorResponse"];
643
+ };
644
+ };
645
+ 401: {
646
+ headers: {
647
+ [name: string]: unknown;
648
+ };
649
+ content: {
650
+ "application/json": components["schemas"]["ErrorResponse"];
651
+ };
652
+ };
653
+ };
654
+ };
655
+ consent: {
656
+ parameters: {
657
+ query?: never;
658
+ header?: never;
659
+ path?: never;
660
+ cookie?: never;
661
+ };
662
+ requestBody: {
663
+ content: {
664
+ "application/json": components["schemas"]["ConsentRequest"];
665
+ };
666
+ };
667
+ responses: {
668
+ 200: {
669
+ headers: {
670
+ [name: string]: unknown;
671
+ };
672
+ content: {
673
+ "application/json": components["schemas"]["ConsentResponse"];
674
+ };
675
+ };
676
+ 400: {
677
+ headers: {
678
+ [name: string]: unknown;
679
+ };
680
+ content: {
681
+ "application/json": components["schemas"]["ErrorResponse"];
682
+ };
683
+ };
684
+ 401: {
685
+ headers: {
686
+ [name: string]: unknown;
687
+ };
688
+ content: {
689
+ "application/json": components["schemas"]["ErrorResponse"];
690
+ };
691
+ };
692
+ 402: {
693
+ headers: {
694
+ [name: string]: unknown;
695
+ };
696
+ content: {
697
+ "application/json": components["schemas"]["ErrorResponse"];
698
+ };
699
+ };
700
+ };
701
+ };
702
+ revoke: {
703
+ parameters: {
704
+ query?: never;
705
+ header?: never;
706
+ path?: never;
707
+ cookie?: never;
708
+ };
709
+ requestBody: {
710
+ content: {
711
+ "application/json": components["schemas"]["RevokeRequest"];
712
+ };
713
+ };
714
+ responses: {
715
+ 204: {
716
+ headers: {
717
+ [name: string]: unknown;
718
+ };
719
+ content?: never;
720
+ };
721
+ 401: {
722
+ headers: {
723
+ [name: string]: unknown;
724
+ };
725
+ content: {
726
+ "application/json": components["schemas"]["ErrorResponse"];
727
+ };
728
+ };
729
+ };
730
+ };
731
+ token: {
732
+ parameters: {
733
+ query?: never;
734
+ header?: never;
735
+ path?: never;
736
+ cookie?: never;
737
+ };
738
+ requestBody: {
739
+ content: {
740
+ "application/json": components["schemas"]["TokenRequest"];
741
+ };
742
+ };
743
+ responses: {
744
+ 200: {
745
+ headers: {
746
+ [name: string]: unknown;
747
+ };
748
+ content: {
749
+ "application/json": components["schemas"]["TokenResponse"];
750
+ };
751
+ };
752
+ 400: {
753
+ headers: {
754
+ [name: string]: unknown;
755
+ };
756
+ content: {
757
+ "application/json": components["schemas"]["ErrorResponse"];
758
+ };
759
+ };
760
+ 401: {
761
+ headers: {
762
+ [name: string]: unknown;
763
+ };
764
+ content: {
765
+ "application/json": components["schemas"]["ErrorResponse"];
766
+ };
767
+ };
768
+ };
769
+ };
770
+ list_catalog: {
771
+ parameters: {
772
+ query?: never;
773
+ header?: never;
774
+ path?: never;
775
+ cookie?: never;
776
+ };
777
+ requestBody?: never;
778
+ responses: {
779
+ 200: {
780
+ headers: {
781
+ [name: string]: unknown;
782
+ };
783
+ content: {
784
+ "application/json": components["schemas"]["AgentList"];
785
+ };
786
+ };
787
+ 401: {
788
+ headers: {
789
+ [name: string]: unknown;
790
+ };
791
+ content: {
792
+ "application/json": components["schemas"]["ErrorResponse"];
793
+ };
794
+ };
795
+ };
796
+ };
797
+ get: {
798
+ parameters: {
799
+ query?: never;
800
+ header?: never;
801
+ path: {
802
+ /** @description The agent slug */
803
+ slug: string;
804
+ };
805
+ cookie?: never;
806
+ };
807
+ requestBody?: never;
808
+ responses: {
809
+ 200: {
810
+ headers: {
811
+ [name: string]: unknown;
812
+ };
813
+ content: {
814
+ "application/json": components["schemas"]["Agent"];
815
+ };
816
+ };
817
+ 401: {
818
+ headers: {
819
+ [name: string]: unknown;
820
+ };
821
+ content: {
822
+ "application/json": components["schemas"]["ErrorResponse"];
823
+ };
824
+ };
825
+ 404: {
826
+ headers: {
827
+ [name: string]: unknown;
828
+ };
829
+ content: {
830
+ "application/json": components["schemas"]["ErrorResponse"];
831
+ };
832
+ };
833
+ };
834
+ };
835
+ checkout: {
836
+ parameters: {
837
+ query?: never;
838
+ header?: never;
839
+ path?: never;
840
+ cookie?: never;
841
+ };
842
+ requestBody?: never;
843
+ responses: {
844
+ 200: {
845
+ headers: {
846
+ [name: string]: unknown;
847
+ };
848
+ content: {
849
+ "application/json": components["schemas"]["StripeUrl"];
850
+ };
851
+ };
852
+ 401: {
853
+ headers: {
854
+ [name: string]: unknown;
855
+ };
856
+ content: {
857
+ "application/json": components["schemas"]["ErrorResponse"];
858
+ };
859
+ };
860
+ };
861
+ };
862
+ portal: {
863
+ parameters: {
864
+ query?: never;
865
+ header?: never;
866
+ path?: never;
867
+ cookie?: never;
868
+ };
869
+ requestBody?: never;
870
+ responses: {
871
+ 200: {
872
+ headers: {
873
+ [name: string]: unknown;
874
+ };
875
+ content: {
876
+ "application/json": components["schemas"]["StripeUrl"];
877
+ };
878
+ };
879
+ 401: {
880
+ headers: {
881
+ [name: string]: unknown;
882
+ };
883
+ content: {
884
+ "application/json": components["schemas"]["ErrorResponse"];
885
+ };
886
+ };
887
+ 404: {
888
+ headers: {
889
+ [name: string]: unknown;
890
+ };
891
+ content: {
892
+ "application/json": components["schemas"]["ErrorResponse"];
893
+ };
894
+ };
895
+ };
896
+ };
897
+ list_connections: {
898
+ parameters: {
899
+ query?: never;
900
+ header?: never;
901
+ path?: never;
902
+ cookie?: never;
903
+ };
904
+ requestBody?: never;
905
+ responses: {
906
+ 200: {
907
+ headers: {
908
+ [name: string]: unknown;
909
+ };
910
+ content: {
911
+ "application/json": components["schemas"]["ConnectionList"];
912
+ };
913
+ };
914
+ 401: {
915
+ headers: {
916
+ [name: string]: unknown;
917
+ };
918
+ content: {
919
+ "application/json": components["schemas"]["ErrorResponse"];
920
+ };
921
+ };
922
+ };
923
+ };
924
+ google_callback: {
925
+ parameters: {
926
+ query: {
927
+ code: string;
928
+ state: string;
929
+ };
930
+ header?: never;
931
+ path?: never;
932
+ cookie?: never;
933
+ };
934
+ requestBody?: never;
935
+ responses: {
936
+ /** @description Redirect to the connections page */
937
+ 303: {
938
+ headers: {
939
+ [name: string]: unknown;
940
+ };
941
+ content?: never;
942
+ };
943
+ 400: {
944
+ headers: {
945
+ [name: string]: unknown;
946
+ };
947
+ content: {
948
+ "application/json": components["schemas"]["ErrorResponse"];
949
+ };
950
+ };
951
+ 401: {
952
+ headers: {
953
+ [name: string]: unknown;
954
+ };
955
+ content: {
956
+ "application/json": components["schemas"]["ErrorResponse"];
957
+ };
958
+ };
959
+ };
960
+ };
961
+ google_start: {
962
+ parameters: {
963
+ query: {
964
+ scopes: string;
965
+ };
966
+ header?: never;
967
+ path?: never;
968
+ cookie?: never;
969
+ };
970
+ requestBody?: never;
971
+ responses: {
972
+ /** @description Redirect to the Google consent screen */
973
+ 302: {
974
+ headers: {
975
+ [name: string]: unknown;
976
+ };
977
+ content?: never;
978
+ };
979
+ 400: {
980
+ headers: {
981
+ [name: string]: unknown;
982
+ };
983
+ content: {
984
+ "application/json": components["schemas"]["ErrorResponse"];
985
+ };
986
+ };
987
+ 401: {
988
+ headers: {
989
+ [name: string]: unknown;
990
+ };
991
+ content: {
992
+ "application/json": components["schemas"]["ErrorResponse"];
993
+ };
994
+ };
995
+ };
996
+ };
997
+ remove_connection: {
998
+ parameters: {
999
+ query?: never;
1000
+ header?: never;
1001
+ path: {
1002
+ /** @description The connection ID */
1003
+ id: string;
1004
+ };
1005
+ cookie?: never;
1006
+ };
1007
+ requestBody?: never;
1008
+ responses: {
1009
+ /** @description The connection and its access rules are deleted */
1010
+ 204: {
1011
+ headers: {
1012
+ [name: string]: unknown;
1013
+ };
1014
+ content?: never;
1015
+ };
1016
+ 401: {
1017
+ headers: {
1018
+ [name: string]: unknown;
1019
+ };
1020
+ content: {
1021
+ "application/json": components["schemas"]["ErrorResponse"];
1022
+ };
1023
+ };
1024
+ 404: {
1025
+ headers: {
1026
+ [name: string]: unknown;
1027
+ };
1028
+ content: {
1029
+ "application/json": components["schemas"]["ErrorResponse"];
1030
+ };
1031
+ };
1032
+ };
1033
+ };
1034
+ list_agents: {
1035
+ parameters: {
1036
+ query?: never;
1037
+ header?: never;
1038
+ path: {
1039
+ /** @description The connection ID */
1040
+ id: string;
1041
+ };
1042
+ cookie?: never;
1043
+ };
1044
+ requestBody?: never;
1045
+ responses: {
1046
+ 200: {
1047
+ headers: {
1048
+ [name: string]: unknown;
1049
+ };
1050
+ content: {
1051
+ "application/json": components["schemas"]["AccessRuleList"];
1052
+ };
1053
+ };
1054
+ 401: {
1055
+ headers: {
1056
+ [name: string]: unknown;
1057
+ };
1058
+ content: {
1059
+ "application/json": components["schemas"]["ErrorResponse"];
1060
+ };
1061
+ };
1062
+ 404: {
1063
+ headers: {
1064
+ [name: string]: unknown;
1065
+ };
1066
+ content: {
1067
+ "application/json": components["schemas"]["ErrorResponse"];
1068
+ };
1069
+ };
1070
+ };
1071
+ };
1072
+ set_agent: {
1073
+ parameters: {
1074
+ query?: never;
1075
+ header?: never;
1076
+ path: {
1077
+ /** @description The connection ID */
1078
+ id: string;
1079
+ /** @description The agent ID */
1080
+ agent_id: string;
1081
+ };
1082
+ cookie?: never;
1083
+ };
1084
+ requestBody: {
1085
+ content: {
1086
+ "application/json": components["schemas"]["SetAccessRuleRequest"];
1087
+ };
1088
+ };
1089
+ responses: {
1090
+ /** @description The access rule is updated */
1091
+ 204: {
1092
+ headers: {
1093
+ [name: string]: unknown;
1094
+ };
1095
+ content?: never;
1096
+ };
1097
+ 401: {
1098
+ headers: {
1099
+ [name: string]: unknown;
1100
+ };
1101
+ content: {
1102
+ "application/json": components["schemas"]["ErrorResponse"];
1103
+ };
1104
+ };
1105
+ 404: {
1106
+ headers: {
1107
+ [name: string]: unknown;
1108
+ };
1109
+ content: {
1110
+ "application/json": components["schemas"]["ErrorResponse"];
1111
+ };
1112
+ };
1113
+ };
1114
+ };
1115
+ list_grants: {
1116
+ parameters: {
1117
+ query?: never;
1118
+ header?: never;
1119
+ path?: never;
1120
+ cookie?: never;
1121
+ };
1122
+ requestBody?: never;
1123
+ responses: {
1124
+ 200: {
1125
+ headers: {
1126
+ [name: string]: unknown;
1127
+ };
1128
+ content: {
1129
+ "application/json": components["schemas"]["GrantList"];
1130
+ };
1131
+ };
1132
+ 401: {
1133
+ headers: {
1134
+ [name: string]: unknown;
1135
+ };
1136
+ content: {
1137
+ "application/json": components["schemas"]["ErrorResponse"];
1138
+ };
1139
+ };
1140
+ };
1141
+ };
1142
+ remove_grant: {
1143
+ parameters: {
1144
+ query?: never;
1145
+ header?: never;
1146
+ path: {
1147
+ /** @description The agent ID */
1148
+ agent_id: string;
1149
+ };
1150
+ cookie?: never;
1151
+ };
1152
+ requestBody?: never;
1153
+ responses: {
1154
+ /** @description The grant is revoked */
1155
+ 204: {
1156
+ headers: {
1157
+ [name: string]: unknown;
1158
+ };
1159
+ content?: never;
1160
+ };
1161
+ 401: {
1162
+ headers: {
1163
+ [name: string]: unknown;
1164
+ };
1165
+ content: {
1166
+ "application/json": components["schemas"]["ErrorResponse"];
1167
+ };
1168
+ };
1169
+ 404: {
1170
+ headers: {
1171
+ [name: string]: unknown;
1172
+ };
1173
+ content: {
1174
+ "application/json": components["schemas"]["ErrorResponse"];
1175
+ };
1176
+ };
1177
+ };
1178
+ };
1179
+ forward_get: {
1180
+ parameters: {
1181
+ query?: never;
1182
+ header?: {
1183
+ /** @description The connection ID if the user has more than one enabled connection */
1184
+ "X-BubbleBridge-Connection"?: string | null;
1185
+ };
1186
+ path: {
1187
+ /** @description The provider name, such as google */
1188
+ provider: string;
1189
+ /** @description The provider path, such as gmail/v1/users/me/messages */
1190
+ path: string;
1191
+ };
1192
+ cookie?: never;
1193
+ };
1194
+ requestBody?: never;
1195
+ responses: {
1196
+ /** @description The upstream response */
1197
+ 200: {
1198
+ headers: {
1199
+ [name: string]: unknown;
1200
+ };
1201
+ content?: never;
1202
+ };
1203
+ 400: {
1204
+ headers: {
1205
+ [name: string]: unknown;
1206
+ };
1207
+ content: {
1208
+ "application/json": components["schemas"]["ErrorResponse"];
1209
+ };
1210
+ };
1211
+ 401: {
1212
+ headers: {
1213
+ [name: string]: unknown;
1214
+ };
1215
+ content: {
1216
+ "application/json": components["schemas"]["ErrorResponse"];
1217
+ };
1218
+ };
1219
+ 403: {
1220
+ headers: {
1221
+ [name: string]: unknown;
1222
+ };
1223
+ content: {
1224
+ "application/json": components["schemas"]["ErrorResponse"];
1225
+ };
1226
+ };
1227
+ 404: {
1228
+ headers: {
1229
+ [name: string]: unknown;
1230
+ };
1231
+ content: {
1232
+ "application/json": components["schemas"]["ErrorResponse"];
1233
+ };
1234
+ };
1235
+ 409: {
1236
+ headers: {
1237
+ [name: string]: unknown;
1238
+ };
1239
+ content: {
1240
+ "application/json": components["schemas"]["ErrorResponse"];
1241
+ };
1242
+ };
1243
+ 413: {
1244
+ headers: {
1245
+ [name: string]: unknown;
1246
+ };
1247
+ content: {
1248
+ "application/json": components["schemas"]["ErrorResponse"];
1249
+ };
1250
+ };
1251
+ 429: {
1252
+ headers: {
1253
+ [name: string]: unknown;
1254
+ };
1255
+ content: {
1256
+ "application/json": components["schemas"]["ErrorResponse"];
1257
+ };
1258
+ };
1259
+ 504: {
1260
+ headers: {
1261
+ [name: string]: unknown;
1262
+ };
1263
+ content: {
1264
+ "application/json": components["schemas"]["ErrorResponse"];
1265
+ };
1266
+ };
1267
+ };
1268
+ };
1269
+ forward_post: {
1270
+ parameters: {
1271
+ query?: never;
1272
+ header?: {
1273
+ /** @description The connection ID if the user has more than one enabled connection */
1274
+ "X-BubbleBridge-Connection"?: string | null;
1275
+ };
1276
+ path: {
1277
+ /** @description The provider name, such as google */
1278
+ provider: string;
1279
+ /** @description The provider path, such as gmail/v1/users/me/messages */
1280
+ path: string;
1281
+ };
1282
+ cookie?: never;
1283
+ };
1284
+ requestBody?: never;
1285
+ responses: {
1286
+ /** @description The upstream response */
1287
+ 200: {
1288
+ headers: {
1289
+ [name: string]: unknown;
1290
+ };
1291
+ content?: never;
1292
+ };
1293
+ 400: {
1294
+ headers: {
1295
+ [name: string]: unknown;
1296
+ };
1297
+ content: {
1298
+ "application/json": components["schemas"]["ErrorResponse"];
1299
+ };
1300
+ };
1301
+ 401: {
1302
+ headers: {
1303
+ [name: string]: unknown;
1304
+ };
1305
+ content: {
1306
+ "application/json": components["schemas"]["ErrorResponse"];
1307
+ };
1308
+ };
1309
+ 403: {
1310
+ headers: {
1311
+ [name: string]: unknown;
1312
+ };
1313
+ content: {
1314
+ "application/json": components["schemas"]["ErrorResponse"];
1315
+ };
1316
+ };
1317
+ 404: {
1318
+ headers: {
1319
+ [name: string]: unknown;
1320
+ };
1321
+ content: {
1322
+ "application/json": components["schemas"]["ErrorResponse"];
1323
+ };
1324
+ };
1325
+ 409: {
1326
+ headers: {
1327
+ [name: string]: unknown;
1328
+ };
1329
+ content: {
1330
+ "application/json": components["schemas"]["ErrorResponse"];
1331
+ };
1332
+ };
1333
+ 413: {
1334
+ headers: {
1335
+ [name: string]: unknown;
1336
+ };
1337
+ content: {
1338
+ "application/json": components["schemas"]["ErrorResponse"];
1339
+ };
1340
+ };
1341
+ 429: {
1342
+ headers: {
1343
+ [name: string]: unknown;
1344
+ };
1345
+ content: {
1346
+ "application/json": components["schemas"]["ErrorResponse"];
1347
+ };
1348
+ };
1349
+ 504: {
1350
+ headers: {
1351
+ [name: string]: unknown;
1352
+ };
1353
+ content: {
1354
+ "application/json": components["schemas"]["ErrorResponse"];
1355
+ };
1356
+ };
1357
+ };
1358
+ };
1359
+ stripe: {
1360
+ parameters: {
1361
+ query?: never;
1362
+ header?: never;
1363
+ path?: never;
1364
+ cookie?: never;
1365
+ };
1366
+ requestBody?: never;
1367
+ responses: {
1368
+ 200: {
1369
+ headers: {
1370
+ [name: string]: unknown;
1371
+ };
1372
+ content?: never;
1373
+ };
1374
+ 400: {
1375
+ headers: {
1376
+ [name: string]: unknown;
1377
+ };
1378
+ content: {
1379
+ "application/json": components["schemas"]["ErrorResponse"];
1380
+ };
1381
+ };
1382
+ 401: {
1383
+ headers: {
1384
+ [name: string]: unknown;
1385
+ };
1386
+ content: {
1387
+ "application/json": components["schemas"]["ErrorResponse"];
1388
+ };
1389
+ };
1390
+ };
1391
+ };
1392
+ }