@epilot/sdk 2.5.0 → 2.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (142) hide show
  1. package/definitions/integration-toolkit-runtime.json +1 -1
  2. package/definitions/integration-toolkit.json +480 -4
  3. package/definitions/metering-runtime.json +1 -1
  4. package/definitions/metering.json +728 -64
  5. package/dist/apis/access-token.cjs +6 -6
  6. package/dist/apis/access-token.js +1 -1
  7. package/dist/apis/address-suggestions.cjs +6 -6
  8. package/dist/apis/address-suggestions.js +1 -1
  9. package/dist/apis/address.cjs +6 -6
  10. package/dist/apis/address.js +1 -1
  11. package/dist/apis/ai-agents.cjs +6 -6
  12. package/dist/apis/ai-agents.js +1 -1
  13. package/dist/apis/app.cjs +6 -6
  14. package/dist/apis/app.js +1 -1
  15. package/dist/apis/audit-logs.cjs +6 -6
  16. package/dist/apis/audit-logs.js +1 -1
  17. package/dist/apis/automation.cjs +6 -6
  18. package/dist/apis/automation.js +1 -1
  19. package/dist/apis/billing.cjs +6 -6
  20. package/dist/apis/billing.js +1 -1
  21. package/dist/apis/blueprint-manifest.cjs +6 -6
  22. package/dist/apis/blueprint-manifest.js +1 -1
  23. package/dist/apis/calendar.cjs +6 -6
  24. package/dist/apis/calendar.js +1 -1
  25. package/dist/apis/configuration-hub.cjs +6 -6
  26. package/dist/apis/configuration-hub.js +1 -1
  27. package/dist/apis/consent.cjs +6 -6
  28. package/dist/apis/consent.js +1 -1
  29. package/dist/apis/customer-portal.cjs +6 -6
  30. package/dist/apis/customer-portal.js +1 -1
  31. package/dist/apis/dashboard.cjs +6 -6
  32. package/dist/apis/dashboard.js +1 -1
  33. package/dist/apis/data-governance.cjs +6 -6
  34. package/dist/apis/data-governance.js +1 -1
  35. package/dist/apis/deduplication.cjs +6 -6
  36. package/dist/apis/deduplication.js +1 -1
  37. package/dist/apis/design.cjs +6 -6
  38. package/dist/apis/design.js +1 -1
  39. package/dist/apis/document.cjs +6 -6
  40. package/dist/apis/document.js +1 -1
  41. package/dist/apis/email-settings.cjs +6 -6
  42. package/dist/apis/email-settings.js +1 -1
  43. package/dist/apis/email-template.cjs +6 -6
  44. package/dist/apis/email-template.js +1 -1
  45. package/dist/apis/entity-mapping.cjs +6 -6
  46. package/dist/apis/entity-mapping.js +1 -1
  47. package/dist/apis/entity.cjs +6 -6
  48. package/dist/apis/entity.js +1 -1
  49. package/dist/apis/environments.cjs +6 -6
  50. package/dist/apis/environments.js +1 -1
  51. package/dist/apis/event-catalog.cjs +6 -6
  52. package/dist/apis/event-catalog.js +1 -1
  53. package/dist/apis/file.cjs +6 -6
  54. package/dist/apis/file.js +1 -1
  55. package/dist/apis/iban.cjs +6 -6
  56. package/dist/apis/iban.js +1 -1
  57. package/dist/apis/integration-toolkit.cjs +8 -8
  58. package/dist/apis/integration-toolkit.d.cts +2 -2
  59. package/dist/apis/integration-toolkit.d.ts +2 -2
  60. package/dist/apis/integration-toolkit.js +2 -2
  61. package/dist/apis/journey.cjs +6 -6
  62. package/dist/apis/journey.js +1 -1
  63. package/dist/apis/kanban.cjs +6 -6
  64. package/dist/apis/kanban.js +1 -1
  65. package/dist/apis/message.cjs +6 -6
  66. package/dist/apis/message.js +1 -1
  67. package/dist/apis/metering.cjs +8 -8
  68. package/dist/apis/metering.d.cts +2 -2
  69. package/dist/apis/metering.d.ts +2 -2
  70. package/dist/apis/metering.js +2 -2
  71. package/dist/apis/notes.cjs +6 -6
  72. package/dist/apis/notes.js +1 -1
  73. package/dist/apis/notification.cjs +6 -6
  74. package/dist/apis/notification.js +1 -1
  75. package/dist/apis/organization.cjs +6 -6
  76. package/dist/apis/organization.js +1 -1
  77. package/dist/apis/partner-directory.cjs +6 -6
  78. package/dist/apis/partner-directory.js +1 -1
  79. package/dist/apis/permissions.cjs +6 -6
  80. package/dist/apis/permissions.js +1 -1
  81. package/dist/apis/pricing-tier.cjs +6 -6
  82. package/dist/apis/pricing-tier.js +1 -1
  83. package/dist/apis/pricing.cjs +6 -6
  84. package/dist/apis/pricing.js +1 -1
  85. package/dist/apis/purpose.cjs +6 -6
  86. package/dist/apis/purpose.js +1 -1
  87. package/dist/apis/query.cjs +6 -6
  88. package/dist/apis/query.js +1 -1
  89. package/dist/apis/sandbox.cjs +6 -6
  90. package/dist/apis/sandbox.js +1 -1
  91. package/dist/apis/sharing.cjs +6 -6
  92. package/dist/apis/sharing.js +1 -1
  93. package/dist/apis/submission.cjs +6 -6
  94. package/dist/apis/submission.js +1 -1
  95. package/dist/apis/target.cjs +6 -6
  96. package/dist/apis/target.js +1 -1
  97. package/dist/apis/targeting.cjs +6 -6
  98. package/dist/apis/targeting.js +1 -1
  99. package/dist/apis/template-variables.cjs +6 -6
  100. package/dist/apis/template-variables.js +1 -1
  101. package/dist/apis/user.cjs +6 -6
  102. package/dist/apis/user.js +1 -1
  103. package/dist/apis/validation-rules.cjs +6 -6
  104. package/dist/apis/validation-rules.js +1 -1
  105. package/dist/apis/webhooks.cjs +6 -6
  106. package/dist/apis/webhooks.js +1 -1
  107. package/dist/apis/workflow-definition.cjs +6 -6
  108. package/dist/apis/workflow-definition.js +1 -1
  109. package/dist/apis/workflow.cjs +6 -6
  110. package/dist/apis/workflow.js +1 -1
  111. package/dist/{chunk-JTFWOEZF.cjs → chunk-4FFGRWLS.cjs} +1 -1
  112. package/dist/chunk-56MMZJOD.js +14 -0
  113. package/dist/{chunk-WRD2XFHY.js → chunk-QNUU4TTU.js} +4 -4
  114. package/dist/{chunk-C7GDYBXX.cjs → chunk-SDIGGISZ.cjs} +4 -4
  115. package/dist/chunk-T6A22LSD.cjs +14 -0
  116. package/dist/chunk-WM74R3BD.js +14 -0
  117. package/dist/index.cjs +12 -12
  118. package/dist/index.d.cts +2 -2
  119. package/dist/index.d.ts +2 -2
  120. package/dist/index.js +3 -3
  121. package/dist/integration-toolkit-3I3IPVFN.cjs +7 -0
  122. package/dist/integration-toolkit-XAFQXNQY.js +7 -0
  123. package/dist/{integration-toolkit-runtime-5KG3LGXF.cjs → integration-toolkit-runtime-YHTU4X5J.cjs} +2 -2
  124. package/dist/{integration-toolkit-runtime-LYHFVIRW.js → integration-toolkit-runtime-YR4CIMKH.js} +1 -1
  125. package/dist/{integration-toolkit.d-Ry-KC9ow.d.cts → integration-toolkit.d-BstNqiJb.d.cts} +460 -20
  126. package/dist/{integration-toolkit.d-Ry-KC9ow.d.ts → integration-toolkit.d-BstNqiJb.d.ts} +460 -20
  127. package/dist/metering-3IUSYAGN.js +7 -0
  128. package/dist/metering-MHBFU7QH.cjs +7 -0
  129. package/dist/{metering-runtime-HAIWXZXJ.cjs → metering-runtime-IUZJHBVS.cjs} +2 -2
  130. package/dist/{metering-runtime-NJ6NEUMB.js → metering-runtime-KZMJKKUZ.js} +1 -1
  131. package/dist/{metering.d-DvtPv7wk.d.cts → metering.d-CUICZDiL.d.cts} +718 -130
  132. package/dist/{metering.d-DvtPv7wk.d.ts → metering.d-CUICZDiL.d.ts} +718 -130
  133. package/docs/integration-toolkit.md +334 -19
  134. package/docs/metering.md +570 -48
  135. package/package.json +1 -1
  136. package/dist/chunk-265TE2OV.js +0 -14
  137. package/dist/chunk-4ZMLRFDX.cjs +0 -14
  138. package/dist/chunk-U4PUHKZC.js +0 -14
  139. package/dist/integration-toolkit-FRPFOYT2.js +0 -7
  140. package/dist/integration-toolkit-VNMDI55O.cjs +0 -7
  141. package/dist/metering-DZNZPPY6.cjs +0 -7
  142. package/dist/metering-KOSCPPKB.js +0 -7
