@epilot/integration-toolkit-client 1.0.3 → 1.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.
- package/dist/definition.js +1 -1
- package/dist/openapi-runtime.json +63 -0
- package/dist/openapi.d.ts +459 -19
- package/dist/openapi.json +480 -4
- package/package.json +2 -2
package/dist/openapi.d.ts
CHANGED
|
@@ -296,10 +296,10 @@ declare namespace Components {
|
|
|
296
296
|
*/
|
|
297
297
|
name: string;
|
|
298
298
|
/**
|
|
299
|
-
* URL-safe identifier for the use case.
|
|
299
|
+
* URL-safe identifier for the use case. Required for explicit creates so every use case has a portable cross-environment identifier. Must be unique per integration. Immutable after creation. Lowercase alphanumeric, hyphens, and underscores only.
|
|
300
300
|
*
|
|
301
301
|
*/
|
|
302
|
-
slug
|
|
302
|
+
slug: string; // ^[a-z0-9][a-z0-9_-]*$
|
|
303
303
|
/**
|
|
304
304
|
* Whether the use case is enabled
|
|
305
305
|
*/
|
|
@@ -324,10 +324,10 @@ declare namespace Components {
|
|
|
324
324
|
*/
|
|
325
325
|
name: string;
|
|
326
326
|
/**
|
|
327
|
-
* URL-safe identifier for the use case.
|
|
327
|
+
* URL-safe identifier for the use case. Required for explicit creates so every use case has a portable cross-environment identifier. Must be unique per integration. Immutable after creation. Lowercase alphanumeric, hyphens, and underscores only.
|
|
328
328
|
*
|
|
329
329
|
*/
|
|
330
|
-
slug
|
|
330
|
+
slug: string; // ^[a-z0-9][a-z0-9_-]*$
|
|
331
331
|
/**
|
|
332
332
|
* Whether the use case is enabled
|
|
333
333
|
*/
|
|
@@ -381,10 +381,10 @@ declare namespace Components {
|
|
|
381
381
|
*/
|
|
382
382
|
name: string;
|
|
383
383
|
/**
|
|
384
|
-
* URL-safe identifier for the use case.
|
|
384
|
+
* URL-safe identifier for the use case. Required for explicit creates so every use case has a portable cross-environment identifier. Must be unique per integration. Immutable after creation. Lowercase alphanumeric, hyphens, and underscores only.
|
|
385
385
|
*
|
|
386
386
|
*/
|
|
387
|
-
slug
|
|
387
|
+
slug: string; // ^[a-z0-9][a-z0-9_-]*$
|
|
388
388
|
/**
|
|
389
389
|
* Whether the use case is enabled
|
|
390
390
|
*/
|
|
@@ -401,10 +401,10 @@ declare namespace Components {
|
|
|
401
401
|
*/
|
|
402
402
|
name: string;
|
|
403
403
|
/**
|
|
404
|
-
* URL-safe identifier for the use case.
|
|
404
|
+
* URL-safe identifier for the use case. Required for explicit creates so every use case has a portable cross-environment identifier. Must be unique per integration. Immutable after creation. Lowercase alphanumeric, hyphens, and underscores only.
|
|
405
405
|
*
|
|
406
406
|
*/
|
|
407
|
-
slug
|
|
407
|
+
slug: string; // ^[a-z0-9][a-z0-9_-]*$
|
|
408
408
|
/**
|
|
409
409
|
* Whether the use case is enabled
|
|
410
410
|
*/
|
|
@@ -421,10 +421,10 @@ declare namespace Components {
|
|
|
421
421
|
*/
|
|
422
422
|
name: string;
|
|
423
423
|
/**
|
|
424
|
-
* URL-safe identifier for the use case.
|
|
424
|
+
* URL-safe identifier for the use case. Required for explicit creates so every use case has a portable cross-environment identifier. Must be unique per integration. Immutable after creation. Lowercase alphanumeric, hyphens, and underscores only.
|
|
425
425
|
*
|
|
426
426
|
*/
|
|
427
|
-
slug
|
|
427
|
+
slug: string; // ^[a-z0-9][a-z0-9_-]*$
|
|
428
428
|
/**
|
|
429
429
|
* Whether the use case is enabled
|
|
430
430
|
*/
|
|
@@ -446,10 +446,10 @@ declare namespace Components {
|
|
|
446
446
|
*/
|
|
447
447
|
name: string;
|
|
448
448
|
/**
|
|
449
|
-
* URL-safe identifier for the use case.
|
|
449
|
+
* URL-safe identifier for the use case. Required for explicit creates so every use case has a portable cross-environment identifier. Must be unique per integration. Immutable after creation. Lowercase alphanumeric, hyphens, and underscores only.
|
|
450
450
|
*
|
|
451
451
|
*/
|
|
452
|
-
slug
|
|
452
|
+
slug: string; // ^[a-z0-9][a-z0-9_-]*$
|
|
453
453
|
/**
|
|
454
454
|
* Whether the use case is enabled
|
|
455
455
|
*/
|
|
@@ -500,7 +500,7 @@ declare namespace Components {
|
|
|
500
500
|
*/
|
|
501
501
|
name: string;
|
|
502
502
|
/**
|
|
503
|
-
* URL-safe identifier for the use case.
|
|
503
|
+
* URL-safe identifier for the use case. Optional on this upsert/sync endpoint — when omitted, the server derives one from the name and ensures uniqueness within the integration. Immutable after creation.
|
|
504
504
|
*
|
|
505
505
|
*/
|
|
506
506
|
slug?: string; // ^[a-z0-9][a-z0-9_-]*$
|
|
@@ -540,7 +540,7 @@ declare namespace Components {
|
|
|
540
540
|
*/
|
|
541
541
|
name: string;
|
|
542
542
|
/**
|
|
543
|
-
* URL-safe identifier for the use case.
|
|
543
|
+
* URL-safe identifier for the use case. Optional on this upsert/sync endpoint — when omitted, the server derives one from the name and ensures uniqueness within the integration. Immutable after creation.
|
|
544
544
|
*
|
|
545
545
|
*/
|
|
546
546
|
slug?: string; // ^[a-z0-9][a-z0-9_-]*$
|
|
@@ -572,7 +572,7 @@ declare namespace Components {
|
|
|
572
572
|
*/
|
|
573
573
|
name: string;
|
|
574
574
|
/**
|
|
575
|
-
* URL-safe identifier for the use case.
|
|
575
|
+
* URL-safe identifier for the use case. Optional on this upsert/sync endpoint — when omitted, the server derives one from the name and ensures uniqueness within the integration. Immutable after creation.
|
|
576
576
|
*
|
|
577
577
|
*/
|
|
578
578
|
slug?: string; // ^[a-z0-9][a-z0-9_-]*$
|
|
@@ -604,7 +604,7 @@ declare namespace Components {
|
|
|
604
604
|
*/
|
|
605
605
|
name: string;
|
|
606
606
|
/**
|
|
607
|
-
* URL-safe identifier for the use case.
|
|
607
|
+
* URL-safe identifier for the use case. Optional on this upsert/sync endpoint — when omitted, the server derives one from the name and ensures uniqueness within the integration. Immutable after creation.
|
|
608
608
|
*
|
|
609
609
|
*/
|
|
610
610
|
slug?: string; // ^[a-z0-9][a-z0-9_-]*$
|
|
@@ -636,7 +636,7 @@ declare namespace Components {
|
|
|
636
636
|
*/
|
|
637
637
|
name: string;
|
|
638
638
|
/**
|
|
639
|
-
* URL-safe identifier for the use case.
|
|
639
|
+
* URL-safe identifier for the use case. Optional on this upsert/sync endpoint — when omitted, the server derives one from the name and ensures uniqueness within the integration. Immutable after creation.
|
|
640
640
|
*
|
|
641
641
|
*/
|
|
642
642
|
slug?: string; // ^[a-z0-9][a-z0-9_-]*$
|
|
@@ -673,7 +673,7 @@ declare namespace Components {
|
|
|
673
673
|
*/
|
|
674
674
|
name: string;
|
|
675
675
|
/**
|
|
676
|
-
* URL-safe identifier for the use case.
|
|
676
|
+
* URL-safe identifier for the use case. Optional on this upsert/sync endpoint — when omitted, the server derives one from the name and ensures uniqueness within the integration. Immutable after creation.
|
|
677
677
|
*
|
|
678
678
|
*/
|
|
679
679
|
slug?: string; // ^[a-z0-9][a-z0-9_-]*$
|
|
@@ -704,6 +704,43 @@ declare namespace Components {
|
|
|
704
704
|
[name: string]: any;
|
|
705
705
|
};
|
|
706
706
|
}
|
|
707
|
+
/**
|
|
708
|
+
* Resolves to an org-scoped environment variable from the epilot environments-api service at runtime, replacing hard-coded environment-specific values (URLs, prefixes, identifiers) in inbound mappings. Secrets (`SecretString` values) are never exposed; the runtime treats both "missing key" and "secret-typed key" as identical `undefined` outcomes (no info disclosure via error code). For secret-resolving contexts (e.g. authorization headers in managed-call or file-proxy step configurations), use the templated `{{ env.<key> }}` syntax instead — that mechanism does decrypt secrets.
|
|
709
|
+
*
|
|
710
|
+
*/
|
|
711
|
+
export type EnvVarRefConfig = /**
|
|
712
|
+
* Resolves to an org-scoped environment variable from the epilot environments-api service at runtime, replacing hard-coded environment-specific values (URLs, prefixes, identifiers) in inbound mappings. Secrets (`SecretString` values) are never exposed; the runtime treats both "missing key" and "secret-typed key" as identical `undefined` outcomes (no info disclosure via error code). For secret-resolving contexts (e.g. authorization headers in managed-call or file-proxy step configurations), use the templated `{{ env.<key> }}` syntax instead — that mechanism does decrypt secrets.
|
|
713
|
+
*
|
|
714
|
+
*/
|
|
715
|
+
{
|
|
716
|
+
/**
|
|
717
|
+
* Environment variable key. Must match the environments-api key contract (lowercase, digits, `_`, `.`, `-`; max 128 chars; starts with a lowercase letter or digit). Supports dot-namespaced keys like `erp_api.base_url`.
|
|
718
|
+
*
|
|
719
|
+
*/
|
|
720
|
+
key: string; // ^[a-z0-9][a-z0-9_.-]{0,127}$
|
|
721
|
+
/**
|
|
722
|
+
* Literal string returned when the key is missing (or is a secret). When provided, the `ENV_VAR_REF_NOT_FOUND` warning is suppressed because the author signalled the absence is expected.
|
|
723
|
+
*
|
|
724
|
+
*/
|
|
725
|
+
default?: string;
|
|
726
|
+
/**
|
|
727
|
+
* `value` returns the resolved env-var string as-is.
|
|
728
|
+
*
|
|
729
|
+
*/
|
|
730
|
+
return?: "value";
|
|
731
|
+
} | {
|
|
732
|
+
key: string; // ^[a-z0-9][a-z0-9_.-]{0,127}$
|
|
733
|
+
default?: string;
|
|
734
|
+
/**
|
|
735
|
+
* Evaluate the sibling `jsonataExpression` against the resolved env-var value (the input `$` is the string value).
|
|
736
|
+
*
|
|
737
|
+
*/
|
|
738
|
+
return: "jsonata";
|
|
739
|
+
/**
|
|
740
|
+
* JSONata expression evaluated against the resolved env-var value.
|
|
741
|
+
*/
|
|
742
|
+
jsonataExpression: string;
|
|
743
|
+
};
|
|
707
744
|
export interface EnvironmentFieldConfig {
|
|
708
745
|
/**
|
|
709
746
|
* Environment variable key, used to look up the value in the Environments API.
|
|
@@ -879,6 +916,31 @@ declare namespace Components {
|
|
|
879
916
|
* Optional ID that identifies the specific request for debugging purposes
|
|
880
917
|
*/
|
|
881
918
|
correlation_id?: string;
|
|
919
|
+
/**
|
|
920
|
+
* Controls ordering and parallelism for this request's events.
|
|
921
|
+
*
|
|
922
|
+
* By default, all events for a given `integration_id` are processed
|
|
923
|
+
* **strictly in order, one at a time**. For high-volume integrations this
|
|
924
|
+
* can become a throughput bottleneck.
|
|
925
|
+
*
|
|
926
|
+
* Set `group_id` to opt into **parallel processing**:
|
|
927
|
+
* - Events sharing the same `group_id` are processed in the order received.
|
|
928
|
+
* - Events with different `group_id` values are processed in parallel.
|
|
929
|
+
*
|
|
930
|
+
* Typical usage is to derive `group_id` from a logical partition key in
|
|
931
|
+
* your payload — for example the customer ID, contract ID, or meter ID —
|
|
932
|
+
* so updates to the same business object remain ordered while unrelated
|
|
933
|
+
* objects are processed concurrently.
|
|
934
|
+
*
|
|
935
|
+
* Notes:
|
|
936
|
+
* - Up to 20 groups per integration are processed concurrently. Using
|
|
937
|
+
* more distinct values than that yields no additional parallelism.
|
|
938
|
+
* - Omit this field if strict per-integration ordering is required.
|
|
939
|
+
*
|
|
940
|
+
* example:
|
|
941
|
+
* customer-42
|
|
942
|
+
*/
|
|
943
|
+
group_id?: string;
|
|
882
944
|
/**
|
|
883
945
|
* List of ERP events to process
|
|
884
946
|
*/
|
|
@@ -1131,6 +1193,10 @@ declare namespace Components {
|
|
|
1131
1193
|
* Additional use-case-specific parameters expected in the download URL query string (beyond the required orgId, integrationId, and useCaseSlug or useCaseId)
|
|
1132
1194
|
*/
|
|
1133
1195
|
params?: FileProxyParam[];
|
|
1196
|
+
/**
|
|
1197
|
+
* Additional origins permitted to call /download for this use case (CORS, exact match). Portal origins are always allowed.
|
|
1198
|
+
*/
|
|
1199
|
+
allowed_origins?: string /* uri ^https?:// */[];
|
|
1134
1200
|
/**
|
|
1135
1201
|
* Ordered list of HTTP steps to execute to retrieve the file
|
|
1136
1202
|
*/
|
|
@@ -1169,6 +1235,10 @@ declare namespace Components {
|
|
|
1169
1235
|
* Description of the change that was made at this point in history
|
|
1170
1236
|
*/
|
|
1171
1237
|
change_description?: string;
|
|
1238
|
+
/**
|
|
1239
|
+
* User ID of the user who made the change that produced this history entry
|
|
1240
|
+
*/
|
|
1241
|
+
changed_by?: string;
|
|
1172
1242
|
/**
|
|
1173
1243
|
* ISO-8601 timestamp when the use case was originally created
|
|
1174
1244
|
*/
|
|
@@ -1505,6 +1575,10 @@ declare namespace Components {
|
|
|
1505
1575
|
* Description of the change that was made at this point in history
|
|
1506
1576
|
*/
|
|
1507
1577
|
change_description?: string;
|
|
1578
|
+
/**
|
|
1579
|
+
* User ID of the user who made the change that produced this history entry
|
|
1580
|
+
*/
|
|
1581
|
+
changed_by?: string;
|
|
1508
1582
|
/**
|
|
1509
1583
|
* ISO-8601 timestamp when the use case was originally created
|
|
1510
1584
|
*/
|
|
@@ -1729,6 +1803,16 @@ declare namespace Components {
|
|
|
1729
1803
|
*
|
|
1730
1804
|
*/
|
|
1731
1805
|
FileProxyUrlConfig;
|
|
1806
|
+
portal_ref?: /**
|
|
1807
|
+
* Resolves to a property of one of the calling organization's epilot portal configurations at runtime, replacing hard-coded environment-specific portal UUIDs in inbound mappings. Matched portals are sorted ascending by `(_created_at, portal_id)`; portals without `_created_at` sort first (treated as oldest). When `select: "single"` matches more than one portal, the resolver still returns the oldest match and emits a `PORTAL_REF_AMBIGUOUS` warning.
|
|
1808
|
+
*
|
|
1809
|
+
*/
|
|
1810
|
+
PortalRefConfig;
|
|
1811
|
+
env_var_ref?: /**
|
|
1812
|
+
* Resolves to an org-scoped environment variable from the epilot environments-api service at runtime, replacing hard-coded environment-specific values (URLs, prefixes, identifiers) in inbound mappings. Secrets (`SecretString` values) are never exposed; the runtime treats both "missing key" and "secret-typed key" as identical `undefined` outcomes (no info disclosure via error code). For secret-resolving contexts (e.g. authorization headers in managed-call or file-proxy step configurations), use the templated `{{ env.<key> }}` syntax instead — that mechanism does decrypt secrets.
|
|
1813
|
+
*
|
|
1814
|
+
*/
|
|
1815
|
+
EnvVarRefConfig;
|
|
1732
1816
|
}
|
|
1733
1817
|
export interface IntegrationFieldV1 {
|
|
1734
1818
|
/**
|
|
@@ -2087,6 +2171,10 @@ declare namespace Components {
|
|
|
2087
2171
|
* Description of the change that was made at this point in history
|
|
2088
2172
|
*/
|
|
2089
2173
|
change_description?: string;
|
|
2174
|
+
/**
|
|
2175
|
+
* User ID of the user who made the change that produced this history entry
|
|
2176
|
+
*/
|
|
2177
|
+
changed_by?: string;
|
|
2090
2178
|
/**
|
|
2091
2179
|
* ISO-8601 timestamp when the use case was originally created
|
|
2092
2180
|
*/
|
|
@@ -2201,7 +2289,7 @@ declare namespace Components {
|
|
|
2201
2289
|
};
|
|
2202
2290
|
};
|
|
2203
2291
|
/**
|
|
2204
|
-
* Meter reading attributes. Required: external_id, timestamp, source, value. `source` must be one of: ECP, ERP, 360, journey-submission. `reason` (optional) must be one of: regular, irregular, last, first, meter_change, contract_change, meter_adjustment (or empty/null).
|
|
2292
|
+
* Meter reading attributes. Required: external_id, timestamp, source, value. `timestamp` must be ISO 8601 — either `YYYY-MM-DD` or `YYYY-MM-DDTHH:mm:ss` (with optional fractional seconds and optional `Z` / `±HH:mm` timezone offset); non-ISO formats (e.g. `DD.MM.YYYY` or epoch numbers) are rejected and must be converted upstream via a `jsonataExpression` (e.g. `$fromMillis(...)`). Date-only values are normalized to midnight UTC and offset-less date-times are anchored to UTC before being forwarded to the metering API. `source` must be one of: ECP, ERP, 360, journey-submission. `reason` (optional) must be one of: regular, irregular, last, first, meter_change, contract_change, meter_adjustment (or empty/null).
|
|
2205
2293
|
*/
|
|
2206
2294
|
attributes: {
|
|
2207
2295
|
[name: string]: any;
|
|
@@ -2590,6 +2678,10 @@ declare namespace Components {
|
|
|
2590
2678
|
* Description of the change that was made at this point in history
|
|
2591
2679
|
*/
|
|
2592
2680
|
change_description?: string;
|
|
2681
|
+
/**
|
|
2682
|
+
* User ID of the user who made the change that produced this history entry
|
|
2683
|
+
*/
|
|
2684
|
+
changed_by?: string;
|
|
2593
2685
|
/**
|
|
2594
2686
|
* ISO-8601 timestamp when the use case was originally created
|
|
2595
2687
|
*/
|
|
@@ -2645,6 +2737,80 @@ declare namespace Components {
|
|
|
2645
2737
|
*/
|
|
2646
2738
|
conflicts?: OutboundConflict[];
|
|
2647
2739
|
}
|
|
2740
|
+
/**
|
|
2741
|
+
* Origin/type of an epilot portal configuration.
|
|
2742
|
+
*/
|
|
2743
|
+
export type PortalOrigin = "END_CUSTOMER_PORTAL" | "INSTALLER_PORTAL" | "B2B_PORTAL" | "ADDITIONAL_PORTAL";
|
|
2744
|
+
/**
|
|
2745
|
+
* Resolves to a property of one of the calling organization's epilot portal configurations at runtime, replacing hard-coded environment-specific portal UUIDs in inbound mappings. Matched portals are sorted ascending by `(_created_at, portal_id)`; portals without `_created_at` sort first (treated as oldest). When `select: "single"` matches more than one portal, the resolver still returns the oldest match and emits a `PORTAL_REF_AMBIGUOUS` warning.
|
|
2746
|
+
*
|
|
2747
|
+
*/
|
|
2748
|
+
export type PortalRefConfig = /**
|
|
2749
|
+
* Resolves to a property of one of the calling organization's epilot portal configurations at runtime, replacing hard-coded environment-specific portal UUIDs in inbound mappings. Matched portals are sorted ascending by `(_created_at, portal_id)`; portals without `_created_at` sort first (treated as oldest). When `select: "single"` matches more than one portal, the resolver still returns the oldest match and emits a `PORTAL_REF_AMBIGUOUS` warning.
|
|
2750
|
+
*
|
|
2751
|
+
*/
|
|
2752
|
+
{
|
|
2753
|
+
filter?: /**
|
|
2754
|
+
* Filter applied to the org's portal configurations before selection. All filters default to "match any" except `enabled` (default `true`) and `is_dummy` (default `false`). Set `enabled` or `is_dummy` to `null` to opt out of the default.
|
|
2755
|
+
*
|
|
2756
|
+
*/
|
|
2757
|
+
PortalRefFilter;
|
|
2758
|
+
/**
|
|
2759
|
+
* `single` returns one literal value (the oldest matching portal); `all` returns an array of literal values (0, 1, or many).
|
|
2760
|
+
*
|
|
2761
|
+
*/
|
|
2762
|
+
select?: "single" | "all";
|
|
2763
|
+
/**
|
|
2764
|
+
* Which portal field to emit.
|
|
2765
|
+
*/
|
|
2766
|
+
return?: "portal_id" | "origin" | "domain" | "name";
|
|
2767
|
+
} | {
|
|
2768
|
+
filter?: /**
|
|
2769
|
+
* Filter applied to the org's portal configurations before selection. All filters default to "match any" except `enabled` (default `true`) and `is_dummy` (default `false`). Set `enabled` or `is_dummy` to `null` to opt out of the default.
|
|
2770
|
+
*
|
|
2771
|
+
*/
|
|
2772
|
+
PortalRefFilter;
|
|
2773
|
+
select?: "single" | "all";
|
|
2774
|
+
/**
|
|
2775
|
+
* Evaluate the sibling `jsonataExpression` against the matched portal(s). With `select: "single"` the input is the matched PortalConfig object; with `select: "all"` it is the full filtered+sorted array.
|
|
2776
|
+
*
|
|
2777
|
+
*/
|
|
2778
|
+
return: "jsonata";
|
|
2779
|
+
/**
|
|
2780
|
+
* JSONata expression evaluated against the matched portal(s).
|
|
2781
|
+
*/
|
|
2782
|
+
jsonataExpression: string;
|
|
2783
|
+
};
|
|
2784
|
+
/**
|
|
2785
|
+
* Filter applied to the org's portal configurations before selection. All filters default to "match any" except `enabled` (default `true`) and `is_dummy` (default `false`). Set `enabled` or `is_dummy` to `null` to opt out of the default.
|
|
2786
|
+
*
|
|
2787
|
+
*/
|
|
2788
|
+
export interface PortalRefFilter {
|
|
2789
|
+
/**
|
|
2790
|
+
* Single origin or array of origins (matches if origin is in the array).
|
|
2791
|
+
*/
|
|
2792
|
+
origin?: /* Single origin or array of origins (matches if origin is in the array). */ /* Origin/type of an epilot portal configuration. */ PortalOrigin | /* Origin/type of an epilot portal configuration. */ PortalOrigin[];
|
|
2793
|
+
/**
|
|
2794
|
+
* Match portals with this `enabled` value. Default `true`. Set to `null` to ignore.
|
|
2795
|
+
*/
|
|
2796
|
+
enabled?: boolean | null;
|
|
2797
|
+
/**
|
|
2798
|
+
* Match portals with this `is_dummy` value. Default `false`. Set to `null` to ignore.
|
|
2799
|
+
*/
|
|
2800
|
+
is_dummy?: boolean | null;
|
|
2801
|
+
/**
|
|
2802
|
+
* Optional restriction on `is_epilot_domain`.
|
|
2803
|
+
*/
|
|
2804
|
+
is_epilot_domain?: boolean;
|
|
2805
|
+
/**
|
|
2806
|
+
* Exact match on the portal's `name`.
|
|
2807
|
+
*/
|
|
2808
|
+
name?: string;
|
|
2809
|
+
/**
|
|
2810
|
+
* Exact match on the portal's `domain`.
|
|
2811
|
+
*/
|
|
2812
|
+
domain?: string;
|
|
2813
|
+
}
|
|
2648
2814
|
/**
|
|
2649
2815
|
* Scope configuration for upsert-prune-scope modes.
|
|
2650
2816
|
* Defines how to find entities that should be pruned if not in the upsert payload.
|
|
@@ -3354,6 +3520,10 @@ declare namespace Components {
|
|
|
3354
3520
|
* Description of the change that was made at this point in history
|
|
3355
3521
|
*/
|
|
3356
3522
|
change_description?: string;
|
|
3523
|
+
/**
|
|
3524
|
+
* User ID of the user who made the change that produced this history entry
|
|
3525
|
+
*/
|
|
3526
|
+
changed_by?: string;
|
|
3357
3527
|
/**
|
|
3358
3528
|
* ISO-8601 timestamp when the use case was originally created
|
|
3359
3529
|
*/
|
|
@@ -3376,6 +3546,53 @@ declare namespace Components {
|
|
|
3376
3546
|
*/
|
|
3377
3547
|
SecureProxyUseCaseConfiguration;
|
|
3378
3548
|
}
|
|
3549
|
+
/**
|
|
3550
|
+
* Current whitelist state for a secure_proxy use case. vpc_mode is read-only
|
|
3551
|
+
* context so the UI can show the user what mode the pool is in.
|
|
3552
|
+
*
|
|
3553
|
+
*/
|
|
3554
|
+
export interface SecureProxyWhitelist {
|
|
3555
|
+
/**
|
|
3556
|
+
* VPC routing mode (read-only). `null` if not yet set.
|
|
3557
|
+
*/
|
|
3558
|
+
vpc_mode: "static_ip" | "secure_link";
|
|
3559
|
+
/**
|
|
3560
|
+
* Exact domain ("api.example.com") or wildcard prefix ("*.example.com").
|
|
3561
|
+
* Wildcards must have at least 2 labels in the suffix.
|
|
3562
|
+
*
|
|
3563
|
+
*/
|
|
3564
|
+
allowed_domains: string[];
|
|
3565
|
+
/**
|
|
3566
|
+
* CIDR-notation IP ranges, e.g. "10.0.0.0/24".
|
|
3567
|
+
*/
|
|
3568
|
+
allowed_ips: string[];
|
|
3569
|
+
}
|
|
3570
|
+
/**
|
|
3571
|
+
* Partial update for a secure_proxy whitelist. At least one of
|
|
3572
|
+
* `allowed_domains` or `allowed_ips` must be provided.
|
|
3573
|
+
*
|
|
3574
|
+
* Per-field semantics:
|
|
3575
|
+
* - **omitted** — the field is not modified; the stored value is preserved.
|
|
3576
|
+
* - **non-empty array** — the stored value is replaced with the supplied list.
|
|
3577
|
+
* - **empty array (`[]`)** — the list is cleared (stored as `[]`). This is the
|
|
3578
|
+
* canonical way to remove all entries from a list. `null` is not accepted.
|
|
3579
|
+
*
|
|
3580
|
+
*/
|
|
3581
|
+
export interface SecureProxyWhitelistUpdate {
|
|
3582
|
+
/**
|
|
3583
|
+
* Exact domain ("api.example.com") or wildcard prefix ("*.example.com").
|
|
3584
|
+
* Wildcards must have at least 2 labels in the suffix.
|
|
3585
|
+
* Pass `[]` to clear all allowed domains.
|
|
3586
|
+
*
|
|
3587
|
+
*/
|
|
3588
|
+
allowed_domains?: string[];
|
|
3589
|
+
/**
|
|
3590
|
+
* CIDR-notation IP ranges, e.g. "10.0.0.0/24".
|
|
3591
|
+
* Pass `[]` to clear all allowed IPs.
|
|
3592
|
+
*
|
|
3593
|
+
*/
|
|
3594
|
+
allowed_ips?: string[];
|
|
3595
|
+
}
|
|
3379
3596
|
export interface SetIntegrationAppMappingRequest {
|
|
3380
3597
|
/**
|
|
3381
3598
|
* UUID of the integration app instance
|
|
@@ -3861,6 +4078,10 @@ declare namespace Components {
|
|
|
3861
4078
|
* Description of the change that was made at this point in history
|
|
3862
4079
|
*/
|
|
3863
4080
|
change_description?: string;
|
|
4081
|
+
/**
|
|
4082
|
+
* User ID of the user who made the change that produced this history entry
|
|
4083
|
+
*/
|
|
4084
|
+
changed_by?: string;
|
|
3864
4085
|
/**
|
|
3865
4086
|
* ISO-8601 timestamp when the use case was originally created
|
|
3866
4087
|
*/
|
|
@@ -4205,6 +4426,29 @@ declare namespace Paths {
|
|
|
4205
4426
|
export type $500 = Components.Responses.InternalServerError;
|
|
4206
4427
|
}
|
|
4207
4428
|
}
|
|
4429
|
+
namespace GetSecureProxyWhitelist {
|
|
4430
|
+
namespace Parameters {
|
|
4431
|
+
export type IntegrationId = string; // uuid
|
|
4432
|
+
export type UseCaseId = string; // uuid
|
|
4433
|
+
}
|
|
4434
|
+
export interface PathParameters {
|
|
4435
|
+
integrationId: Parameters.IntegrationId /* uuid */;
|
|
4436
|
+
useCaseId: Parameters.UseCaseId /* uuid */;
|
|
4437
|
+
}
|
|
4438
|
+
namespace Responses {
|
|
4439
|
+
export type $200 = /**
|
|
4440
|
+
* Current whitelist state for a secure_proxy use case. vpc_mode is read-only
|
|
4441
|
+
* context so the UI can show the user what mode the pool is in.
|
|
4442
|
+
*
|
|
4443
|
+
*/
|
|
4444
|
+
Components.Schemas.SecureProxyWhitelist;
|
|
4445
|
+
export type $400 = Components.Responses.BadRequest;
|
|
4446
|
+
export type $401 = Components.Responses.Unauthorized;
|
|
4447
|
+
export type $403 = Components.Responses.Forbidden;
|
|
4448
|
+
export interface $404 {
|
|
4449
|
+
}
|
|
4450
|
+
}
|
|
4451
|
+
}
|
|
4208
4452
|
namespace GetUseCase {
|
|
4209
4453
|
namespace Parameters {
|
|
4210
4454
|
export type IntegrationId = string; // uuid
|
|
@@ -4249,6 +4493,37 @@ declare namespace Paths {
|
|
|
4249
4493
|
export type $500 = Components.Responses.InternalServerError;
|
|
4250
4494
|
}
|
|
4251
4495
|
}
|
|
4496
|
+
namespace ListSecureProxyWhitelistHistory {
|
|
4497
|
+
namespace Parameters {
|
|
4498
|
+
export type IntegrationId = string; // uuid
|
|
4499
|
+
export type Limit = number;
|
|
4500
|
+
export type UseCaseId = string; // uuid
|
|
4501
|
+
}
|
|
4502
|
+
export interface PathParameters {
|
|
4503
|
+
integrationId: Parameters.IntegrationId /* uuid */;
|
|
4504
|
+
useCaseId: Parameters.UseCaseId /* uuid */;
|
|
4505
|
+
}
|
|
4506
|
+
export interface QueryParameters {
|
|
4507
|
+
limit?: Parameters.Limit;
|
|
4508
|
+
}
|
|
4509
|
+
namespace Responses {
|
|
4510
|
+
export interface $200 {
|
|
4511
|
+
/**
|
|
4512
|
+
* Entries are `SecureProxyUseCaseHistoryEntry` in reverse
|
|
4513
|
+
* chronological order (newest first). Entries older than the
|
|
4514
|
+
* requested `limit` are not returned.
|
|
4515
|
+
*
|
|
4516
|
+
*/
|
|
4517
|
+
history: Components.Schemas.SecureProxyUseCaseHistoryEntry[];
|
|
4518
|
+
}
|
|
4519
|
+
export type $400 = Components.Responses.BadRequest;
|
|
4520
|
+
export type $401 = Components.Responses.Unauthorized;
|
|
4521
|
+
export type $403 = Components.Responses.Forbidden;
|
|
4522
|
+
export interface $404 {
|
|
4523
|
+
}
|
|
4524
|
+
export type $500 = Components.Responses.InternalServerError;
|
|
4525
|
+
}
|
|
4526
|
+
}
|
|
4252
4527
|
namespace ListUseCaseHistory {
|
|
4253
4528
|
namespace Parameters {
|
|
4254
4529
|
export type Cursor = string;
|
|
@@ -4572,6 +4847,41 @@ declare namespace Paths {
|
|
|
4572
4847
|
export type $500 = Components.Responses.InternalServerError;
|
|
4573
4848
|
}
|
|
4574
4849
|
}
|
|
4850
|
+
namespace UpdateSecureProxyWhitelist {
|
|
4851
|
+
namespace Parameters {
|
|
4852
|
+
export type IntegrationId = string; // uuid
|
|
4853
|
+
export type UseCaseId = string; // uuid
|
|
4854
|
+
}
|
|
4855
|
+
export interface PathParameters {
|
|
4856
|
+
integrationId: Parameters.IntegrationId /* uuid */;
|
|
4857
|
+
useCaseId: Parameters.UseCaseId /* uuid */;
|
|
4858
|
+
}
|
|
4859
|
+
export type RequestBody = /**
|
|
4860
|
+
* Partial update for a secure_proxy whitelist. At least one of
|
|
4861
|
+
* `allowed_domains` or `allowed_ips` must be provided.
|
|
4862
|
+
*
|
|
4863
|
+
* Per-field semantics:
|
|
4864
|
+
* - **omitted** — the field is not modified; the stored value is preserved.
|
|
4865
|
+
* - **non-empty array** — the stored value is replaced with the supplied list.
|
|
4866
|
+
* - **empty array (`[]`)** — the list is cleared (stored as `[]`). This is the
|
|
4867
|
+
* canonical way to remove all entries from a list. `null` is not accepted.
|
|
4868
|
+
*
|
|
4869
|
+
*/
|
|
4870
|
+
Components.Schemas.SecureProxyWhitelistUpdate;
|
|
4871
|
+
namespace Responses {
|
|
4872
|
+
export type $200 = /**
|
|
4873
|
+
* Current whitelist state for a secure_proxy use case. vpc_mode is read-only
|
|
4874
|
+
* context so the UI can show the user what mode the pool is in.
|
|
4875
|
+
*
|
|
4876
|
+
*/
|
|
4877
|
+
Components.Schemas.SecureProxyWhitelist;
|
|
4878
|
+
export type $400 = Components.Responses.BadRequest;
|
|
4879
|
+
export type $401 = Components.Responses.Unauthorized;
|
|
4880
|
+
export type $403 = Components.Responses.Forbidden;
|
|
4881
|
+
export interface $404 {
|
|
4882
|
+
}
|
|
4883
|
+
}
|
|
4884
|
+
}
|
|
4575
4885
|
namespace UpdateUseCase {
|
|
4576
4886
|
namespace Parameters {
|
|
4577
4887
|
export type IntegrationId = string; // uuid
|
|
@@ -4871,6 +5181,66 @@ export interface OperationMethods {
|
|
|
4871
5181
|
data?: any,
|
|
4872
5182
|
config?: AxiosRequestConfig
|
|
4873
5183
|
): OperationResponse<Paths.DeleteIntegrationV2.Responses.$200>
|
|
5184
|
+
/**
|
|
5185
|
+
* getSecureProxyWhitelist - Get secure_proxy whitelist (admin portal only)
|
|
5186
|
+
*
|
|
5187
|
+
* Returns the current allowed_domains, allowed_ips, and vpc_mode for a secure_proxy use case.
|
|
5188
|
+
* Staff-only — gated by internal-auth issuer AND admin-portal Cognito user pool membership.
|
|
5189
|
+
* Rejects Login-As tokens.
|
|
5190
|
+
*
|
|
5191
|
+
*/
|
|
5192
|
+
'getSecureProxyWhitelist'(
|
|
5193
|
+
parameters?: Parameters<Paths.GetSecureProxyWhitelist.PathParameters> | null,
|
|
5194
|
+
data?: any,
|
|
5195
|
+
config?: AxiosRequestConfig
|
|
5196
|
+
): OperationResponse<Paths.GetSecureProxyWhitelist.Responses.$200>
|
|
5197
|
+
/**
|
|
5198
|
+
* updateSecureProxyWhitelist - Update secure_proxy whitelist (admin portal only)
|
|
5199
|
+
*
|
|
5200
|
+
* Replaces allowed_domains and/or allowed_ips on a secure_proxy use case.
|
|
5201
|
+
* At least one of the two fields is required. Validation mirrors the CLI's
|
|
5202
|
+
* `validateDomainPatterns` / `validateCidrs`. Writes a USECASE_HISTORY row
|
|
5203
|
+
* with the admin user's email as `changed_by`.
|
|
5204
|
+
*
|
|
5205
|
+
* Update semantics per field:
|
|
5206
|
+
* - **omitted** — field is not modified; the stored value is preserved.
|
|
5207
|
+
* - **non-empty array** — the stored value is replaced with the supplied list.
|
|
5208
|
+
* - **empty array (`[]`)** — the list is cleared (stored as `[]`). This is
|
|
5209
|
+
* the canonical way to remove all entries. `null` is not accepted.
|
|
5210
|
+
*
|
|
5211
|
+
* Staff-only — same auth gates as GET.
|
|
5212
|
+
*
|
|
5213
|
+
*/
|
|
5214
|
+
'updateSecureProxyWhitelist'(
|
|
5215
|
+
parameters?: Parameters<Paths.UpdateSecureProxyWhitelist.PathParameters> | null,
|
|
5216
|
+
data?: Paths.UpdateSecureProxyWhitelist.RequestBody,
|
|
5217
|
+
config?: AxiosRequestConfig
|
|
5218
|
+
): OperationResponse<Paths.UpdateSecureProxyWhitelist.Responses.$200>
|
|
5219
|
+
/**
|
|
5220
|
+
* listSecureProxyWhitelistHistory - List secure_proxy whitelist change history (admin portal only)
|
|
5221
|
+
*
|
|
5222
|
+
* Returns the most recent USECASE_HISTORY entries for a secure_proxy use case,
|
|
5223
|
+
* in reverse chronological order (newest first). Each entry includes the
|
|
5224
|
+
* actor email (`changed_by`), the ISO-8601 timestamp (`history_created_at`),
|
|
5225
|
+
* the `change_description` (free-text action), and the full `configuration`
|
|
5226
|
+
* snapshot — from which UI-08 computes a before/after diff between consecutive
|
|
5227
|
+
* entries.
|
|
5228
|
+
*
|
|
5229
|
+
* Staff-only — gated by internal-auth issuer AND admin-portal Cognito user pool
|
|
5230
|
+
* membership. Rejects Login-As tokens (same auth gate as the GET / PUT
|
|
5231
|
+
* secure-proxy-whitelist operations).
|
|
5232
|
+
*
|
|
5233
|
+
* Thin wrapper over the service-layer `listUseCaseHistory` that powers
|
|
5234
|
+
* `GET /v1/integrations/{integrationId}/use-cases/{useCaseId}/history` — the
|
|
5235
|
+
* separate path exists because the /v1 variant is tenant-gated and admin-portal
|
|
5236
|
+
* internal-auth tokens do not carry tenant permissions.
|
|
5237
|
+
*
|
|
5238
|
+
*/
|
|
5239
|
+
'listSecureProxyWhitelistHistory'(
|
|
5240
|
+
parameters?: Parameters<Paths.ListSecureProxyWhitelistHistory.QueryParameters & Paths.ListSecureProxyWhitelistHistory.PathParameters> | null,
|
|
5241
|
+
data?: any,
|
|
5242
|
+
config?: AxiosRequestConfig
|
|
5243
|
+
): OperationResponse<Paths.ListSecureProxyWhitelistHistory.Responses.$200>
|
|
4874
5244
|
/**
|
|
4875
5245
|
* setIntegrationAppMapping - setIntegrationAppMapping
|
|
4876
5246
|
*
|
|
@@ -5403,6 +5773,70 @@ export interface PathsDictionary {
|
|
|
5403
5773
|
config?: AxiosRequestConfig
|
|
5404
5774
|
): OperationResponse<Paths.DeleteIntegrationV2.Responses.$200>
|
|
5405
5775
|
}
|
|
5776
|
+
['/v2/integrations/{integrationId}/use-cases/{useCaseId}/secure-proxy-whitelist']: {
|
|
5777
|
+
/**
|
|
5778
|
+
* getSecureProxyWhitelist - Get secure_proxy whitelist (admin portal only)
|
|
5779
|
+
*
|
|
5780
|
+
* Returns the current allowed_domains, allowed_ips, and vpc_mode for a secure_proxy use case.
|
|
5781
|
+
* Staff-only — gated by internal-auth issuer AND admin-portal Cognito user pool membership.
|
|
5782
|
+
* Rejects Login-As tokens.
|
|
5783
|
+
*
|
|
5784
|
+
*/
|
|
5785
|
+
'get'(
|
|
5786
|
+
parameters?: Parameters<Paths.GetSecureProxyWhitelist.PathParameters> | null,
|
|
5787
|
+
data?: any,
|
|
5788
|
+
config?: AxiosRequestConfig
|
|
5789
|
+
): OperationResponse<Paths.GetSecureProxyWhitelist.Responses.$200>
|
|
5790
|
+
/**
|
|
5791
|
+
* updateSecureProxyWhitelist - Update secure_proxy whitelist (admin portal only)
|
|
5792
|
+
*
|
|
5793
|
+
* Replaces allowed_domains and/or allowed_ips on a secure_proxy use case.
|
|
5794
|
+
* At least one of the two fields is required. Validation mirrors the CLI's
|
|
5795
|
+
* `validateDomainPatterns` / `validateCidrs`. Writes a USECASE_HISTORY row
|
|
5796
|
+
* with the admin user's email as `changed_by`.
|
|
5797
|
+
*
|
|
5798
|
+
* Update semantics per field:
|
|
5799
|
+
* - **omitted** — field is not modified; the stored value is preserved.
|
|
5800
|
+
* - **non-empty array** — the stored value is replaced with the supplied list.
|
|
5801
|
+
* - **empty array (`[]`)** — the list is cleared (stored as `[]`). This is
|
|
5802
|
+
* the canonical way to remove all entries. `null` is not accepted.
|
|
5803
|
+
*
|
|
5804
|
+
* Staff-only — same auth gates as GET.
|
|
5805
|
+
*
|
|
5806
|
+
*/
|
|
5807
|
+
'put'(
|
|
5808
|
+
parameters?: Parameters<Paths.UpdateSecureProxyWhitelist.PathParameters> | null,
|
|
5809
|
+
data?: Paths.UpdateSecureProxyWhitelist.RequestBody,
|
|
5810
|
+
config?: AxiosRequestConfig
|
|
5811
|
+
): OperationResponse<Paths.UpdateSecureProxyWhitelist.Responses.$200>
|
|
5812
|
+
}
|
|
5813
|
+
['/v2/integrations/{integrationId}/use-cases/{useCaseId}/secure-proxy-whitelist/history']: {
|
|
5814
|
+
/**
|
|
5815
|
+
* listSecureProxyWhitelistHistory - List secure_proxy whitelist change history (admin portal only)
|
|
5816
|
+
*
|
|
5817
|
+
* Returns the most recent USECASE_HISTORY entries for a secure_proxy use case,
|
|
5818
|
+
* in reverse chronological order (newest first). Each entry includes the
|
|
5819
|
+
* actor email (`changed_by`), the ISO-8601 timestamp (`history_created_at`),
|
|
5820
|
+
* the `change_description` (free-text action), and the full `configuration`
|
|
5821
|
+
* snapshot — from which UI-08 computes a before/after diff between consecutive
|
|
5822
|
+
* entries.
|
|
5823
|
+
*
|
|
5824
|
+
* Staff-only — gated by internal-auth issuer AND admin-portal Cognito user pool
|
|
5825
|
+
* membership. Rejects Login-As tokens (same auth gate as the GET / PUT
|
|
5826
|
+
* secure-proxy-whitelist operations).
|
|
5827
|
+
*
|
|
5828
|
+
* Thin wrapper over the service-layer `listUseCaseHistory` that powers
|
|
5829
|
+
* `GET /v1/integrations/{integrationId}/use-cases/{useCaseId}/history` — the
|
|
5830
|
+
* separate path exists because the /v1 variant is tenant-gated and admin-portal
|
|
5831
|
+
* internal-auth tokens do not carry tenant permissions.
|
|
5832
|
+
*
|
|
5833
|
+
*/
|
|
5834
|
+
'get'(
|
|
5835
|
+
parameters?: Parameters<Paths.ListSecureProxyWhitelistHistory.QueryParameters & Paths.ListSecureProxyWhitelistHistory.PathParameters> | null,
|
|
5836
|
+
data?: any,
|
|
5837
|
+
config?: AxiosRequestConfig
|
|
5838
|
+
): OperationResponse<Paths.ListSecureProxyWhitelistHistory.Responses.$200>
|
|
5839
|
+
}
|
|
5406
5840
|
['/v1/integrations/{integrationId}/app-mapping']: {
|
|
5407
5841
|
/**
|
|
5408
5842
|
* setIntegrationAppMapping - setIntegrationAppMapping
|
|
@@ -5686,6 +6120,7 @@ export type EmbeddedSecureProxyUseCaseRequest = Components.Schemas.EmbeddedSecur
|
|
|
5686
6120
|
export type EmbeddedUseCaseRequest = Components.Schemas.EmbeddedUseCaseRequest;
|
|
5687
6121
|
export type EmbeddedUseCaseRequestBase = Components.Schemas.EmbeddedUseCaseRequestBase;
|
|
5688
6122
|
export type EntityUpdate = Components.Schemas.EntityUpdate;
|
|
6123
|
+
export type EnvVarRefConfig = Components.Schemas.EnvVarRefConfig;
|
|
5689
6124
|
export type EnvironmentFieldConfig = Components.Schemas.EnvironmentFieldConfig;
|
|
5690
6125
|
export type ErpEvent = Components.Schemas.ErpEvent;
|
|
5691
6126
|
export type ErpEventV3 = Components.Schemas.ErpEventV3;
|
|
@@ -5752,6 +6187,9 @@ export type OutboundStatusResponse = Components.Schemas.OutboundStatusResponse;
|
|
|
5752
6187
|
export type OutboundUseCase = Components.Schemas.OutboundUseCase;
|
|
5753
6188
|
export type OutboundUseCaseHistoryEntry = Components.Schemas.OutboundUseCaseHistoryEntry;
|
|
5754
6189
|
export type OutboundUseCaseStatus = Components.Schemas.OutboundUseCaseStatus;
|
|
6190
|
+
export type PortalOrigin = Components.Schemas.PortalOrigin;
|
|
6191
|
+
export type PortalRefConfig = Components.Schemas.PortalRefConfig;
|
|
6192
|
+
export type PortalRefFilter = Components.Schemas.PortalRefFilter;
|
|
5755
6193
|
export type PruneScopeConfig = Components.Schemas.PruneScopeConfig;
|
|
5756
6194
|
export type QueryAccessLogsRequest = Components.Schemas.QueryAccessLogsRequest;
|
|
5757
6195
|
export type QueryEventsRequest = Components.Schemas.QueryEventsRequest;
|
|
@@ -5772,6 +6210,8 @@ export type SecureProxySummary = Components.Schemas.SecureProxySummary;
|
|
|
5772
6210
|
export type SecureProxyUseCase = Components.Schemas.SecureProxyUseCase;
|
|
5773
6211
|
export type SecureProxyUseCaseConfiguration = Components.Schemas.SecureProxyUseCaseConfiguration;
|
|
5774
6212
|
export type SecureProxyUseCaseHistoryEntry = Components.Schemas.SecureProxyUseCaseHistoryEntry;
|
|
6213
|
+
export type SecureProxyWhitelist = Components.Schemas.SecureProxyWhitelist;
|
|
6214
|
+
export type SecureProxyWhitelistUpdate = Components.Schemas.SecureProxyWhitelistUpdate;
|
|
5775
6215
|
export type SetIntegrationAppMappingRequest = Components.Schemas.SetIntegrationAppMappingRequest;
|
|
5776
6216
|
export type TimeSeriesBreakdownItemV2 = Components.Schemas.TimeSeriesBreakdownItemV2;
|
|
5777
6217
|
export type TimeSeriesBucket = Components.Schemas.TimeSeriesBucket;
|