@epilot/sdk 2.18.7 → 2.18.8

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 (121) hide show
  1. package/definitions/integration-toolkit.json +298 -15
  2. package/dist/apis/access-token.cjs +6 -6
  3. package/dist/apis/access-token.js +1 -1
  4. package/dist/apis/address-suggestions.cjs +6 -6
  5. package/dist/apis/address-suggestions.js +1 -1
  6. package/dist/apis/address.cjs +6 -6
  7. package/dist/apis/address.js +1 -1
  8. package/dist/apis/ai-agents.cjs +6 -6
  9. package/dist/apis/ai-agents.js +1 -1
  10. package/dist/apis/app.cjs +6 -6
  11. package/dist/apis/app.js +1 -1
  12. package/dist/apis/audit-logs.cjs +6 -6
  13. package/dist/apis/audit-logs.js +1 -1
  14. package/dist/apis/automation.cjs +6 -6
  15. package/dist/apis/automation.js +1 -1
  16. package/dist/apis/billing.cjs +6 -6
  17. package/dist/apis/billing.js +1 -1
  18. package/dist/apis/blueprint-manifest.cjs +6 -6
  19. package/dist/apis/blueprint-manifest.js +1 -1
  20. package/dist/apis/calendar.cjs +6 -6
  21. package/dist/apis/calendar.js +1 -1
  22. package/dist/apis/configuration-hub.cjs +6 -6
  23. package/dist/apis/configuration-hub.js +1 -1
  24. package/dist/apis/consent.cjs +6 -6
  25. package/dist/apis/consent.js +1 -1
  26. package/dist/apis/customer-portal.cjs +6 -6
  27. package/dist/apis/customer-portal.js +1 -1
  28. package/dist/apis/dashboard.cjs +6 -6
  29. package/dist/apis/dashboard.js +1 -1
  30. package/dist/apis/data-governance.cjs +6 -6
  31. package/dist/apis/data-governance.js +1 -1
  32. package/dist/apis/deduplication.cjs +6 -6
  33. package/dist/apis/deduplication.js +1 -1
  34. package/dist/apis/design.cjs +6 -6
  35. package/dist/apis/design.js +1 -1
  36. package/dist/apis/document.cjs +6 -6
  37. package/dist/apis/document.js +1 -1
  38. package/dist/apis/email-settings.cjs +6 -6
  39. package/dist/apis/email-settings.js +1 -1
  40. package/dist/apis/email-template.cjs +6 -6
  41. package/dist/apis/email-template.js +1 -1
  42. package/dist/apis/entity-mapping.cjs +6 -6
  43. package/dist/apis/entity-mapping.js +1 -1
  44. package/dist/apis/entity.cjs +6 -6
  45. package/dist/apis/entity.js +1 -1
  46. package/dist/apis/environments.cjs +6 -6
  47. package/dist/apis/environments.js +1 -1
  48. package/dist/apis/event-catalog.cjs +6 -6
  49. package/dist/apis/event-catalog.js +1 -1
  50. package/dist/apis/file.cjs +6 -6
  51. package/dist/apis/file.js +1 -1
  52. package/dist/apis/iban.cjs +6 -6
  53. package/dist/apis/iban.js +1 -1
  54. package/dist/apis/integration-toolkit.cjs +6 -6
  55. package/dist/apis/integration-toolkit.d.cts +2 -2
  56. package/dist/apis/integration-toolkit.d.ts +2 -2
  57. package/dist/apis/integration-toolkit.js +1 -1
  58. package/dist/apis/journey.cjs +6 -6
  59. package/dist/apis/journey.js +1 -1
  60. package/dist/apis/kanban.cjs +6 -6
  61. package/dist/apis/kanban.js +1 -1
  62. package/dist/apis/message.cjs +6 -6
  63. package/dist/apis/message.js +1 -1
  64. package/dist/apis/metering.cjs +6 -6
  65. package/dist/apis/metering.js +1 -1
  66. package/dist/apis/notes.cjs +6 -6
  67. package/dist/apis/notes.js +1 -1
  68. package/dist/apis/notification.cjs +6 -6
  69. package/dist/apis/notification.js +1 -1
  70. package/dist/apis/organization.cjs +6 -6
  71. package/dist/apis/organization.js +1 -1
  72. package/dist/apis/partner-directory.cjs +6 -6
  73. package/dist/apis/partner-directory.js +1 -1
  74. package/dist/apis/permissions.cjs +6 -6
  75. package/dist/apis/permissions.js +1 -1
  76. package/dist/apis/pricing-tier.cjs +6 -6
  77. package/dist/apis/pricing-tier.js +1 -1
  78. package/dist/apis/pricing.cjs +6 -6
  79. package/dist/apis/pricing.js +1 -1
  80. package/dist/apis/purpose.cjs +6 -6
  81. package/dist/apis/purpose.js +1 -1
  82. package/dist/apis/query.cjs +6 -6
  83. package/dist/apis/query.js +1 -1
  84. package/dist/apis/sandbox.cjs +6 -6
  85. package/dist/apis/sandbox.js +1 -1
  86. package/dist/apis/sharing.cjs +6 -6
  87. package/dist/apis/sharing.js +1 -1
  88. package/dist/apis/snapshot.cjs +6 -6
  89. package/dist/apis/snapshot.js +1 -1
  90. package/dist/apis/submission.cjs +6 -6
  91. package/dist/apis/submission.js +1 -1
  92. package/dist/apis/target.cjs +6 -6
  93. package/dist/apis/target.js +1 -1
  94. package/dist/apis/targeting.cjs +6 -6
  95. package/dist/apis/targeting.js +1 -1
  96. package/dist/apis/template-variables.cjs +6 -6
  97. package/dist/apis/template-variables.js +1 -1
  98. package/dist/apis/user.cjs +6 -6
  99. package/dist/apis/user.js +1 -1
  100. package/dist/apis/validation-rules.cjs +6 -6
  101. package/dist/apis/validation-rules.js +1 -1
  102. package/dist/apis/webhooks.cjs +6 -6
  103. package/dist/apis/webhooks.js +1 -1
  104. package/dist/apis/workflow-definition.cjs +6 -6
  105. package/dist/apis/workflow-definition.js +1 -1
  106. package/dist/apis/workflow.cjs +6 -6
  107. package/dist/apis/workflow.js +1 -1
  108. package/dist/{chunk-2L5YHQFJ.cjs → chunk-JMRPVDMK.cjs} +1 -1
  109. package/dist/{chunk-FMM7LLAO.js → chunk-M44TEEFZ.js} +1 -1
  110. package/dist/index.cjs +8 -8
  111. package/dist/index.d.cts +1 -1
  112. package/dist/index.d.ts +1 -1
  113. package/dist/index.js +1 -1
  114. package/dist/integration-toolkit-OSK5M75F.js +7 -0
  115. package/dist/integration-toolkit-W5IENOJW.cjs +7 -0
  116. package/dist/{integration-toolkit.d-CVI89-A-.d.cts → integration-toolkit.d-D5LjhCQB.d.cts} +564 -38
  117. package/dist/{integration-toolkit.d-CVI89-A-.d.ts → integration-toolkit.d-D5LjhCQB.d.ts} +564 -38
  118. package/docs/integration-toolkit.md +442 -141
  119. package/package.json +1 -1
  120. package/dist/integration-toolkit-MT7RPOOG.js +0 -7
  121. package/dist/integration-toolkit-S5BHYFIW.cjs +0 -7
