@arbium/enterprise-agent-connect-client 0.2.0 → 0.2.1-dev.7b4e802

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { type AppLive } from "./steps.js";
2
- import type { Agent, CheckOutcome, Connection, Connector, EventSubscriptionInput, EventTriggerInput, Limits, SiteAccess, TeamsTriggerInput } from "./types.js";
2
+ import type { Agent, Body, CheckOutcome, Connection, Connector, EventSubscriptionInput, EventTriggerInput, Limits, SiteAccess, TeamsTriggerInput } from "./types.js";
3
3
  export * from "./steps.js";
4
4
  export type * from "./types.js";
5
5
  /** A refusal the admin should read (4xx with an `error`): bad input, a failed connection
@@ -281,6 +281,7 @@ export declare function createClient(options: ClientOptions): {
281
281
  revoke: string;
282
282
  http?: {
283
283
  baseUrl: string;
284
+ allowedHosts?: string[];
284
285
  auth: {
285
286
  type: "header";
286
287
  header: string;
@@ -299,6 +300,8 @@ export declare function createClient(options: ClientOptions): {
299
300
  clientId: string;
300
301
  clientSecret: string;
301
302
  scope?: string;
303
+ clientAuth?: "body" | "basic";
304
+ audience?: string;
302
305
  } | {
303
306
  type: "query";
304
307
  param: string;
@@ -307,6 +310,570 @@ export declare function createClient(options: ClientOptions): {
307
310
  headers: {
308
311
  [key: string]: string;
309
312
  };
313
+ fieldHeaders: {
314
+ [key: string]: string;
315
+ };
316
+ tools: {
317
+ name: string;
318
+ description: string;
319
+ method: "GET" | "POST" | "PUT" | "PATCH" | "DELETE";
320
+ path: string;
321
+ params: {
322
+ [key: string]: {
323
+ type: "string" | "number" | "integer" | "boolean" | "array";
324
+ description: string;
325
+ in: "path" | "query" | "body";
326
+ name?: string;
327
+ required: boolean;
328
+ default?: (string | number | boolean) | (string | number | boolean)[];
329
+ enum?: (string | number | boolean)[];
330
+ items?: "string" | "number" | "integer" | "boolean";
331
+ join?: string;
332
+ limit?: string;
333
+ };
334
+ };
335
+ destructive: boolean;
336
+ answerLimits: {
337
+ field: string;
338
+ limit: string;
339
+ }[];
340
+ result?: {
341
+ items?: string;
342
+ fields?: string[];
343
+ };
344
+ paging?: {
345
+ param: string;
346
+ body: string;
347
+ } | {
348
+ param: string;
349
+ header: string;
350
+ } | {
351
+ param: string;
352
+ link: true;
353
+ };
354
+ }[];
355
+ allowInsecureHttp: boolean;
356
+ };
357
+ soap?: {
358
+ endpoint: string;
359
+ version: "1.1" | "1.2";
360
+ namespaces: {
361
+ [key: string]: string;
362
+ };
363
+ auth?: {
364
+ type: "header";
365
+ header: string;
366
+ value: string;
367
+ prefix?: string;
368
+ } | {
369
+ type: "bearer";
370
+ token: string;
371
+ } | {
372
+ type: "basic";
373
+ username: string;
374
+ password: string;
375
+ };
376
+ wsSecurity?: {
377
+ username: string;
378
+ password: string;
379
+ digest: boolean;
380
+ };
381
+ verify?: {
382
+ tool: string;
383
+ args: {
384
+ [key: string]: string | number | boolean;
385
+ };
386
+ show: string;
387
+ };
388
+ tools: {
389
+ name: string;
390
+ description: string;
391
+ operation: string;
392
+ soapAction?: string;
393
+ body: string;
394
+ params: {
395
+ [key: string]: {
396
+ type: "string" | "number" | "integer" | "boolean";
397
+ description: string;
398
+ required: boolean;
399
+ limit?: string;
400
+ };
401
+ };
402
+ result?: string;
403
+ fields?: string[];
404
+ readOnly: boolean;
405
+ destructive: boolean;
406
+ answerLimits: {
407
+ field: string;
408
+ limit: string;
409
+ }[];
410
+ }[];
411
+ allowInsecureHttp: boolean;
412
+ };
413
+ odata?: {
414
+ serviceRoot: string;
415
+ allowedHosts?: string[];
416
+ version: "2" | "4";
417
+ auth: {
418
+ type: "header";
419
+ header: string;
420
+ value: string;
421
+ prefix?: string;
422
+ } | {
423
+ type: "bearer";
424
+ token: string;
425
+ } | {
426
+ type: "basic";
427
+ username: string;
428
+ password: string;
429
+ } | {
430
+ type: "oauth2";
431
+ tokenUrl: string;
432
+ clientId: string;
433
+ clientSecret: string;
434
+ scope?: string;
435
+ clientAuth?: "body" | "basic";
436
+ audience?: string;
437
+ } | {
438
+ type: "query";
439
+ param: string;
440
+ value: string;
441
+ };
442
+ headers: {
443
+ [key: string]: string;
444
+ };
445
+ csrf: boolean;
446
+ paging: "skip" | "server";
447
+ tools: {
448
+ name: string;
449
+ description: string;
450
+ kind: "list" | "get" | "create" | "update" | "function" | "action";
451
+ entitySet?: string;
452
+ function?: string;
453
+ key: {
454
+ [key: string]: {
455
+ type: "string" | "integer" | "number" | "decimal" | "boolean" | "guid" | "datetime" | "datetimeoffset";
456
+ description: string;
457
+ property?: string;
458
+ required?: boolean;
459
+ limit?: string;
460
+ };
461
+ };
462
+ filters: {
463
+ [key: string]: {
464
+ type: "string" | "integer" | "number" | "decimal" | "boolean" | "guid" | "datetime" | "datetimeoffset";
465
+ description: string;
466
+ property?: string;
467
+ required?: boolean;
468
+ limit?: string;
469
+ op: "eq" | "ne" | "gt" | "ge" | "lt" | "le" | "contains" | "startswith";
470
+ };
471
+ };
472
+ fields: {
473
+ [key: string]: {
474
+ type: "string" | "integer" | "number" | "decimal" | "boolean" | "guid" | "datetime" | "datetimeoffset";
475
+ description: string;
476
+ property?: string;
477
+ required?: boolean;
478
+ limit?: string;
479
+ };
480
+ };
481
+ params: {
482
+ [key: string]: {
483
+ type: "string" | "integer" | "number" | "decimal" | "boolean" | "guid" | "datetime" | "datetimeoffset";
484
+ description: string;
485
+ property?: string;
486
+ required?: boolean;
487
+ limit?: string;
488
+ };
489
+ };
490
+ select: string[];
491
+ orderBy?: string;
492
+ top: number;
493
+ destructive: boolean;
494
+ answerLimits: {
495
+ field: string;
496
+ limit: string;
497
+ }[];
498
+ }[];
499
+ allowInsecureHttp: boolean;
500
+ };
501
+ sql?: {
502
+ engine: "postgres" | "sqlserver" | "mysql" | "oracle";
503
+ host: string;
504
+ port?: number;
505
+ database: string;
506
+ auth: {
507
+ user: string;
508
+ password: string;
509
+ };
510
+ tls: "verify" | "insecure" | "off";
511
+ timeoutSeconds: number;
512
+ maxRows: number;
513
+ tools: {
514
+ name: string;
515
+ description: string;
516
+ sql: string;
517
+ params: {
518
+ [key: string]: {
519
+ type: "string" | "number" | "integer" | "boolean";
520
+ description: string;
521
+ required: boolean;
522
+ limit?: string;
523
+ };
524
+ };
525
+ write: boolean;
526
+ destructive: boolean;
527
+ answerLimits: {
528
+ column: string;
529
+ limit: string;
530
+ }[];
531
+ }[];
532
+ };
533
+ events?: {
534
+ types: {
535
+ id: string;
536
+ label: string;
537
+ }[];
538
+ fields: {
539
+ [key: string]: string;
540
+ };
541
+ limits: {
542
+ [key: string]: string;
543
+ };
544
+ webhook?: {
545
+ verify: {
546
+ type: "hmac-sha256";
547
+ header: string;
548
+ prefix: string;
549
+ } | {
550
+ type: "token";
551
+ header: string;
552
+ } | {
553
+ type: "none";
554
+ };
555
+ allowInsecure: boolean;
556
+ type: {
557
+ field: string;
558
+ } | {
559
+ header: string;
560
+ };
561
+ deliveryId?: {
562
+ field: string;
563
+ } | {
564
+ header: string;
565
+ };
566
+ timestamp?: {
567
+ at: {
568
+ field: string;
569
+ } | {
570
+ header: string;
571
+ };
572
+ unit: "s" | "ms" | "iso";
573
+ toleranceSeconds: number;
574
+ };
575
+ setup: {
576
+ title: string;
577
+ body: string;
578
+ link?: {
579
+ label: string;
580
+ href: string;
581
+ };
582
+ copy?: string[];
583
+ shell?: "bash" | "powershell";
584
+ permissions?: boolean;
585
+ certificate?: boolean;
586
+ click?: string[];
587
+ clickUnavailable?: true;
588
+ siteRole?: "read" | "write";
589
+ agentCheck?: boolean;
590
+ confirm?: string;
591
+ live?: string;
592
+ settings?: {
593
+ id: string;
594
+ label: string;
595
+ help?: string;
596
+ placeholder?: string;
597
+ pattern: string;
598
+ }[];
599
+ option?: {
600
+ field: string;
601
+ value: string;
602
+ };
603
+ }[];
604
+ register?: {
605
+ method: "GET" | "POST" | "PUT";
606
+ path: string;
607
+ body?: unknown;
608
+ location: string;
609
+ };
610
+ };
611
+ self?: {
612
+ request: {
613
+ method: "GET" | "POST" | "PUT";
614
+ path: string;
615
+ body?: unknown;
616
+ };
617
+ id: string;
618
+ fields: string[];
619
+ };
620
+ poll?: {
621
+ request: {
622
+ method: "GET" | "POST" | "PUT";
623
+ path: string;
624
+ body?: unknown;
625
+ };
626
+ filter?: string;
627
+ items: string;
628
+ wrap?: string;
629
+ cursor: string;
630
+ deliveryId: string[];
631
+ types: {
632
+ type: string;
633
+ since?: string;
634
+ }[];
635
+ };
636
+ };
637
+ }[]>;
638
+ /** The deployment's apps and the organization's own internal apps. */
639
+ orgConnectors: (o: string) => Promise<{
640
+ id: string;
641
+ name: string;
642
+ description: string;
643
+ logo: string;
644
+ identity: string;
645
+ signsInAs?: "agentBot";
646
+ provider?: string;
647
+ order?: number;
648
+ connectionKind: "guided";
649
+ accountKey: string;
650
+ scopes?: string[];
651
+ setup: {
652
+ title: string;
653
+ body: string;
654
+ link?: {
655
+ label: string;
656
+ href: string;
657
+ };
658
+ copy?: string[];
659
+ shell?: "bash" | "powershell";
660
+ permissions?: boolean;
661
+ certificate?: boolean;
662
+ click?: string[];
663
+ clickUnavailable?: true;
664
+ siteRole?: "read" | "write";
665
+ agentCheck?: boolean;
666
+ confirm?: string;
667
+ live?: string;
668
+ settings?: {
669
+ id: string;
670
+ label: string;
671
+ help?: string;
672
+ placeholder?: string;
673
+ pattern: string;
674
+ }[];
675
+ option?: {
676
+ field: string;
677
+ value: string;
678
+ };
679
+ capabilities?: string[];
680
+ }[];
681
+ afterConnect: {
682
+ title: string;
683
+ body: string;
684
+ link?: {
685
+ label: string;
686
+ href: string;
687
+ };
688
+ copy?: string[];
689
+ shell?: "bash" | "powershell";
690
+ permissions?: boolean;
691
+ certificate?: boolean;
692
+ click?: string[];
693
+ clickUnavailable?: true;
694
+ siteRole?: "read" | "write";
695
+ agentCheck?: boolean;
696
+ confirm?: string;
697
+ live?: string;
698
+ settings?: {
699
+ id: string;
700
+ label: string;
701
+ help?: string;
702
+ placeholder?: string;
703
+ pattern: string;
704
+ }[];
705
+ option?: {
706
+ field: string;
707
+ value: string;
708
+ };
709
+ capabilities?: string[];
710
+ }[];
711
+ fields: {
712
+ id: string;
713
+ label: string;
714
+ help?: string;
715
+ placeholder?: string;
716
+ secret: boolean;
717
+ options?: {
718
+ value: string;
719
+ label: string;
720
+ description: string;
721
+ scopes?: string[];
722
+ }[];
723
+ requires?: {
724
+ field: string;
725
+ value: string;
726
+ };
727
+ optional: boolean;
728
+ }[];
729
+ capabilities: {
730
+ id: string;
731
+ label: string;
732
+ description: string;
733
+ required: boolean;
734
+ destructive: boolean;
735
+ costs?: boolean;
736
+ scopes: string[];
737
+ roles?: string[];
738
+ permissions: string[];
739
+ fill?: {
740
+ [key: string]: string;
741
+ };
742
+ note?: string;
743
+ forbidden?: string;
744
+ claudeKey?: boolean;
745
+ tools: string[];
746
+ }[];
747
+ limits: {
748
+ id: string;
749
+ label: string;
750
+ help: string;
751
+ kind: "list" | "text" | "map";
752
+ required: boolean;
753
+ pattern?: string;
754
+ keys?: string;
755
+ }[];
756
+ siteAccess?: {
757
+ grant: {
758
+ title: string;
759
+ body: string;
760
+ link?: {
761
+ label: string;
762
+ href: string;
763
+ };
764
+ copy?: string[];
765
+ shell?: "bash" | "powershell";
766
+ permissions?: boolean;
767
+ certificate?: boolean;
768
+ click?: string[];
769
+ clickUnavailable?: true;
770
+ siteRole?: "read" | "write";
771
+ agentCheck?: boolean;
772
+ confirm?: string;
773
+ live?: string;
774
+ settings?: {
775
+ id: string;
776
+ label: string;
777
+ help?: string;
778
+ placeholder?: string;
779
+ pattern: string;
780
+ }[];
781
+ option?: {
782
+ field: string;
783
+ value: string;
784
+ };
785
+ }[];
786
+ request: string;
787
+ write: string[];
788
+ };
789
+ agentAccess?: {
790
+ limit: string;
791
+ label: string;
792
+ path: string & (unknown & unknown);
793
+ granted: string;
794
+ notGranted: string;
795
+ notFound: string;
796
+ probes: {
797
+ [key: string]: {
798
+ method: "GET" | "POST" | "PATCH";
799
+ path: string & (unknown & unknown);
800
+ body?: unknown;
801
+ allowed: number[];
802
+ };
803
+ };
804
+ missing?: string;
805
+ };
806
+ verify: {
807
+ method: "GET" | "POST";
808
+ path: string;
809
+ label: string;
810
+ show: string;
811
+ name?: string;
812
+ match?: {
813
+ [key: string]: string | number | boolean;
814
+ };
815
+ body?: {
816
+ [key: string]: unknown;
817
+ };
818
+ ifEmpty?: string;
819
+ } | {
820
+ label: string;
821
+ check: string;
822
+ ifEmpty?: string;
823
+ };
824
+ discover?: {
825
+ method: "GET" | "POST";
826
+ path: string;
827
+ label: string;
828
+ show: string;
829
+ name?: string;
830
+ match?: {
831
+ [key: string]: string | number | boolean;
832
+ };
833
+ body?: {
834
+ [key: string]: unknown;
835
+ };
836
+ ifEmpty?: string;
837
+ } | {
838
+ label: string;
839
+ check: string;
840
+ ifEmpty?: string;
841
+ };
842
+ revoke: string;
843
+ http?: {
844
+ baseUrl: string;
845
+ allowedHosts?: string[];
846
+ auth: {
847
+ type: "header";
848
+ header: string;
849
+ value: string;
850
+ prefix?: string;
851
+ } | {
852
+ type: "bearer";
853
+ token: string;
854
+ } | {
855
+ type: "basic";
856
+ username: string;
857
+ password: string;
858
+ } | {
859
+ type: "oauth2";
860
+ tokenUrl: string;
861
+ clientId: string;
862
+ clientSecret: string;
863
+ scope?: string;
864
+ clientAuth?: "body" | "basic";
865
+ audience?: string;
866
+ } | {
867
+ type: "query";
868
+ param: string;
869
+ value: string;
870
+ };
871
+ headers: {
872
+ [key: string]: string;
873
+ };
874
+ fieldHeaders: {
875
+ [key: string]: string;
876
+ };
310
877
  tools: {
311
878
  name: string;
312
879
  description: string;
@@ -406,6 +973,7 @@ export declare function createClient(options: ClientOptions): {
406
973
  };
407
974
  odata?: {
408
975
  serviceRoot: string;
976
+ allowedHosts?: string[];
409
977
  version: "2" | "4";
410
978
  auth: {
411
979
  type: "header";
@@ -425,6 +993,8 @@ export declare function createClient(options: ClientOptions): {
425
993
  clientId: string;
426
994
  clientSecret: string;
427
995
  scope?: string;
996
+ clientAuth?: "body" | "basic";
997
+ audience?: string;
428
998
  } | {
429
999
  type: "query";
430
1000
  param: string;
@@ -626,6 +1196,45 @@ export declare function createClient(options: ClientOptions): {
626
1196
  };
627
1197
  };
628
1198
  }[]>;
1199
+ internalApps: (o: string) => Promise<{
1200
+ id: string;
1201
+ organizationId: string;
1202
+ definition: {
1203
+ [key: string]: unknown;
1204
+ };
1205
+ problem: string | null;
1206
+ createdBy: string;
1207
+ createdAt: string;
1208
+ updatedBy: string;
1209
+ updatedAt: string;
1210
+ }[]>;
1211
+ internalApp: (o: string, a: string) => Promise<{
1212
+ id: string;
1213
+ organizationId: string;
1214
+ definition: {
1215
+ [key: string]: unknown;
1216
+ };
1217
+ problem: string | null;
1218
+ createdBy: string;
1219
+ createdAt: string;
1220
+ updatedBy: string;
1221
+ updatedAt: string;
1222
+ } | null>;
1223
+ saveInternalApp: (o: string, a: string, definition: Record<string, unknown>, by: string) => Promise<{
1224
+ app: import("./schema.js").components["schemas"]["InternalApp"];
1225
+ connector: import("./schema.js").components["schemas"]["Connector"];
1226
+ created: boolean;
1227
+ disconnected: boolean;
1228
+ grantsRemoved: string[];
1229
+ }>;
1230
+ deleteInternalApp: (o: string, a: string, by: string) => Promise<void>;
1231
+ draftInternalApp: (body: Body<"draftInternalApp">) => Promise<{
1232
+ definition: {
1233
+ [key: string]: unknown;
1234
+ };
1235
+ notes: string[];
1236
+ problem: string | null;
1237
+ }>;
629
1238
  providers: () => Promise<{
630
1239
  id: string;
631
1240
  name: string;
package/lib/index.js CHANGED
@@ -64,6 +64,16 @@ export function createClient(options) {
64
64
  },
65
65
  branding: () => call("GET", "/branding"),
66
66
  connectors: () => call("GET", "/connectors"),
67
+ /** The deployment's apps and the organization's own internal apps. */
68
+ orgConnectors: (o) => call("GET", `${org(o)}/connectors`),
69
+ internalApps: (o) => call("GET", `${org(o)}/internal-apps`),
70
+ internalApp: (o, a) => maybe(`${org(o)}/internal-apps/${seg(a)}`),
71
+ saveInternalApp: (o, a, definition, by) => call("PUT", `${org(o)}/internal-apps/${seg(a)}`, {
72
+ definition,
73
+ by,
74
+ }),
75
+ deleteInternalApp: (o, a, by) => call("DELETE", `${org(o)}/internal-apps/${seg(a)}`, { by }),
76
+ draftInternalApp: (body) => call("POST", "/internal-apps/draft", body),
67
77
  providers: () => call("GET", "/providers"),
68
78
  providerConnections: (o) => call("GET", `${org(o)}/providers`),
69
79
  connectProvider: (o, p, body) => call("PUT", provider(o, p), body),
package/lib/schema.d.ts CHANGED
@@ -73,6 +73,76 @@ export interface paths {
73
73
  patch?: never;
74
74
  trace?: never;
75
75
  };
76
+ "/orgs/{org}/connectors": {
77
+ parameters: {
78
+ query?: never;
79
+ header?: never;
80
+ path?: never;
81
+ cookie?: never;
82
+ };
83
+ /** The apps the organization can use: the deployment's and its own internal apps */
84
+ get: operations["orgConnectors"];
85
+ put?: never;
86
+ post?: never;
87
+ delete?: never;
88
+ options?: never;
89
+ head?: never;
90
+ patch?: never;
91
+ trace?: never;
92
+ };
93
+ "/orgs/{org}/internal-apps": {
94
+ parameters: {
95
+ query?: never;
96
+ header?: never;
97
+ path?: never;
98
+ cookie?: never;
99
+ };
100
+ /** The organization's own apps, as saved */
101
+ get: operations["internalApps"];
102
+ put?: never;
103
+ post?: never;
104
+ delete?: never;
105
+ options?: never;
106
+ head?: never;
107
+ patch?: never;
108
+ trace?: never;
109
+ };
110
+ "/orgs/{org}/internal-apps/{app}": {
111
+ parameters: {
112
+ query?: never;
113
+ header?: never;
114
+ path?: never;
115
+ cookie?: never;
116
+ };
117
+ /** One of the organization's own apps, as saved */
118
+ get: operations["internalApp"];
119
+ /** Adds or replaces one of the organization's own apps; a replace may cut or remove its connection and agents' access */
120
+ put: operations["saveInternalApp"];
121
+ post?: never;
122
+ /** Removes one of the organization's own apps, its connection and every agent's access to it */
123
+ delete: operations["deleteInternalApp"];
124
+ options?: never;
125
+ head?: never;
126
+ patch?: never;
127
+ trace?: never;
128
+ };
129
+ "/internal-apps/draft": {
130
+ parameters: {
131
+ query?: never;
132
+ header?: never;
133
+ path?: never;
134
+ cookie?: never;
135
+ };
136
+ get?: never;
137
+ put?: never;
138
+ /** Drafts an internal app's definition from an OpenAPI 3.x spec (JSON) */
139
+ post: operations["draftInternalApp"];
140
+ delete?: never;
141
+ options?: never;
142
+ head?: never;
143
+ patch?: never;
144
+ trace?: never;
145
+ };
76
146
  "/providers": {
77
147
  parameters: {
78
148
  query?: never;
@@ -1258,8 +1328,8 @@ export interface components {
1258
1328
  };
1259
1329
  revoke: string;
1260
1330
  http?: {
1261
- /** Format: uri */
1262
1331
  baseUrl: string;
1332
+ allowedHosts?: string[];
1263
1333
  auth: {
1264
1334
  /** @constant */
1265
1335
  type: "header";
@@ -1283,6 +1353,9 @@ export interface components {
1283
1353
  clientId: string;
1284
1354
  clientSecret: string;
1285
1355
  scope?: string;
1356
+ /** @enum {string} */
1357
+ clientAuth?: "body" | "basic";
1358
+ audience?: string;
1286
1359
  } | {
1287
1360
  /** @constant */
1288
1361
  type: "query";
@@ -1293,6 +1366,10 @@ export interface components {
1293
1366
  headers: {
1294
1367
  [key: string]: string;
1295
1368
  };
1369
+ /** @default {} */
1370
+ fieldHeaders: {
1371
+ [key: string]: string;
1372
+ };
1296
1373
  tools: {
1297
1374
  name: string;
1298
1375
  description: string;
@@ -1345,7 +1422,6 @@ export interface components {
1345
1422
  allowInsecureHttp: boolean;
1346
1423
  };
1347
1424
  soap?: {
1348
- /** Format: uri */
1349
1425
  endpoint: string;
1350
1426
  /**
1351
1427
  * @default 1.1
@@ -1419,8 +1495,8 @@ export interface components {
1419
1495
  allowInsecureHttp: boolean;
1420
1496
  };
1421
1497
  odata?: {
1422
- /** Format: uri */
1423
1498
  serviceRoot: string;
1499
+ allowedHosts?: string[];
1424
1500
  /** @enum {string} */
1425
1501
  version: "2" | "4";
1426
1502
  auth: {
@@ -1446,6 +1522,9 @@ export interface components {
1446
1522
  clientId: string;
1447
1523
  clientSecret: string;
1448
1524
  scope?: string;
1525
+ /** @enum {string} */
1526
+ clientAuth?: "body" | "basic";
1527
+ audience?: string;
1449
1528
  } | {
1450
1529
  /** @constant */
1451
1530
  type: "query";
@@ -1828,6 +1907,36 @@ export interface components {
1828
1907
  name: string;
1829
1908
  detail: string | null;
1830
1909
  };
1910
+ InternalApp: {
1911
+ id: string;
1912
+ organizationId: string;
1913
+ /** @description A connector.json with an http, soap, odata or sql block, as written (docs/http-connector.md) */
1914
+ definition: {
1915
+ [key: string]: unknown;
1916
+ };
1917
+ problem: string | null;
1918
+ createdBy: string;
1919
+ /** @description ISO 8601, UTC */
1920
+ createdAt: string;
1921
+ updatedBy: string;
1922
+ /** @description ISO 8601, UTC */
1923
+ updatedAt: string;
1924
+ };
1925
+ InternalAppDraft: {
1926
+ /** @description A connector.json with an http, soap, odata or sql block, as written (docs/http-connector.md) */
1927
+ definition: {
1928
+ [key: string]: unknown;
1929
+ };
1930
+ notes: string[];
1931
+ problem: string | null;
1932
+ };
1933
+ InternalAppSaved: {
1934
+ app: components["schemas"]["InternalApp"];
1935
+ connector: components["schemas"]["Connector"];
1936
+ created: boolean;
1937
+ disconnected: boolean;
1938
+ grantsRemoved: string[];
1939
+ };
1831
1940
  Limits: {
1832
1941
  [key: string]: string[] | string | {
1833
1942
  [key: string]: string;
@@ -2456,6 +2565,380 @@ export interface operations {
2456
2565
  };
2457
2566
  };
2458
2567
  };
2568
+ orgConnectors: {
2569
+ parameters: {
2570
+ query?: never;
2571
+ header?: never;
2572
+ path: {
2573
+ org: string;
2574
+ };
2575
+ cookie?: never;
2576
+ };
2577
+ requestBody?: never;
2578
+ responses: {
2579
+ /** @description OK */
2580
+ 200: {
2581
+ headers: {
2582
+ [name: string]: unknown;
2583
+ };
2584
+ content: {
2585
+ "application/json": components["schemas"]["Connector"][];
2586
+ };
2587
+ };
2588
+ /** @description Refused */
2589
+ 400: {
2590
+ headers: {
2591
+ [name: string]: unknown;
2592
+ };
2593
+ content: {
2594
+ "application/json": components["schemas"]["Error"];
2595
+ };
2596
+ };
2597
+ /** @description Refused */
2598
+ 401: {
2599
+ headers: {
2600
+ [name: string]: unknown;
2601
+ };
2602
+ content: {
2603
+ "application/json": components["schemas"]["Error"];
2604
+ };
2605
+ };
2606
+ /** @description Refused */
2607
+ 404: {
2608
+ headers: {
2609
+ [name: string]: unknown;
2610
+ };
2611
+ content: {
2612
+ "application/json": components["schemas"]["Error"];
2613
+ };
2614
+ };
2615
+ /** @description Refused */
2616
+ 422: {
2617
+ headers: {
2618
+ [name: string]: unknown;
2619
+ };
2620
+ content: {
2621
+ "application/json": components["schemas"]["Error"];
2622
+ };
2623
+ };
2624
+ };
2625
+ };
2626
+ internalApps: {
2627
+ parameters: {
2628
+ query?: never;
2629
+ header?: never;
2630
+ path: {
2631
+ org: string;
2632
+ };
2633
+ cookie?: never;
2634
+ };
2635
+ requestBody?: never;
2636
+ responses: {
2637
+ /** @description OK */
2638
+ 200: {
2639
+ headers: {
2640
+ [name: string]: unknown;
2641
+ };
2642
+ content: {
2643
+ "application/json": components["schemas"]["InternalApp"][];
2644
+ };
2645
+ };
2646
+ /** @description Refused */
2647
+ 400: {
2648
+ headers: {
2649
+ [name: string]: unknown;
2650
+ };
2651
+ content: {
2652
+ "application/json": components["schemas"]["Error"];
2653
+ };
2654
+ };
2655
+ /** @description Refused */
2656
+ 401: {
2657
+ headers: {
2658
+ [name: string]: unknown;
2659
+ };
2660
+ content: {
2661
+ "application/json": components["schemas"]["Error"];
2662
+ };
2663
+ };
2664
+ /** @description Refused */
2665
+ 404: {
2666
+ headers: {
2667
+ [name: string]: unknown;
2668
+ };
2669
+ content: {
2670
+ "application/json": components["schemas"]["Error"];
2671
+ };
2672
+ };
2673
+ /** @description Refused */
2674
+ 422: {
2675
+ headers: {
2676
+ [name: string]: unknown;
2677
+ };
2678
+ content: {
2679
+ "application/json": components["schemas"]["Error"];
2680
+ };
2681
+ };
2682
+ };
2683
+ };
2684
+ internalApp: {
2685
+ parameters: {
2686
+ query?: never;
2687
+ header?: never;
2688
+ path: {
2689
+ org: string;
2690
+ app: string;
2691
+ };
2692
+ cookie?: never;
2693
+ };
2694
+ requestBody?: never;
2695
+ responses: {
2696
+ /** @description OK */
2697
+ 200: {
2698
+ headers: {
2699
+ [name: string]: unknown;
2700
+ };
2701
+ content: {
2702
+ "application/json": components["schemas"]["InternalApp"];
2703
+ };
2704
+ };
2705
+ /** @description Refused */
2706
+ 400: {
2707
+ headers: {
2708
+ [name: string]: unknown;
2709
+ };
2710
+ content: {
2711
+ "application/json": components["schemas"]["Error"];
2712
+ };
2713
+ };
2714
+ /** @description Refused */
2715
+ 401: {
2716
+ headers: {
2717
+ [name: string]: unknown;
2718
+ };
2719
+ content: {
2720
+ "application/json": components["schemas"]["Error"];
2721
+ };
2722
+ };
2723
+ /** @description Refused */
2724
+ 404: {
2725
+ headers: {
2726
+ [name: string]: unknown;
2727
+ };
2728
+ content: {
2729
+ "application/json": components["schemas"]["Error"];
2730
+ };
2731
+ };
2732
+ /** @description Refused */
2733
+ 422: {
2734
+ headers: {
2735
+ [name: string]: unknown;
2736
+ };
2737
+ content: {
2738
+ "application/json": components["schemas"]["Error"];
2739
+ };
2740
+ };
2741
+ };
2742
+ };
2743
+ saveInternalApp: {
2744
+ parameters: {
2745
+ query?: never;
2746
+ header?: never;
2747
+ path: {
2748
+ org: string;
2749
+ app: string;
2750
+ };
2751
+ cookie?: never;
2752
+ };
2753
+ requestBody: {
2754
+ content: {
2755
+ "application/json": {
2756
+ /** @description A connector.json with an http, soap, odata or sql block, as written (docs/http-connector.md) */
2757
+ definition: {
2758
+ [key: string]: unknown;
2759
+ };
2760
+ by: string;
2761
+ };
2762
+ };
2763
+ };
2764
+ responses: {
2765
+ /** @description OK */
2766
+ 200: {
2767
+ headers: {
2768
+ [name: string]: unknown;
2769
+ };
2770
+ content: {
2771
+ "application/json": components["schemas"]["InternalAppSaved"];
2772
+ };
2773
+ };
2774
+ /** @description Refused */
2775
+ 400: {
2776
+ headers: {
2777
+ [name: string]: unknown;
2778
+ };
2779
+ content: {
2780
+ "application/json": components["schemas"]["Error"];
2781
+ };
2782
+ };
2783
+ /** @description Refused */
2784
+ 401: {
2785
+ headers: {
2786
+ [name: string]: unknown;
2787
+ };
2788
+ content: {
2789
+ "application/json": components["schemas"]["Error"];
2790
+ };
2791
+ };
2792
+ /** @description Refused */
2793
+ 404: {
2794
+ headers: {
2795
+ [name: string]: unknown;
2796
+ };
2797
+ content: {
2798
+ "application/json": components["schemas"]["Error"];
2799
+ };
2800
+ };
2801
+ /** @description Refused */
2802
+ 422: {
2803
+ headers: {
2804
+ [name: string]: unknown;
2805
+ };
2806
+ content: {
2807
+ "application/json": components["schemas"]["Error"];
2808
+ };
2809
+ };
2810
+ };
2811
+ };
2812
+ deleteInternalApp: {
2813
+ parameters: {
2814
+ query?: never;
2815
+ header?: never;
2816
+ path: {
2817
+ org: string;
2818
+ app: string;
2819
+ };
2820
+ cookie?: never;
2821
+ };
2822
+ requestBody: {
2823
+ content: {
2824
+ "application/json": {
2825
+ by: string;
2826
+ };
2827
+ };
2828
+ };
2829
+ responses: {
2830
+ /** @description OK */
2831
+ 204: {
2832
+ headers: {
2833
+ [name: string]: unknown;
2834
+ };
2835
+ content?: never;
2836
+ };
2837
+ /** @description Refused */
2838
+ 400: {
2839
+ headers: {
2840
+ [name: string]: unknown;
2841
+ };
2842
+ content: {
2843
+ "application/json": components["schemas"]["Error"];
2844
+ };
2845
+ };
2846
+ /** @description Refused */
2847
+ 401: {
2848
+ headers: {
2849
+ [name: string]: unknown;
2850
+ };
2851
+ content: {
2852
+ "application/json": components["schemas"]["Error"];
2853
+ };
2854
+ };
2855
+ /** @description Refused */
2856
+ 404: {
2857
+ headers: {
2858
+ [name: string]: unknown;
2859
+ };
2860
+ content: {
2861
+ "application/json": components["schemas"]["Error"];
2862
+ };
2863
+ };
2864
+ /** @description Refused */
2865
+ 422: {
2866
+ headers: {
2867
+ [name: string]: unknown;
2868
+ };
2869
+ content: {
2870
+ "application/json": components["schemas"]["Error"];
2871
+ };
2872
+ };
2873
+ };
2874
+ };
2875
+ draftInternalApp: {
2876
+ parameters: {
2877
+ query?: never;
2878
+ header?: never;
2879
+ path?: never;
2880
+ cookie?: never;
2881
+ };
2882
+ requestBody: {
2883
+ content: {
2884
+ "application/json": {
2885
+ spec: {
2886
+ [key: string]: unknown;
2887
+ };
2888
+ id: string;
2889
+ operations?: string[];
2890
+ tags?: string[];
2891
+ };
2892
+ };
2893
+ };
2894
+ responses: {
2895
+ /** @description OK */
2896
+ 200: {
2897
+ headers: {
2898
+ [name: string]: unknown;
2899
+ };
2900
+ content: {
2901
+ "application/json": components["schemas"]["InternalAppDraft"];
2902
+ };
2903
+ };
2904
+ /** @description Refused */
2905
+ 400: {
2906
+ headers: {
2907
+ [name: string]: unknown;
2908
+ };
2909
+ content: {
2910
+ "application/json": components["schemas"]["Error"];
2911
+ };
2912
+ };
2913
+ /** @description Refused */
2914
+ 401: {
2915
+ headers: {
2916
+ [name: string]: unknown;
2917
+ };
2918
+ content: {
2919
+ "application/json": components["schemas"]["Error"];
2920
+ };
2921
+ };
2922
+ /** @description Refused */
2923
+ 404: {
2924
+ headers: {
2925
+ [name: string]: unknown;
2926
+ };
2927
+ content: {
2928
+ "application/json": components["schemas"]["Error"];
2929
+ };
2930
+ };
2931
+ /** @description Refused */
2932
+ 422: {
2933
+ headers: {
2934
+ [name: string]: unknown;
2935
+ };
2936
+ content: {
2937
+ "application/json": components["schemas"]["Error"];
2938
+ };
2939
+ };
2940
+ };
2941
+ };
2459
2942
  providers: {
2460
2943
  parameters: {
2461
2944
  query?: never;
package/lib/steps.d.ts CHANGED
@@ -358,11 +358,7 @@ export declare function newKeySetup(ticked: Connector[], providers: Provider[]):
358
358
  body?: {
359
359
  [key: string]: unknown;
360
360
  };
361
- ifEmpty
362
- /** A step whose text fills in a value saved at another step waits until it is saved: its
363
- * words would show the raw {name} and its commands would not run. */
364
- ? /** A step whose text fills in a value saved at another step waits until it is saved: its
365
- * words would show the raw {name} and its commands would not run. */: string;
361
+ ifEmpty?: string;
366
362
  } | {
367
363
  label: string;
368
364
  check: string;
@@ -389,6 +385,7 @@ export declare function newKeySetup(ticked: Connector[], providers: Provider[]):
389
385
  revoke: string;
390
386
  http?: {
391
387
  baseUrl: string;
388
+ allowedHosts?: string[];
392
389
  auth: {
393
390
  type: "header";
394
391
  header: string;
@@ -407,6 +404,8 @@ export declare function newKeySetup(ticked: Connector[], providers: Provider[]):
407
404
  clientId: string;
408
405
  clientSecret: string;
409
406
  scope?: string;
407
+ clientAuth?: "body" | "basic";
408
+ audience?: string;
410
409
  } | {
411
410
  type: "query";
412
411
  param: string;
@@ -415,6 +414,9 @@ export declare function newKeySetup(ticked: Connector[], providers: Provider[]):
415
414
  headers: {
416
415
  [key: string]: string;
417
416
  };
417
+ fieldHeaders: {
418
+ [key: string]: string;
419
+ };
418
420
  tools: {
419
421
  name: string;
420
422
  description: string;
@@ -514,6 +516,7 @@ export declare function newKeySetup(ticked: Connector[], providers: Provider[]):
514
516
  };
515
517
  odata?: {
516
518
  serviceRoot: string;
519
+ allowedHosts?: string[];
517
520
  version: "2" | "4";
518
521
  auth: {
519
522
  type: "header";
@@ -533,6 +536,8 @@ export declare function newKeySetup(ticked: Connector[], providers: Provider[]):
533
536
  clientId: string;
534
537
  clientSecret: string;
535
538
  scope?: string;
539
+ clientAuth?: "body" | "basic";
540
+ audience?: string;
536
541
  } | {
537
542
  type: "query";
538
543
  param: string;
@@ -946,11 +951,7 @@ export declare function newKeySetup(ticked: Connector[], providers: Provider[]):
946
951
  body?: {
947
952
  [key: string]: unknown;
948
953
  };
949
- ifEmpty
950
- /** A step whose text fills in a value saved at another step waits until it is saved: its
951
- * words would show the raw {name} and its commands would not run. */
952
- ? /** A step whose text fills in a value saved at another step waits until it is saved: its
953
- * words would show the raw {name} and its commands would not run. */: string;
954
+ ifEmpty?: string;
954
955
  } | {
955
956
  label: string;
956
957
  check: string;
@@ -977,6 +978,7 @@ export declare function newKeySetup(ticked: Connector[], providers: Provider[]):
977
978
  revoke: string;
978
979
  http?: {
979
980
  baseUrl: string;
981
+ allowedHosts?: string[];
980
982
  auth: {
981
983
  type: "header";
982
984
  header: string;
@@ -995,6 +997,8 @@ export declare function newKeySetup(ticked: Connector[], providers: Provider[]):
995
997
  clientId: string;
996
998
  clientSecret: string;
997
999
  scope?: string;
1000
+ clientAuth?: "body" | "basic";
1001
+ audience?: string;
998
1002
  } | {
999
1003
  type: "query";
1000
1004
  param: string;
@@ -1003,6 +1007,9 @@ export declare function newKeySetup(ticked: Connector[], providers: Provider[]):
1003
1007
  headers: {
1004
1008
  [key: string]: string;
1005
1009
  };
1010
+ fieldHeaders: {
1011
+ [key: string]: string;
1012
+ };
1006
1013
  tools: {
1007
1014
  name: string;
1008
1015
  description: string;
@@ -1102,6 +1109,7 @@ export declare function newKeySetup(ticked: Connector[], providers: Provider[]):
1102
1109
  };
1103
1110
  odata?: {
1104
1111
  serviceRoot: string;
1112
+ allowedHosts?: string[];
1105
1113
  version: "2" | "4";
1106
1114
  auth: {
1107
1115
  type: "header";
@@ -1121,6 +1129,8 @@ export declare function newKeySetup(ticked: Connector[], providers: Provider[]):
1121
1129
  clientId: string;
1122
1130
  clientSecret: string;
1123
1131
  scope?: string;
1132
+ clientAuth?: "body" | "basic";
1133
+ audience?: string;
1124
1134
  } | {
1125
1135
  type: "query";
1126
1136
  param: string;
package/lib/types.d.ts CHANGED
@@ -47,6 +47,9 @@ export type EventTriggerInput = Body<"setEventTrigger">;
47
47
  export type EventRun = S["EventRun"];
48
48
  export type ClaudeKey = S["ClaudeKey"];
49
49
  export type ClaudeAgent = S["ClaudeAgent"];
50
+ export type InternalApp = S["InternalApp"];
51
+ export type InternalAppSaved = S["InternalAppSaved"];
52
+ export type InternalAppDraft = S["InternalAppDraft"];
50
53
  export type Step = Connector["setup"][number];
51
54
  export type AgentStep = Provider["addAgent"][number];
52
55
  export type Setting = NonNullable<Step["settings"]>[number];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arbium/enterprise-agent-connect-client",
3
- "version": "0.2.0",
3
+ "version": "0.2.1-dev.7b4e802",
4
4
  "description": "Typed client for the Agent Connect admin API (v1), and the pure logic admin pages share",
5
5
  "type": "module",
6
6
  "exports": {