@@ -50,6 +50,9 @@ const { data } = await integrationToolkitClient.acknowledgeTracking(...)
50
50
  - [`getIntegrationV2`](#getintegrationv2)
51
51
  - [`updateIntegrationV2`](#updateintegrationv2)
52
52
  - [`deleteIntegrationV2`](#deleteintegrationv2)
53
+ - [`getSecureProxyWhitelist`](#getsecureproxywhitelist)
54
+ - [`updateSecureProxyWhitelist`](#updatesecureproxywhitelist)
55
+ - [`listSecureProxyWhitelistHistory`](#listsecureproxywhitelisthistory)
53
56
  - [`setIntegrationAppMapping`](#setintegrationappmapping)
54
57
  - [`deleteIntegrationAppMapping`](#deleteintegrationappmapping)
55
58
  - [`getOutboundStatus`](#getoutboundstatus)
@@ -108,6 +111,10 @@ const { data } = await integrationToolkitClient.acknowledgeTracking(...)
108
111
  - [`FileProxyUrlParam`](#fileproxyurlparam)
109
112
  - [`FileProxyUrlParams`](#fileproxyurlparams)
110
113
  - [`FileProxyUrlConfig`](#fileproxyurlconfig)
114
+ - [`PortalOrigin`](#portalorigin)
115
+ - [`PortalRefFilter`](#portalreffilter)
116
+ - [`PortalRefConfig`](#portalrefconfig)
117
+ - [`EnvVarRefConfig`](#envvarrefconfig)
111
118
  - [`EmbeddedUseCaseRequest`](#embeddedusecaserequest)
112
119
  - [`EmbeddedUseCaseRequestBase`](#embeddedusecaserequestbase)
113
120
  - [`EmbeddedInboundUseCaseRequest`](#embeddedinboundusecaserequest)
@@ -144,6 +151,8 @@ const { data } = await integrationToolkitClient.acknowledgeTracking(...)
144
151
  - [`ManagedCallUseCaseHistoryEntry`](#managedcallusecasehistoryentry)
145
152
  - [`SecureProxyUseCaseHistoryEntry`](#secureproxyusecasehistoryentry)
146
153
  - [`SecureProxyUseCaseConfiguration`](#secureproxyusecaseconfiguration)
154
+ - [`SecureProxyWhitelist`](#secureproxywhitelist)
155
+ - [`SecureProxyWhitelistUpdate`](#secureproxywhitelistupdate)
147
156
  - [`SecureProxySummary`](#secureproxysummary)
148
157
  - [`SecureProxyRequest`](#secureproxyrequest)
149
158
  - [`SecureProxyResponse`](#secureproxyresponse)
@@ -295,6 +304,7 @@ const { data } = await client.processErpUpdatesEventsV3(
295
304
  {
296
305
  integration_id: '3fa85f64-5717-4562-b3fc-2c963f66afa6',
297
306
  correlation_id: 'string',
307
+ group_id: 'customer-42',
298
308
  events: [
299
309
  {},
300
310
  {}
@@ -1182,6 +1192,7 @@ const { data } = await client.listUseCaseHistory({
1182
1192
  "slug": "string",
1183
1193
  "enabled": true,
1184
1194
  "change_description": "string",
1195
+ "changed_by": "string",
1185
1196
  "created_at": "1970-01-01T00:00:00.000Z",
1186
1197
  "updated_at": "1970-01-01T00:00:00.000Z",
1187
1198
  "history_created_at": "1970-01-01T00:00:00.000Z",
@@ -1651,6 +1662,115 @@ const { data } = await client.deleteIntegrationV2({
1651
1662
 
1652
1663
  ---
1653
1664
 
1665
+ ### `getSecureProxyWhitelist`
1666
+
1667
+ Get secure_proxy whitelist (admin portal only)
1668
+
1669
+ `GET /v2/integrations/{integrationId}/use-cases/{useCaseId}/secure-proxy-whitelist`
1670
+
1671
+ ```ts
1672
+ const { data } = await client.getSecureProxyWhitelist({
1673
+ integrationId: 'example',
1674
+ useCaseId: 'example',
1675
+ })
1676
+ ```
1677
+
1678
+ <details>
1679
+ <summary>Response</summary>
1680
+
1681
+ ```json
1682
+ {
1683
+ "vpc_mode": "static_ip",
1684
+ "allowed_domains": ["string"],
1685
+ "allowed_ips": ["string"]
1686
+ }
1687
+ ```
1688
+
1689
+ </details>
1690
+
1691
+ ---
1692
+
1693
+ ### `updateSecureProxyWhitelist`
1694
+
1695
+ Update secure_proxy whitelist (admin portal only)
1696
+
1697
+ `PUT /v2/integrations/{integrationId}/use-cases/{useCaseId}/secure-proxy-whitelist`
1698
+
1699
+ ```ts
1700
+ const { data } = await client.updateSecureProxyWhitelist(
1701
+ {
1702
+ integrationId: 'example',
1703
+ useCaseId: 'example',
1704
+ },
1705
+ {
1706
+ allowed_domains: ['string'],
1707
+ allowed_ips: ['string']
1708
+ },
1709
+ )
1710
+ ```
1711
+
1712
+ <details>
1713
+ <summary>Response</summary>
1714
+
1715
+ ```json
1716
+ {
1717
+ "vpc_mode": "static_ip",
1718
+ "allowed_domains": ["string"],
1719
+ "allowed_ips": ["string"]
1720
+ }
1721
+ ```
1722
+
1723
+ </details>
1724
+
1725
+ ---
1726
+
1727
+ ### `listSecureProxyWhitelistHistory`
1728
+
1729
+ List secure_proxy whitelist change history (admin portal only)
1730
+
1731
+ `GET /v2/integrations/{integrationId}/use-cases/{useCaseId}/secure-proxy-whitelist/history`
1732
+
1733
+ ```ts
1734
+ const { data } = await client.listSecureProxyWhitelistHistory({
1735
+ integrationId: 'example',
1736
+ useCaseId: 'example',
1737
+ limit: 1,
1738
+ })
1739
+ ```
1740
+
1741
+ <details>
1742
+ <summary>Response</summary>
1743
+
1744
+ ```json
1745
+ {
1746
+ "history": [
1747
+ {
1748
+ "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
1749
+ "useCaseId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
1750
+ "integrationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
1751
+ "name": "string",
1752
+ "slug": "string",
1753
+ "enabled": true,
1754
+ "change_description": "string",
1755
+ "changed_by": "string",
1756
+ "created_at": "1970-01-01T00:00:00.000Z",
1757
+ "updated_at": "1970-01-01T00:00:00.000Z",
1758
+ "history_created_at": "1970-01-01T00:00:00.000Z",
1759
+ "type": "secure_proxy",
1760
+ "configuration": {
1761
+ "vpc_mode": "static_ip",
1762
+ "allowed_domains": ["string"],
1763
+ "allowed_ips": ["string"]
1764
+ }
1765
+ }
1766
+ ]
1767
+ }
1768
+ ```
1769
+
1770
+ </details>
1771
+
1772
+ ---
1773
+
1654
1774
  ### `setIntegrationAppMapping`
1655
1775
 
1656
1776
  Creates or updates a mapping from an app/component to an integration.
@@ -2524,6 +2644,7 @@ type ErpEventV3 = unknown | unknown
2524
2644
  type ErpUpdatesEventsV3Request = {
2525
2645
  integration_id: string // uuid
2526
2646
  correlation_id?: string
2647
+ group_id?: string
2527
2648
  events: unknown | unknown[]
2528
2649
  }
2529
2650
  ```
@@ -2950,6 +3071,7 @@ type IntegrationWithUseCases = {
2950
3071
  secure_proxy?: { ... }
2951
3072
  auth?: { ... }
2952
3073
  params?: { ... }
3074
+ allowed_origins?: { ... }
2953
3075
  steps: { ... }
2954
3076
  response: { ... }
2955
3077
  }
@@ -3078,6 +3200,7 @@ type UpsertIntegrationWithUseCasesRequest = {
3078
3200
  secure_proxy?: { ... }
3079
3201
  auth?: { ... }
3080
3202
  params?: { ... }
3203
+ allowed_origins?: { ... }
3081
3204
  steps: { ... }
3082
3205
  response: { ... }
3083
3206
  }
@@ -3095,7 +3218,6 @@ type UpsertIntegrationWithUseCasesRequest = {
3095
3218
  inbound_use_case_slug?: { ... }
3096
3219
  }
3097
3220
  } | {
3098
- id?: string // uuid
3099
3221
  // ...
3100
3222
  }
3101
3223
  ```
@@ -3128,6 +3250,8 @@ type InboundIntegrationEventConfiguration = {
3128
3250
  relations?: { ... }
3129
3251
  relation_refs?: { ... }
3130
3252
  file_proxy_url?: { ... }
3253
+ portal_ref?: { ... }
3254
+ env_var_ref?: { ... }
3131
3255
  }>
3132
3256
  }>
3133
3257
  meter_readings?: Array<{
@@ -3153,6 +3277,8 @@ type InboundIntegrationEventConfiguration = {
3153
3277
  relations?: { ... }
3154
3278
  relation_refs?: { ... }
3155
3279
  file_proxy_url?: { ... }
3280
+ portal_ref?: { ... }
3281
+ env_var_ref?: { ... }
3156
3282
  }>
3157
3283
  }>
3158
3284
  }
@@ -3233,6 +3359,26 @@ type IntegrationEntity = {
3233
3359
  use_case_id: { ... }
3234
3360
  params?: { ... }
3235
3361
  }
3362
+ portal_ref?: {
3363
+ filter?: { ... }
3364
+ select?: { ... }
3365
+ return?: { ... }
3366
+ } | {
3367
+ filter?: { ... }
3368
+ select?: { ... }
3369
+ return: { ... }
3370
+ jsonataExpression: { ... }
3371
+ }
3372
+ env_var_ref?: {
3373
+ key: { ... }
3374
+ default?: { ... }
3375
+ return?: { ... }
3376
+ } | {
3377
+ key: { ... }
3378
+ default?: { ... }
3379
+ return: { ... }
3380
+ jsonataExpression: { ... }
3381
+ }
3236
3382
  }>
3237
3383
  }
3238
3384
  ```
@@ -3289,6 +3435,26 @@ type IntegrationMeterReading = {
3289
3435
  use_case_id: { ... }
3290
3436
  params?: { ... }
3291
3437
  }
3438
+ portal_ref?: {
3439
+ filter?: { ... }
3440
+ select?: { ... }
3441
+ return?: { ... }
3442
+ } | {
3443
+ filter?: { ... }
3444
+ select?: { ... }
3445
+ return: { ... }
3446
+ jsonataExpression: { ... }
3447
+ }
3448
+ env_var_ref?: {
3449
+ key: { ... }
3450
+ default?: { ... }
3451
+ return?: { ... }
3452
+ } | {
3453
+ key: { ... }
3454
+ default?: { ... }
3455
+ return: { ... }
3456
+ jsonataExpression: { ... }
3457
+ }
3292
3458
  }>
3293
3459
  }
3294
3460
  ```
@@ -3395,6 +3561,40 @@ type IntegrationEntityField = {
3395
3561
  jsonataExpression: { ... }
3396
3562
  }>
3397
3563
  }
3564
+ portal_ref?: {
3565
+ filter?: {
3566
+ origin?: { ... }
3567
+ enabled?: { ... }
3568
+ is_dummy?: { ... }
3569
+ is_epilot_domain?: { ... }
3570
+ name?: { ... }
3571
+ domain?: { ... }
3572
+ }
3573
+ select?: "single" | "all"
3574
+ return?: "portal_id" | "origin" | "domain" | "name"
3575
+ } | {
3576
+ filter?: {
3577
+ origin?: { ... }
3578
+ enabled?: { ... }
3579
+ is_dummy?: { ... }
3580
+ is_epilot_domain?: { ... }
3581
+ name?: { ... }
3582
+ domain?: { ... }
3583
+ }
3584
+ select?: "single" | "all"
3585
+ return: "jsonata"
3586
+ jsonataExpression: string
3587
+ }
3588
+ env_var_ref?: {
3589
+ key: string
3590
+ default?: string
3591
+ return?: "value"
3592
+ } | {
3593
+ key: string
3594
+ default?: string
3595
+ return: "jsonata"
3596
+ jsonataExpression: string
3597
+ }
3398
3598
  }
3399
3599
  ```
3400
3600
 
@@ -3453,6 +3653,78 @@ type FileProxyUrlConfig = {
3453
3653
  }
3454
3654
  ```
3455
3655
 
3656
+ ### `PortalOrigin`
3657
+
3658
+ Origin/type of an epilot portal configuration.
3659
+
3660
+ ```ts
3661
+ type PortalOrigin = "END_CUSTOMER_PORTAL" | "INSTALLER_PORTAL" | "B2B_PORTAL" | "ADDITIONAL_PORTAL"
3662
+ ```
3663
+
3664
+ ### `PortalRefFilter`
3665
+
3666
+ 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.
3667
+
3668
+
3669
+ ```ts
3670
+ type PortalRefFilter = {
3671
+ origin?: "END_CUSTOMER_PORTAL" | "INSTALLER_PORTAL" | "B2B_PORTAL" | "ADDITIONAL_PORTAL" | "END_CUSTOMER_PORTAL" | "INSTALLER_PORTAL" | "B2B_PORTAL" | "ADDITIONAL_PORTAL"[]
3672
+ enabled?: boolean
3673
+ is_dummy?: boolean
3674
+ is_epilot_domain?: boolean
3675
+ name?: string
3676
+ domain?: string
3677
+ }
3678
+ ```
3679
+
3680
+ ### `PortalRefConfig`
3681
+
3682
+ 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 ol
3683
+
3684
+ ```ts
3685
+ type PortalRefConfig = {
3686
+ filter?: {
3687
+ origin?: "END_CUSTOMER_PORTAL" | "INSTALLER_PORTAL" | "B2B_PORTAL" | "ADDITIONAL_PORTAL" | "END_CUSTOMER_PORTAL" | "INSTALLER_PORTAL" | "B2B_PORTAL" | "ADDITIONAL_PORTAL"[]
3688
+ enabled?: boolean
3689
+ is_dummy?: boolean
3690
+ is_epilot_domain?: boolean
3691
+ name?: string
3692
+ domain?: string
3693
+ }
3694
+ select?: "single" | "all"
3695
+ return?: "portal_id" | "origin" | "domain" | "name"
3696
+ } | {
3697
+ filter?: {
3698
+ origin?: "END_CUSTOMER_PORTAL" | "INSTALLER_PORTAL" | "B2B_PORTAL" | "ADDITIONAL_PORTAL" | "END_CUSTOMER_PORTAL" | "INSTALLER_PORTAL" | "B2B_PORTAL" | "ADDITIONAL_PORTAL"[]
3699
+ enabled?: boolean
3700
+ is_dummy?: boolean
3701
+ is_epilot_domain?: boolean
3702
+ name?: string
3703
+ domain?: string
3704
+ }
3705
+ select?: "single" | "all"
3706
+ return: "jsonata"
3707
+ jsonataExpression: string
3708
+ }
3709
+ ```
3710
+
3711
+ ### `EnvVarRefConfig`
3712
+
3713
+ 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
3714
+
3715
+ ```ts
3716
+ type EnvVarRefConfig = {
3717
+ key: string
3718
+ default?: string
3719
+ return?: "value"
3720
+ } | {
3721
+ key: string
3722
+ default?: string
3723
+ return: "jsonata"
3724
+ jsonataExpression: string
3725
+ }
3726
+ ```
3727
+
3456
3728
  ### `EmbeddedUseCaseRequest`
3457
3729
 
3458
3730
  ```ts
@@ -3532,6 +3804,7 @@ type EmbeddedUseCaseRequest = {
3532
3804
  required: { ... }
3533
3805
  description?: { ... }
3534
3806
  }>
3807
+ allowed_origins?: string // uri[]
3535
3808
  steps: Array<{
3536
3809
  url: { ... }
3537
3810
  method: { ... }
@@ -3555,7 +3828,6 @@ type EmbeddedUseCaseRequest = {
3555
3828
  type: "managed_call"
3556
3829
  configuration?: {
3557
3830
  operation: {
3558
- method: { ... }
3559
3831
  // ...
3560
3832
  }
3561
3833
  ```
@@ -3663,6 +3935,7 @@ type EmbeddedFileProxyUseCaseRequest = {
3663
3935
  required: { ... }
3664
3936
  description?: { ... }
3665
3937
  }>
3938
+ allowed_origins?: string // uri[]
3666
3939
  steps: Array<{
3667
3940
  url: { ... }
3668
3941
  method: { ... }
@@ -3838,6 +4111,7 @@ type FileProxyUseCase = {
3838
4111
  required: { ... }
3839
4112
  description?: { ... }
3840
4113
  }>
4114
+ allowed_origins?: string // uri[]
3841
4115
  steps: Array<{
3842
4116
  url: { ... }
3843
4117
  method: { ... }
@@ -3996,6 +4270,7 @@ type UseCase = {
3996
4270
  required: { ... }
3997
4271
  description?: { ... }
3998
4272
  }>
4273
+ allowed_origins?: string // uri[]
3999
4274
  steps: Array<{
4000
4275
  url: { ... }
4001
4276
  method: { ... }
@@ -4010,7 +4285,6 @@ type UseCase = {
4010
4285
  content_type?: { ... }
4011
4286
  }
4012
4287
  }
4013
- } | {
4014
4288
  // ...
4015
4289
  }
4016
4290
  ```
@@ -4020,7 +4294,7 @@ type UseCase = {
4020
4294
  ```ts
4021
4295
  type CreateUseCaseRequest = {
4022
4296
  name: string
4023
- slug?: string
4297
+ slug: string
4024
4298
  enabled: boolean
4025
4299
  type: "inbound"
4026
4300
  configuration?: {
@@ -4045,7 +4319,7 @@ type CreateUseCaseRequest = {
4045
4319
  }
4046
4320
  } | {
4047
4321
  name: string
4048
- slug?: string
4322
+ slug: string
4049
4323
  enabled: boolean
4050
4324
  type: "outbound"
4051
4325
  configuration?: {
@@ -4062,7 +4336,7 @@ type CreateUseCaseRequest = {
4062
4336
  }
4063
4337
  } | {
4064
4338
  name: string
4065
- slug?: string
4339
+ slug: string
4066
4340
  enabled: boolean
4067
4341
  type: "file_proxy"
4068
4342
  configuration?: {
@@ -4088,6 +4362,7 @@ type CreateUseCaseRequest = {
4088
4362
  required: { ... }
4089
4363
  description?: { ... }
4090
4364
  }>
4365
+ allowed_origins?: string // uri[]
4091
4366
  steps: Array<{
4092
4367
  url: { ... }
4093
4368
  method: { ... }
@@ -4104,7 +4379,7 @@ type CreateUseCaseRequest = {
4104
4379
  }
4105
4380
  } | {
4106
4381
  name: string
4107
- slug?: string
4382
+ slug: string
4108
4383
  enabled: boolean
4109
4384
  type: "managed_call"
4110
4385
  configuration?: {
@@ -4117,7 +4392,6 @@ type CreateUseCaseRequest = {
4117
4392
  request_mapping?: string
4118
4393
  response_mapping?: string
4119
4394
  inbound_use_case_slug?: string
4120
- }
4121
4395
  // ...
4122
4396
  }
4123
4397
  ```
@@ -4127,7 +4401,7 @@ type CreateUseCaseRequest = {
4127
4401
  ```ts
4128
4402
  type CreateUseCaseRequestBase = {
4129
4403
  name: string
4130
- slug?: string
4404
+ slug: string
4131
4405
  enabled: boolean
4132
4406
  }
4133
4407
  ```
@@ -4137,7 +4411,7 @@ type CreateUseCaseRequestBase = {
4137
4411
  ```ts
4138
4412
  type CreateInboundUseCaseRequest = {
4139
4413
  name: string
4140
- slug?: string
4414
+ slug: string
4141
4415
  enabled: boolean
4142
4416
  type: "inbound"
4143
4417
  configuration?: {
@@ -4168,7 +4442,7 @@ type CreateInboundUseCaseRequest = {
4168
4442
  ```ts
4169
4443
  type CreateOutboundUseCaseRequest = {
4170
4444
  name: string
4171
- slug?: string
4445
+ slug: string
4172
4446
  enabled: boolean
4173
4447
  type: "outbound"
4174
4448
  configuration?: {
@@ -4191,7 +4465,7 @@ type CreateOutboundUseCaseRequest = {
4191
4465
  ```ts
4192
4466
  type CreateFileProxyUseCaseRequest = {
4193
4467
  name: string
4194
- slug?: string
4468
+ slug: string
4195
4469
  enabled: boolean
4196
4470
  type: "file_proxy"
4197
4471
  configuration?: {
@@ -4217,6 +4491,7 @@ type CreateFileProxyUseCaseRequest = {
4217
4491
  required: { ... }
4218
4492
  description?: { ... }
4219
4493
  }>
4494
+ allowed_origins?: string // uri[]
4220
4495
  steps: Array<{
4221
4496
  url: { ... }
4222
4497
  method: { ... }
@@ -4239,7 +4514,7 @@ type CreateFileProxyUseCaseRequest = {
4239
4514
  ```ts
4240
4515
  type CreateManagedCallUseCaseRequest = {
4241
4516
  name: string
4242
- slug?: string
4517
+ slug: string
4243
4518
  enabled: boolean
4244
4519
  type: "managed_call"
4245
4520
  configuration?: {
@@ -4261,7 +4536,7 @@ type CreateManagedCallUseCaseRequest = {
4261
4536
  ```ts
4262
4537
  type CreateSecureProxyUseCaseRequest = {
4263
4538
  name: string
4264
- slug?: string
4539
+ slug: string
4265
4540
  enabled: boolean
4266
4541
  type: "secure_proxy"
4267
4542
  configuration?: {
@@ -4348,6 +4623,7 @@ type UpdateUseCaseRequest = {
4348
4623
  required: { ... }
4349
4624
  description?: { ... }
4350
4625
  }>
4626
+ allowed_origins?: string // uri[]
4351
4627
  steps: Array<{
4352
4628
  url: { ... }
4353
4629
  method: { ... }
@@ -4374,7 +4650,6 @@ type UpdateUseCaseRequest = {
4374
4650
  path: { ... }
4375
4651
  headers?: { ... }
4376
4652
  query_params?: { ... }
4377
- }
4378
4653
  // ...
4379
4654
  }
4380
4655
  ```
@@ -4478,6 +4753,7 @@ type UpdateFileProxyUseCaseRequest = {
4478
4753
  required: { ... }
4479
4754
  description?: { ... }
4480
4755
  }>
4756
+ allowed_origins?: string // uri[]
4481
4757
  steps: Array<{
4482
4758
  url: { ... }
4483
4759
  method: { ... }
@@ -4550,6 +4826,7 @@ type UseCaseHistoryEntry = {
4550
4826
  slug?: string
4551
4827
  enabled: boolean
4552
4828
  change_description?: string
4829
+ changed_by?: string
4553
4830
  created_at: string // date-time
4554
4831
  updated_at: string // date-time
4555
4832
  history_created_at: string // date-time
@@ -4582,6 +4859,7 @@ type UseCaseHistoryEntry = {
4582
4859
  slug?: string
4583
4860
  enabled: boolean
4584
4861
  change_description?: string
4862
+ changed_by?: string
4585
4863
  created_at: string // date-time
4586
4864
  updated_at: string // date-time
4587
4865
  history_created_at: string // date-time
@@ -4606,6 +4884,7 @@ type UseCaseHistoryEntry = {
4606
4884
  slug?: string
4607
4885
  enabled: boolean
4608
4886
  change_description?: string
4887
+ changed_by?: string
4609
4888
  created_at: string // date-time
4610
4889
  updated_at: string // date-time
4611
4890
  history_created_at: string // date-time
@@ -4633,15 +4912,12 @@ type UseCaseHistoryEntry = {
4633
4912
  required: { ... }
4634
4913
  description?: { ... }
4635
4914
  }>
4915
+ allowed_origins?: string // uri[]
4636
4916
  steps: Array<{
4637
4917
  url: { ... }
4638
4918
  method: { ... }
4639
4919
  headers?: { ... }
4640
4920
  body?: { ... }
4641
- response_type: { ... }
4642
- }>
4643
- response: {
4644
- body: { ... }
4645
4921
  // ...
4646
4922
  }
4647
4923
  ```
@@ -4657,6 +4933,7 @@ type UseCaseHistoryEntryBase = {
4657
4933
  slug?: string
4658
4934
  enabled: boolean
4659
4935
  change_description?: string
4936
+ changed_by?: string
4660
4937
  created_at: string // date-time
4661
4938
  updated_at: string // date-time
4662
4939
  history_created_at: string // date-time
@@ -4674,6 +4951,7 @@ type InboundUseCaseHistoryEntry = {
4674
4951
  slug?: string
4675
4952
  enabled: boolean
4676
4953
  change_description?: string
4954
+ changed_by?: string
4677
4955
  created_at: string // date-time
4678
4956
  updated_at: string // date-time
4679
4957
  history_created_at: string // date-time
@@ -4712,6 +4990,7 @@ type OutboundUseCaseHistoryEntry = {
4712
4990
  slug?: string
4713
4991
  enabled: boolean
4714
4992
  change_description?: string
4993
+ changed_by?: string
4715
4994
  created_at: string // date-time
4716
4995
  updated_at: string // date-time
4717
4996
  history_created_at: string // date-time
@@ -4742,6 +5021,7 @@ type FileProxyUseCaseHistoryEntry = {
4742
5021
  slug?: string
4743
5022
  enabled: boolean
4744
5023
  change_description?: string
5024
+ changed_by?: string
4745
5025
  created_at: string // date-time
4746
5026
  updated_at: string // date-time
4747
5027
  history_created_at: string // date-time
@@ -4769,6 +5049,7 @@ type FileProxyUseCaseHistoryEntry = {
4769
5049
  required: { ... }
4770
5050
  description?: { ... }
4771
5051
  }>
5052
+ allowed_origins?: string // uri[]
4772
5053
  steps: Array<{
4773
5054
  url: { ... }
4774
5055
  method: { ... }
@@ -4797,6 +5078,7 @@ type ManagedCallUseCaseHistoryEntry = {
4797
5078
  slug?: string
4798
5079
  enabled: boolean
4799
5080
  change_description?: string
5081
+ changed_by?: string
4800
5082
  created_at: string // date-time
4801
5083
  updated_at: string // date-time
4802
5084
  history_created_at: string // date-time
@@ -4831,6 +5113,7 @@ type SecureProxyUseCaseHistoryEntry = {
4831
5113
  slug?: string
4832
5114
  enabled: boolean
4833
5115
  change_description?: string
5116
+ changed_by?: string
4834
5117
  created_at: string // date-time
4835
5118
  updated_at: string // date-time
4836
5119
  history_created_at: string // date-time
@@ -4856,6 +5139,37 @@ type SecureProxyUseCaseConfiguration = {
4856
5139
  }
4857
5140
  ```
4858
5141
 
5142
+ ### `SecureProxyWhitelist`
5143
+
5144
+ Current whitelist state for a secure_proxy use case. vpc_mode is read-only
5145
+ context so the UI can show the user what mode the pool is in.
5146
+
5147
+
5148
+ ```ts
5149
+ type SecureProxyWhitelist = {
5150
+ vpc_mode: "static_ip" | "secure_link"
5151
+ allowed_domains: string[]
5152
+ allowed_ips: string[]
5153
+ }
5154
+ ```
5155
+
5156
+ ### `SecureProxyWhitelistUpdate`
5157
+
5158
+ Partial update for a secure_proxy whitelist. At least one of
5159
+ `allowed_domains` or `allowed_ips` must be provided.
5160
+
5161
+ Per-field semantics:
5162
+ - **omitted** — the field is not modified; the stored value is preserved.
5163
+ - **non-empty array** — the stored value is replaced with the supplied list.
5164
+ - **emp
5165
+
5166
+ ```ts
5167
+ type SecureProxyWhitelistUpdate = {
5168
+ allowed_domains?: string[]
5169
+ allowed_ips?: string[]
5170
+ }
5171
+ ```
5172
+
4859
5173
  ### `SecureProxySummary`
4860
5174
 
4861
5175
  ```ts
@@ -5243,6 +5557,7 @@ type FileProxyUseCaseConfiguration = {
5243
5557
  required: boolean
5244
5558
  description?: string
5245
5559
  }>
5560
+ allowed_origins?: string // uri[]
5246
5561
  steps: Array<{
5247
5562
  url: string
5248
5563
  method: "GET" | "POST"