@@ -108,6 +108,7 @@ const { data } = await integrationToolkitClient.acknowledgeTracking(...)
108
108
  - [`ErpImportValidation`](#erpimportvalidation)
109
109
  - [`ErpImportProgress`](#erpimportprogress)
110
110
  - [`ErpImportError`](#erpimporterror)
111
+ - [`ErpImportFilePreview`](#erpimportfilepreview)
111
112
  - [`CreateErpImportResponse`](#createerpimportresponse)
112
113
  - [`ErpImportJob`](#erpimportjob)
113
114
  - [`ErpImportList`](#erpimportlist)
@@ -220,6 +221,8 @@ const { data } = await integrationToolkitClient.acknowledgeTracking(...)
220
221
  - [`FileProxyAuth`](#fileproxyauth)
221
222
  - [`FileProxyParam`](#fileproxyparam)
222
223
  - [`FileProxyStep`](#fileproxystep)
224
+ - [`FileProxyFanOutConfig`](#fileproxyfanoutconfig)
225
+ - [`FileProxyUploadConfig`](#fileproxyuploadconfig)
223
226
  - [`FileProxyResponseConfig`](#fileproxyresponseconfig)
224
227
  - [`MappingSimulationRequest`](#mappingsimulationrequest)
225
228
  - [`MappingSimulationV2Request`](#mappingsimulationv2request)
@@ -237,8 +240,11 @@ const { data } = await integrationToolkitClient.acknowledgeTracking(...)
237
240
  - [`DeliveryConfig`](#deliveryconfig)
238
241
  - [`WebhookDeliveryConfig`](#webhookdeliveryconfig)
239
242
  - [`PollDeliveryConfig`](#polldeliveryconfig)
243
+ - [`FileProxyDeliveryConfig`](#fileproxydeliveryconfig)
244
+ - [`FileProxyLookup`](#fileproxylookup)
240
245
  - [`OutboundStatusResponse`](#outboundstatusresponse)
241
246
  - [`OutboundUseCaseStatus`](#outboundusecasestatus)
247
+ - [`OutboundFileProxyTargetStatus`](#outboundfileproxytargetstatus)
242
248
  - [`OutboundPollStatus`](#outboundpollstatus)
243
249
  - [`WebhookStatus`](#webhookstatus)
244
250
  - [`OutboundConflict`](#outboundconflict)
@@ -2373,7 +2379,18 @@ const { data } = await client.getOutboundStatus({
2373
2379
  "last_ack_at": "1970-01-01T00:00:00.000Z",
2374
2380
  "blocked": true,
2375
2381
  "dlq_count": 0
2376
- }
2382
+ },
2383
+ "file_proxy": [
2384
+ {
2385
+ "mapping_id": "string",
2386
+ "use_case_slug": "string",
2387
+ "resolved": true,
2388
+ "target_use_case_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
2389
+ "target_enabled": true,
2390
+ "target_updated_at": "1970-01-01T00:00:00.000Z",
2391
+ "unresolved_reason": "not_found"
2392
+ }
2393
+ ]
2377
2394
  }
2378
2395
  ]
2379
2396
  }
@@ -3208,7 +3225,8 @@ const { data } = await client.createErpImport(
3208
3225
  s3_reference: {
3209
3226
  bucket: 'string',
3210
3227
  key: 'string'
3211
- }
3228
+ },
3229
+ include_preview: false
3212
3230
  },
3213
3231
  )
3214
3232
  ```
@@ -3388,6 +3406,7 @@ const { data } = await client.suggestErpImportUseCases({
3388
3406
  "integration_name": "string",
3389
3407
  "use_case_slug": "string",
3390
3408
  "use_case_name": "string",
3409
+ "entity_types": 0,
3391
3410
  "matched_columns": 0,
3392
3411
  "file_columns": 0
3393
3412
  }
@@ -3501,6 +3520,7 @@ type CreateErpImportRequest = {
3501
3520
  bucket: string
3502
3521
  key: string
3503
3522
  }
3523
+ include_preview?: boolean
3504
3524
  }
3505
3525
  ```
3506
3526
 
@@ -3521,6 +3541,7 @@ type ErpImportUseCaseSuggestion = {
3521
3541
  integration_name: string
3522
3542
  use_case_slug: string
3523
3543
  use_case_name: string
3544
+ entity_types: number
3524
3545
  matched_columns: number
3525
3546
  file_columns: number
3526
3547
  }
@@ -3535,6 +3556,7 @@ type SuggestErpImportUseCasesResponse = {
3535
3556
  integration_name: string
3536
3557
  use_case_slug: string
3537
3558
  use_case_name: string
3559
+ entity_types: number
3538
3560
  matched_columns: number
3539
3561
  file_columns: number
3540
3562
  }>
@@ -3606,11 +3628,28 @@ type ErpImportError = {
3606
3628
  }
3607
3629
  ```
3608
3630
 
3631
+ ### `ErpImportFilePreview`
3632
+
3633
+ Sample of the file's first rows, using the same parser as `:validate`. `status` is the outcome of this read, not a verdict on the file.
3634
+
3635
+ ```ts
3636
+ type ErpImportFilePreview = {
3637
+ status: "AVAILABLE" | "FORMAT_UNSUPPORTED" | "UNREADABLE"
3638
+ columns?: string[]
3639
+ rows?: string[][]
3640
+ }
3641
+ ```
3642
+
3609
3643
  ### `CreateErpImportResponse`
3610
3644
 
3611
3645
  ```ts
3612
3646
  type CreateErpImportResponse = {
3613
3647
  import_id: string
3648
+ preview?: {
3649
+ status: "AVAILABLE" | "FORMAT_UNSUPPORTED" | "UNREADABLE"
3650
+ columns?: string[]
3651
+ rows?: string[][]
3652
+ }
3614
3653
  }
3615
3654
  ```
3616
3655
 
@@ -4494,7 +4533,9 @@ type IntegrationWithUseCases = {
4494
4533
  updated_at: string // date-time
4495
4534
  configuration?: {
4496
4535
  event_catalog_event: { ... }
4536
+ event_filter?: { ... }
4497
4537
  mappings: { ... }
4538
+ ack_tracking?: { ... }
4498
4539
  }
4499
4540
  } | {
4500
4541
  id: string // uuid
@@ -4508,12 +4549,20 @@ type IntegrationWithUseCases = {
4508
4549
  created_at: string // date-time
4509
4550
  updated_at: string // date-time
4510
4551
  configuration?: {
4552
+ direction?: { ... }
4553
+ upload?: { ... }
4554
+ fan_out?: { ... }
4555
+ params_mapping?: { ... }
4556
+ lookups?: { ... }
4557
+ constants?: { ... }
4558
+ file_source?: { ... }
4559
+ required_params?: { ... }
4511
4560
  secure_proxy?: { ... }
4512
4561
  auth?: { ... }
4513
4562
  params?: { ... }
4514
4563
  allowed_origins?: { ... }
4515
4564
  steps: { ... }
4516
- response: { ... }
4565
+ response?: { ... }
4517
4566
  prevent_indirect_serving?: { ... }
4518
4567
  }
4519
4568
  } | {
@@ -4555,6 +4604,7 @@ type IntegrationWithUseCases = {
4555
4604
  allowed_ips?: { ... }
4556
4605
  }
4557
4606
  }>
4607
+ // ...
4558
4608
  }
4559
4609
  ```
4560
4610
 
@@ -4640,7 +4690,9 @@ type UpsertIntegrationWithUseCasesRequest = {
4640
4690
  type: "outbound"
4641
4691
  configuration?: {
4642
4692
  event_catalog_event: { ... }
4693
+ event_filter?: { ... }
4643
4694
  mappings: { ... }
4695
+ ack_tracking?: { ... }
4644
4696
  }
4645
4697
  } | {
4646
4698
  id?: string // uuid
@@ -4650,17 +4702,15 @@ type UpsertIntegrationWithUseCasesRequest = {
4650
4702
  change_description?: string
4651
4703
  type: "file_proxy"
4652
4704
  configuration?: {
4705
+ direction?: { ... }
4706
+ upload?: { ... }
4707
+ fan_out?: { ... }
4708
+ params_mapping?: { ... }
4709
+ lookups?: { ... }
4710
+ constants?: { ... }
4711
+ file_source?: { ... }
4712
+ required_params?: { ... }
4653
4713
  secure_proxy?: { ... }
4654
- auth?: { ... }
4655
- params?: { ... }
4656
- allowed_origins?: { ... }
4657
- steps: { ... }
4658
- response: { ... }
4659
- prevent_indirect_serving?: { ... }
4660
- }
4661
- } | {
4662
- id?: string // uuid
4663
- name: string
4664
4714
  // ...
4665
4715
  }
4666
4716
  ```
@@ -4734,6 +4784,7 @@ Configuration for outbound use cases. Defines the event that triggers the flow a
4734
4784
  ```ts
4735
4785
  type OutboundIntegrationEventConfiguration = {
4736
4786
  event_catalog_event: string
4787
+ event_filter?: string
4737
4788
  mappings: Array<{
4738
4789
  id?: string // uuid
4739
4790
  name: string
@@ -4749,10 +4800,14 @@ type OutboundIntegrationEventConfiguration = {
4749
4800
  retention_days?: { ... }
4750
4801
  poison_policy?: { ... }
4751
4802
  max_delivery_attempts?: { ... }
4803
+ } | {
4804
+ type: { ... }
4805
+ use_case_slug: { ... }
4752
4806
  }
4753
4807
  created_at?: string // date-time
4754
4808
  updated_at?: string // date-time
4755
4809
  }>
4810
+ ack_tracking?: "on" | "off"
4756
4811
  }
4757
4812
  ```
4758
4813
 
@@ -5212,6 +5267,7 @@ type EmbeddedUseCaseRequest = {
5212
5267
  type: "outbound"
5213
5268
  configuration?: {
5214
5269
  event_catalog_event: string
5270
+ event_filter?: string
5215
5271
  mappings: Array<{
5216
5272
  id?: { ... }
5217
5273
  name: { ... }
@@ -5221,6 +5277,7 @@ type EmbeddedUseCaseRequest = {
5221
5277
  created_at?: { ... }
5222
5278
  updated_at?: { ... }
5223
5279
  }>
5280
+ ack_tracking?: "on" | "off"
5224
5281
  }
5225
5282
  } | {
5226
5283
  id?: string // uuid
@@ -5230,6 +5287,27 @@ type EmbeddedUseCaseRequest = {
5230
5287
  change_description?: string
5231
5288
  type: "file_proxy"
5232
5289
  configuration?: {
5290
+ direction?: "download" | "upload"
5291
+ upload?: {
5292
+ max_file_bytes?: { ... }
5293
+ max_delivery_attempts?: { ... }
5294
+ success_when?: { ... }
5295
+ external_id?: { ... }
5296
+ }
5297
+ fan_out?: {
5298
+ enabled: { ... }
5299
+ split_expression?: { ... }
5300
+ }
5301
+ params_mapping?: string
5302
+ lookups?: Record<string, {
5303
+ source: { ... }
5304
+ entries: { ... }
5305
+ default?: { ... }
5306
+ on_miss?: { ... }
5307
+ }>
5308
+ constants?: Record<string, unknown>
5309
+ file_source?: string
5310
+ required_params?: string[]
5233
5311
  secure_proxy?: {
5234
5312
  use_case_slug: { ... }
5235
5313
  }
@@ -5253,29 +5331,6 @@ type EmbeddedUseCaseRequest = {
5253
5331
  description?: { ... }
5254
5332
  }>
5255
5333
  allowed_origins?: string // uri[]
5256
- steps: Array<{
5257
- url: { ... }
5258
- method: { ... }
5259
- headers?: { ... }
5260
- body?: { ... }
5261
- response_type: { ... }
5262
- }>
5263
- response: {
5264
- body: { ... }
5265
- encoding: { ... }
5266
- filename?: { ... }
5267
- content_type?: { ... }
5268
- }
5269
- prevent_indirect_serving?: boolean
5270
- }
5271
- } | {
5272
- id?: string // uuid
5273
- name: string
5274
- slug?: string
5275
- enabled: boolean
5276
- change_description?: string
5277
- type: "managed_call"
5278
- configuration?: {
5279
5334
  // ...
5280
5335
  }
5281
5336
  ```
@@ -5337,6 +5392,7 @@ type EmbeddedOutboundUseCaseRequest = {
5337
5392
  type: "outbound"
5338
5393
  configuration?: {
5339
5394
  event_catalog_event: string
5395
+ event_filter?: string
5340
5396
  mappings: Array<{
5341
5397
  id?: { ... }
5342
5398
  name: { ... }
@@ -5346,6 +5402,7 @@ type EmbeddedOutboundUseCaseRequest = {
5346
5402
  created_at?: { ... }
5347
5403
  updated_at?: { ... }
5348
5404
  }>
5405
+ ack_tracking?: "on" | "off"
5349
5406
  }
5350
5407
  }
5351
5408
  ```
@@ -5361,6 +5418,27 @@ type EmbeddedFileProxyUseCaseRequest = {
5361
5418
  change_description?: string
5362
5419
  type: "file_proxy"
5363
5420
  configuration?: {
5421
+ direction?: "download" | "upload"
5422
+ upload?: {
5423
+ max_file_bytes?: { ... }
5424
+ max_delivery_attempts?: { ... }
5425
+ success_when?: { ... }
5426
+ external_id?: { ... }
5427
+ }
5428
+ fan_out?: {
5429
+ enabled: { ... }
5430
+ split_expression?: { ... }
5431
+ }
5432
+ params_mapping?: string
5433
+ lookups?: Record<string, {
5434
+ source: { ... }
5435
+ entries: { ... }
5436
+ default?: { ... }
5437
+ on_miss?: { ... }
5438
+ }>
5439
+ constants?: Record<string, unknown>
5440
+ file_source?: string
5441
+ required_params?: string[]
5364
5442
  secure_proxy?: {
5365
5443
  use_case_slug: { ... }
5366
5444
  }
@@ -5391,7 +5469,7 @@ type EmbeddedFileProxyUseCaseRequest = {
5391
5469
  body?: { ... }
5392
5470
  response_type: { ... }
5393
5471
  }>
5394
- response: {
5472
+ response?: {
5395
5473
  body: { ... }
5396
5474
  encoding: { ... }
5397
5475
  filename?: { ... }
@@ -5514,6 +5592,7 @@ type OutboundUseCase = {
5514
5592
  updated_at: string // date-time
5515
5593
  configuration?: {
5516
5594
  event_catalog_event: string
5595
+ event_filter?: string
5517
5596
  mappings: Array<{
5518
5597
  id?: { ... }
5519
5598
  name: { ... }
@@ -5523,6 +5602,7 @@ type OutboundUseCase = {
5523
5602
  created_at?: { ... }
5524
5603
  updated_at?: { ... }
5525
5604
  }>
5605
+ ack_tracking?: "on" | "off"
5526
5606
  }
5527
5607
  }
5528
5608
  ```
@@ -5542,6 +5622,27 @@ type FileProxyUseCase = {
5542
5622
  created_at: string // date-time
5543
5623
  updated_at: string // date-time
5544
5624
  configuration?: {
5625
+ direction?: "download" | "upload"
5626
+ upload?: {
5627
+ max_file_bytes?: { ... }
5628
+ max_delivery_attempts?: { ... }
5629
+ success_when?: { ... }
5630
+ external_id?: { ... }
5631
+ }
5632
+ fan_out?: {
5633
+ enabled: { ... }
5634
+ split_expression?: { ... }
5635
+ }
5636
+ params_mapping?: string
5637
+ lookups?: Record<string, {
5638
+ source: { ... }
5639
+ entries: { ... }
5640
+ default?: { ... }
5641
+ on_miss?: { ... }
5642
+ }>
5643
+ constants?: Record<string, unknown>
5644
+ file_source?: string
5645
+ required_params?: string[]
5545
5646
  secure_proxy?: {
5546
5647
  use_case_slug: { ... }
5547
5648
  }
@@ -5572,7 +5673,7 @@ type FileProxyUseCase = {
5572
5673
  body?: { ... }
5573
5674
  response_type: { ... }
5574
5675
  }>
5575
- response: {
5676
+ response?: {
5576
5677
  body: { ... }
5577
5678
  encoding: { ... }
5578
5679
  filename?: { ... }
@@ -5685,6 +5786,7 @@ type UseCase = {
5685
5786
  updated_at: string // date-time
5686
5787
  configuration?: {
5687
5788
  event_catalog_event: string
5789
+ event_filter?: string
5688
5790
  mappings: Array<{
5689
5791
  id?: { ... }
5690
5792
  name: { ... }
@@ -5694,6 +5796,7 @@ type UseCase = {
5694
5796
  created_at?: { ... }
5695
5797
  updated_at?: { ... }
5696
5798
  }>
5799
+ ack_tracking?: "on" | "off"
5697
5800
  }
5698
5801
  } | {
5699
5802
  id: string // uuid
@@ -5707,6 +5810,27 @@ type UseCase = {
5707
5810
  created_at: string // date-time
5708
5811
  updated_at: string // date-time
5709
5812
  configuration?: {
5813
+ direction?: "download" | "upload"
5814
+ upload?: {
5815
+ max_file_bytes?: { ... }
5816
+ max_delivery_attempts?: { ... }
5817
+ success_when?: { ... }
5818
+ external_id?: { ... }
5819
+ }
5820
+ fan_out?: {
5821
+ enabled: { ... }
5822
+ split_expression?: { ... }
5823
+ }
5824
+ params_mapping?: string
5825
+ lookups?: Record<string, {
5826
+ source: { ... }
5827
+ entries: { ... }
5828
+ default?: { ... }
5829
+ on_miss?: { ... }
5830
+ }>
5831
+ constants?: Record<string, unknown>
5832
+ file_source?: string
5833
+ required_params?: string[]
5710
5834
  secure_proxy?: {
5711
5835
  use_case_slug: { ... }
5712
5836
  }
@@ -5718,29 +5842,6 @@ type UseCase = {
5718
5842
  scope?: { ... }
5719
5843
  audience?: { ... }
5720
5844
  resource?: { ... }
5721
- username?: { ... }
5722
- password?: { ... }
5723
- body_params?: { ... }
5724
- headers?: { ... }
5725
- query_params?: { ... }
5726
- }
5727
- params?: Array<{
5728
- name: { ... }
5729
- required: { ... }
5730
- description?: { ... }
5731
- }>
5732
- allowed_origins?: string // uri[]
5733
- steps: Array<{
5734
- url: { ... }
5735
- method: { ... }
5736
- headers?: { ... }
5737
- body?: { ... }
5738
- response_type: { ... }
5739
- }>
5740
- response: {
5741
- body: { ... }
5742
- encoding: { ... }
5743
- filename?: { ... }
5744
5845
  // ...
5745
5846
  }
5746
5847
  ```
@@ -5780,6 +5881,7 @@ type CreateUseCaseRequest = {
5780
5881
  type: "outbound"
5781
5882
  configuration?: {
5782
5883
  event_catalog_event: string
5884
+ event_filter?: string
5783
5885
  mappings: Array<{
5784
5886
  id?: { ... }
5785
5887
  name: { ... }
@@ -5789,6 +5891,7 @@ type CreateUseCaseRequest = {
5789
5891
  created_at?: { ... }
5790
5892
  updated_at?: { ... }
5791
5893
  }>
5894
+ ack_tracking?: "on" | "off"
5792
5895
  }
5793
5896
  } | {
5794
5897
  name: string
@@ -5796,6 +5899,27 @@ type CreateUseCaseRequest = {
5796
5899
  enabled: boolean
5797
5900
  type: "file_proxy"
5798
5901
  configuration?: {
5902
+ direction?: "download" | "upload"
5903
+ upload?: {
5904
+ max_file_bytes?: { ... }
5905
+ max_delivery_attempts?: { ... }
5906
+ success_when?: { ... }
5907
+ external_id?: { ... }
5908
+ }
5909
+ fan_out?: {
5910
+ enabled: { ... }
5911
+ split_expression?: { ... }
5912
+ }
5913
+ params_mapping?: string
5914
+ lookups?: Record<string, {
5915
+ source: { ... }
5916
+ entries: { ... }
5917
+ default?: { ... }
5918
+ on_miss?: { ... }
5919
+ }>
5920
+ constants?: Record<string, unknown>
5921
+ file_source?: string
5922
+ required_params?: string[]
5799
5923
  secure_proxy?: {
5800
5924
  use_case_slug: { ... }
5801
5925
  }
@@ -5825,29 +5949,6 @@ type CreateUseCaseRequest = {
5825
5949
  headers?: { ... }
5826
5950
  body?: { ... }
5827
5951
  response_type: { ... }
5828
- }>
5829
- response: {
5830
- body: { ... }
5831
- encoding: { ... }
5832
- filename?: { ... }
5833
- content_type?: { ... }
5834
- }
5835
- prevent_indirect_serving?: boolean
5836
- }
5837
- } | {
5838
- name: string
5839
- slug: string
5840
- enabled: boolean
5841
- type: "managed_call"
5842
- configuration?: {
5843
- operation: {
5844
- method: { ... }
5845
- path: { ... }
5846
- headers?: { ... }
5847
- query_params?: { ... }
5848
- }
5849
- request_mapping?: string
5850
- response_mapping?: string
5851
5952
  // ...
5852
5953
  }
5853
5954
  ```
@@ -5903,6 +6004,7 @@ type CreateOutboundUseCaseRequest = {
5903
6004
  type: "outbound"
5904
6005
  configuration?: {
5905
6006
  event_catalog_event: string
6007
+ event_filter?: string
5906
6008
  mappings: Array<{
5907
6009
  id?: { ... }
5908
6010
  name: { ... }
@@ -5912,6 +6014,7 @@ type CreateOutboundUseCaseRequest = {
5912
6014
  created_at?: { ... }
5913
6015
  updated_at?: { ... }
5914
6016
  }>
6017
+ ack_tracking?: "on" | "off"
5915
6018
  }
5916
6019
  }
5917
6020
  ```
@@ -5925,6 +6028,27 @@ type CreateFileProxyUseCaseRequest = {
5925
6028
  enabled: boolean
5926
6029
  type: "file_proxy"
5927
6030
  configuration?: {
6031
+ direction?: "download" | "upload"
6032
+ upload?: {
6033
+ max_file_bytes?: { ... }
6034
+ max_delivery_attempts?: { ... }
6035
+ success_when?: { ... }
6036
+ external_id?: { ... }
6037
+ }
6038
+ fan_out?: {
6039
+ enabled: { ... }
6040
+ split_expression?: { ... }
6041
+ }
6042
+ params_mapping?: string
6043
+ lookups?: Record<string, {
6044
+ source: { ... }
6045
+ entries: { ... }
6046
+ default?: { ... }
6047
+ on_miss?: { ... }
6048
+ }>
6049
+ constants?: Record<string, unknown>
6050
+ file_source?: string
6051
+ required_params?: string[]
5928
6052
  secure_proxy?: {
5929
6053
  use_case_slug: { ... }
5930
6054
  }
@@ -5955,7 +6079,7 @@ type CreateFileProxyUseCaseRequest = {
5955
6079
  body?: { ... }
5956
6080
  response_type: { ... }
5957
6081
  }>
5958
- response: {
6082
+ response?: {
5959
6083
  body: { ... }
5960
6084
  encoding: { ... }
5961
6085
  filename?: { ... }
@@ -6041,6 +6165,7 @@ type UpdateUseCaseRequest = {
6041
6165
  type?: "outbound"
6042
6166
  configuration?: {
6043
6167
  event_catalog_event: string
6168
+ event_filter?: string
6044
6169
  mappings: Array<{
6045
6170
  id?: { ... }
6046
6171
  name: { ... }
@@ -6050,6 +6175,7 @@ type UpdateUseCaseRequest = {
6050
6175
  created_at?: { ... }
6051
6176
  updated_at?: { ... }
6052
6177
  }>
6178
+ ack_tracking?: "on" | "off"
6053
6179
  }
6054
6180
  } | {
6055
6181
  name?: string
@@ -6058,6 +6184,27 @@ type UpdateUseCaseRequest = {
6058
6184
  change_description?: string
6059
6185
  type?: "file_proxy"
6060
6186
  configuration?: {
6187
+ direction?: "download" | "upload"
6188
+ upload?: {
6189
+ max_file_bytes?: { ... }
6190
+ max_delivery_attempts?: { ... }
6191
+ success_when?: { ... }
6192
+ external_id?: { ... }
6193
+ }
6194
+ fan_out?: {
6195
+ enabled: { ... }
6196
+ split_expression?: { ... }
6197
+ }
6198
+ params_mapping?: string
6199
+ lookups?: Record<string, {
6200
+ source: { ... }
6201
+ entries: { ... }
6202
+ default?: { ... }
6203
+ on_miss?: { ... }
6204
+ }>
6205
+ constants?: Record<string, unknown>
6206
+ file_source?: string
6207
+ required_params?: string[]
6061
6208
  secure_proxy?: {
6062
6209
  use_case_slug: { ... }
6063
6210
  }
@@ -6084,29 +6231,6 @@ type UpdateUseCaseRequest = {
6084
6231
  steps: Array<{
6085
6232
  url: { ... }
6086
6233
  method: { ... }
6087
- headers?: { ... }
6088
- body?: { ... }
6089
- response_type: { ... }
6090
- }>
6091
- response: {
6092
- body: { ... }
6093
- encoding: { ... }
6094
- filename?: { ... }
6095
- content_type?: { ... }
6096
- }
6097
- prevent_indirect_serving?: boolean
6098
- }
6099
- } | {
6100
- name?: string
6101
- slug?: string
6102
- enabled?: boolean
6103
- change_description?: string
6104
- type?: "managed_call"
6105
- configuration?: {
6106
- operation: {
6107
- method: { ... }
6108
- path: { ... }
6109
- headers?: { ... }
6110
6234
  // ...
6111
6235
  }
6112
6236
  ```
@@ -6165,6 +6289,7 @@ type UpdateOutboundUseCaseRequest = {
6165
6289
  type?: "outbound"
6166
6290
  configuration?: {
6167
6291
  event_catalog_event: string
6292
+ event_filter?: string
6168
6293
  mappings: Array<{
6169
6294
  id?: { ... }
6170
6295
  name: { ... }
@@ -6174,6 +6299,7 @@ type UpdateOutboundUseCaseRequest = {
6174
6299
  created_at?: { ... }
6175
6300
  updated_at?: { ... }
6176
6301
  }>
6302
+ ack_tracking?: "on" | "off"
6177
6303
  }
6178
6304
  }
6179
6305
  ```
@@ -6188,6 +6314,27 @@ type UpdateFileProxyUseCaseRequest = {
6188
6314
  change_description?: string
6189
6315
  type?: "file_proxy"
6190
6316
  configuration?: {
6317
+ direction?: "download" | "upload"
6318
+ upload?: {
6319
+ max_file_bytes?: { ... }
6320
+ max_delivery_attempts?: { ... }
6321
+ success_when?: { ... }
6322
+ external_id?: { ... }
6323
+ }
6324
+ fan_out?: {
6325
+ enabled: { ... }
6326
+ split_expression?: { ... }
6327
+ }
6328
+ params_mapping?: string
6329
+ lookups?: Record<string, {
6330
+ source: { ... }
6331
+ entries: { ... }
6332
+ default?: { ... }
6333
+ on_miss?: { ... }
6334
+ }>
6335
+ constants?: Record<string, unknown>
6336
+ file_source?: string
6337
+ required_params?: string[]
6191
6338
  secure_proxy?: {
6192
6339
  use_case_slug: { ... }
6193
6340
  }
@@ -6218,7 +6365,7 @@ type UpdateFileProxyUseCaseRequest = {
6218
6365
  body?: { ... }
6219
6366
  response_type: { ... }
6220
6367
  }>
6221
- response: {
6368
+ response?: {
6222
6369
  body: { ... }
6223
6370
  encoding: { ... }
6224
6371
  filename?: { ... }
@@ -6324,6 +6471,7 @@ type UseCaseHistoryEntry = {
6324
6471
  type: "outbound"
6325
6472
  configuration?: {
6326
6473
  event_catalog_event: string
6474
+ event_filter?: string
6327
6475
  mappings: Array<{
6328
6476
  id?: { ... }
6329
6477
  name: { ... }
@@ -6333,6 +6481,7 @@ type UseCaseHistoryEntry = {
6333
6481
  created_at?: { ... }
6334
6482
  updated_at?: { ... }
6335
6483
  }>
6484
+ ack_tracking?: "on" | "off"
6336
6485
  }
6337
6486
  } | {
6338
6487
  id: string // uuid
@@ -6348,34 +6497,32 @@ type UseCaseHistoryEntry = {
6348
6497
  history_created_at: string // date-time
6349
6498
  type: "file_proxy"
6350
6499
  configuration?: {
6500
+ direction?: "download" | "upload"
6501
+ upload?: {
6502
+ max_file_bytes?: { ... }
6503
+ max_delivery_attempts?: { ... }
6504
+ success_when?: { ... }
6505
+ external_id?: { ... }
6506
+ }
6507
+ fan_out?: {
6508
+ enabled: { ... }
6509
+ split_expression?: { ... }
6510
+ }
6511
+ params_mapping?: string
6512
+ lookups?: Record<string, {
6513
+ source: { ... }
6514
+ entries: { ... }
6515
+ default?: { ... }
6516
+ on_miss?: { ... }
6517
+ }>
6518
+ constants?: Record<string, unknown>
6519
+ file_source?: string
6520
+ required_params?: string[]
6351
6521
  secure_proxy?: {
6352
6522
  use_case_slug: { ... }
6353
6523
  }
6354
6524
  auth?: {
6355
6525
  type: { ... }
6356
- token_url: { ... }
6357
- client_id: { ... }
6358
- client_secret: { ... }
6359
- scope?: { ... }
6360
- audience?: { ... }
6361
- resource?: { ... }
6362
- username?: { ... }
6363
- password?: { ... }
6364
- body_params?: { ... }
6365
- headers?: { ... }
6366
- query_params?: { ... }
6367
- }
6368
- params?: Array<{
6369
- name: { ... }
6370
- required: { ... }
6371
- description?: { ... }
6372
- }>
6373
- allowed_origins?: string // uri[]
6374
- steps: Array<{
6375
- url: { ... }
6376
- method: { ... }
6377
- headers?: { ... }
6378
- body?: { ... }
6379
6526
  // ...
6380
6527
  }
6381
6528
  ```
@@ -6455,6 +6602,7 @@ type OutboundUseCaseHistoryEntry = {
6455
6602
  type: "outbound"
6456
6603
  configuration?: {
6457
6604
  event_catalog_event: string
6605
+ event_filter?: string
6458
6606
  mappings: Array<{
6459
6607
  id?: { ... }
6460
6608
  name: { ... }
@@ -6464,6 +6612,7 @@ type OutboundUseCaseHistoryEntry = {
6464
6612
  created_at?: { ... }
6465
6613
  updated_at?: { ... }
6466
6614
  }>
6615
+ ack_tracking?: "on" | "off"
6467
6616
  }
6468
6617
  }
6469
6618
  ```
@@ -6485,6 +6634,27 @@ type FileProxyUseCaseHistoryEntry = {
6485
6634
  history_created_at: string // date-time
6486
6635
  type: "file_proxy"
6487
6636
  configuration?: {
6637
+ direction?: "download" | "upload"
6638
+ upload?: {
6639
+ max_file_bytes?: { ... }
6640
+ max_delivery_attempts?: { ... }
6641
+ success_when?: { ... }
6642
+ external_id?: { ... }
6643
+ }
6644
+ fan_out?: {
6645
+ enabled: { ... }
6646
+ split_expression?: { ... }
6647
+ }
6648
+ params_mapping?: string
6649
+ lookups?: Record<string, {
6650
+ source: { ... }
6651
+ entries: { ... }
6652
+ default?: { ... }
6653
+ on_miss?: { ... }
6654
+ }>
6655
+ constants?: Record<string, unknown>
6656
+ file_source?: string
6657
+ required_params?: string[]
6488
6658
  secure_proxy?: {
6489
6659
  use_case_slug: { ... }
6490
6660
  }
@@ -6515,7 +6685,7 @@ type FileProxyUseCaseHistoryEntry = {
6515
6685
  body?: { ... }
6516
6686
  response_type: { ... }
6517
6687
  }>
6518
- response: {
6688
+ response?: {
6519
6689
  body: { ... }
6520
6690
  encoding: { ... }
6521
6691
  filename?: { ... }
@@ -6999,13 +7169,35 @@ type CommitTypesResponse = {
6999
7169
 
7000
7170
  ### `FileProxyUseCaseConfiguration`
7001
7171
 
7002
- Configuration for file_proxy use cases. Defines how to authenticate and fetch files from external document systems.
7172
+ Configuration for file_proxy use cases. Defines how to authenticate and move files
7173
+ between epilot and an external document system, in either direction (see `direction`).
7003
7174
 
7004
- The file proxy download URL always requires `orgId`, `integrationId`, and either `useCaseSlug` (recommended) or `useCaseId` (legacy UUID) as query parameters.
7005
- The `orgId` is included
7175
+ **Download** (`direction: download`, the default) fetches a file from the external system
7176
+ and serves it to a browser. The downloa
7006
7177
 
7007
7178
  ```ts
7008
7179
  type FileProxyUseCaseConfiguration = {
7180
+ direction?: "download" | "upload"
7181
+ upload?: {
7182
+ max_file_bytes?: number
7183
+ max_delivery_attempts?: number
7184
+ success_when?: string
7185
+ external_id?: string
7186
+ }
7187
+ fan_out?: {
7188
+ enabled: boolean
7189
+ split_expression?: string
7190
+ }
7191
+ params_mapping?: string
7192
+ lookups?: Record<string, {
7193
+ source: string
7194
+ entries: Record<string, string>
7195
+ default?: string
7196
+ on_miss?: "default" | "warn" | "fail"
7197
+ }>
7198
+ constants?: Record<string, unknown>
7199
+ file_source?: string
7200
+ required_params?: string[]
7009
7201
  secure_proxy?: {
7010
7202
  use_case_slug: string
7011
7203
  }
@@ -7031,12 +7223,12 @@ type FileProxyUseCaseConfiguration = {
7031
7223
  allowed_origins?: string // uri[]
7032
7224
  steps: Array<{
7033
7225
  url: string
7034
- method: "GET" | "POST"
7226
+ method: "GET" | "POST" | "PUT" | "PATCH"
7035
7227
  headers?: Record<string, string>
7036
7228
  body?: string
7037
7229
  response_type: "json" | "binary"
7038
7230
  }>
7039
- response: {
7231
+ response?: {
7040
7232
  body: string
7041
7233
  encoding: "base64" | "binary"
7042
7234
  filename?: string
@@ -7088,15 +7280,51 @@ type FileProxyParam = {
7088
7280
  ```ts
7089
7281
  type FileProxyStep = {
7090
7282
  url: string
7091
- method: "GET" | "POST"
7283
+ method: "GET" | "POST" | "PUT" | "PATCH"
7092
7284
  headers?: Record<string, string>
7093
7285
  body?: string
7094
7286
  response_type: "json" | "binary"
7095
7287
  }
7096
7288
  ```
7097
7289
 
7290
+ ### `FileProxyFanOutConfig`
7291
+
7292
+ Splits one event into several independent deliveries.
7293
+
7294
+ Mirrors the inbound mapping idiom, where an entity's JSONata expression returning an array
7295
+ produces one entity update per element. Made explicit with a toggle here because an upload
7296
+ is also legitimately used without splitting, and because auto-d
7297
+
7298
+ ```ts
7299
+ type FileProxyFanOutConfig = {
7300
+ enabled: boolean
7301
+ split_expression?: string
7302
+ }
7303
+ ```
7304
+
7305
+ ### `FileProxyUploadConfig`
7306
+
7307
+ Upload-side settings for a file_proxy use case with `direction: upload`.
7308
+ Everything about WHAT is sent lives on the outbound mapping
7309
+ (see `FileProxyDeliveryConfig`); this object only governs HOW the transfer is bounded
7310
+ and judged.
7311
+
7312
+
7313
+ ```ts
7314
+ type FileProxyUploadConfig = {
7315
+ max_file_bytes?: number
7316
+ max_delivery_attempts?: number
7317
+ success_when?: string
7318
+ external_id?: string
7319
+ }
7320
+ ```
7321
+
7098
7322
  ### `FileProxyResponseConfig`
7099
7323
 
7324
+ How to extract the file from the step results. REQUIRED when `direction` is `download`;
7325
+ rejected when `direction` is `upload` (an upload has no file to extract).
7326
+
7327
+
7100
7328
  ```ts
7101
7329
  type FileProxyResponseConfig = {
7102
7330
  body: string
@@ -7343,7 +7571,7 @@ type IntegrationConfigurationV2 = {
7343
7571
 
7344
7572
  ### `OutboundMapping`
7345
7573
 
7346
- A mapping that delivers an event to an external system — either pushed to a webhook (with a JSONata payload transformation) or made available on the pull-based poll queue (raw event payload, no transformation)
7574
+ A mapping that delivers an event to an external system by one of three mechanisms — pushed to a webhook (with a JSONata payload transformation), made available on the pull-based poll queue (raw event payload, no transformation), or handed to a file_proxy use case that uploads files to an external do
7347
7575
 
7348
7576
  ```ts
7349
7577
  type OutboundMapping = {
@@ -7361,6 +7589,9 @@ type OutboundMapping = {
7361
7589
  retention_days?: number
7362
7590
  poison_policy?: "dead_letter" | "block"
7363
7591
  max_delivery_attempts?: number
7592
+ } | {
7593
+ type: "file_proxy"
7594
+ use_case_slug: string
7364
7595
  }
7365
7596
  created_at?: string // date-time
7366
7597
  updated_at?: string // date-time
@@ -7369,7 +7600,7 @@ type OutboundMapping = {
7369
7600
 
7370
7601
  ### `DeliveryConfig`
7371
7602
 
7372
- Configuration for how the event should be delivered. webhook = push delivery via svc-webhooks (JSONata-transformed payload); poll = pull-based queue delivery where the consumer fetches items via the poll API (raw event payload)
7603
+ Configuration for how the event should be delivered. webhook = push delivery via svc-webhooks (JSONata-transformed payload); poll = pull-based queue delivery where the consumer fetches items via the poll API (raw event payload); file_proxy = one push per event attachment to an external document syst
7373
7604
 
7374
7605
  ```ts
7375
7606
  type DeliveryConfig = {
@@ -7382,6 +7613,9 @@ type DeliveryConfig = {
7382
7613
  retention_days?: number
7383
7614
  poison_policy?: "dead_letter" | "block"
7384
7615
  max_delivery_attempts?: number
7616
+ } | {
7617
+ type: "file_proxy"
7618
+ use_case_slug: string
7385
7619
  }
7386
7620
  ```
7387
7621
 
@@ -7411,6 +7645,35 @@ type PollDeliveryConfig = {
7411
7645
  }
7412
7646
  ```
7413
7647
 
7648
+ ### `FileProxyDeliveryConfig`
7649
+
7650
+ Push delivery to an external document system through a `file_proxy` use case.
7651
+
7652
+ A pure pointer, deliberately. The outbound use case decides WHEN to deliver — its event
7653
+ name plus `event_filter` — and the referenced `file_proxy` use case decides WHAT and HOW:
7654
+ which items to fan out over (`fan_out`), wh
7655
+
7656
+ ```ts
7657
+ type FileProxyDeliveryConfig = {
7658
+ type: "file_proxy"
7659
+ use_case_slug: string
7660
+ }
7661
+ ```
7662
+
7663
+ ### `FileProxyLookup`
7664
+
7665
+ A named translation from a value in the event to a value the external system expects.
7666
+
7667
+
7668
+ ```ts
7669
+ type FileProxyLookup = {
7670
+ source: string
7671
+ entries: Record<string, string>
7672
+ default?: string
7673
+ on_miss?: "default" | "warn" | "fail"
7674
+ }
7675
+ ```
7676
+
7414
7677
  ### `OutboundStatusResponse`
7415
7678
 
7416
7679
  ```ts
@@ -7440,6 +7703,15 @@ type OutboundStatusResponse = {
7440
7703
  blocked: { ... }
7441
7704
  dlq_count: { ... }
7442
7705
  }
7706
+ file_proxy?: Array<{
7707
+ mapping_id: { ... }
7708
+ use_case_slug: { ... }
7709
+ resolved: { ... }
7710
+ target_use_case_id?: { ... }
7711
+ target_enabled?: { ... }
7712
+ target_updated_at?: { ... }
7713
+ unresolved_reason?: { ... }
7714
+ }>
7443
7715
  }>
7444
7716
  }
7445
7717
  ```
@@ -7472,6 +7744,35 @@ type OutboundUseCaseStatus = {
7472
7744
  blocked: boolean
7473
7745
  dlq_count: number
7474
7746
  }
7747
+ file_proxy?: Array<{
7748
+ mapping_id: string
7749
+ use_case_slug: string
7750
+ resolved: boolean
7751
+ target_use_case_id?: string // uuid
7752
+ target_enabled?: boolean
7753
+ target_updated_at?: string // date-time
7754
+ unresolved_reason?: "not_found" | "wrong_type" | "wrong_direction" | "disabled"
7755
+ }>
7756
+ }
7757
+ ```
7758
+
7759
+ ### `OutboundFileProxyTargetStatus`
7760
+
7761
+ Resolution state of one file_proxy mapping's referenced upload use case.
7762
+
7763
+ Because the transport lives on a separate use case, edits to the endpoint or credentials
7764
+ do not appear in THIS use case's history. `target_updated_at` is the hook that lets an
7765
+ operator notice a target changed underneath a deli
7766
+
7767
+ ```ts
7768
+ type OutboundFileProxyTargetStatus = {
7769
+ mapping_id: string
7770
+ use_case_slug: string
7771
+ resolved: boolean
7772
+ target_use_case_id?: string // uuid
7773
+ target_enabled?: boolean
7774
+ target_updated_at?: string // date-time
7775
+ unresolved_reason?: "not_found" | "wrong_type" | "wrong_direction" | "disabled"
7475
7776
  }
7476
7777
  ```
7477
7778