@epilot/sdk 2.18.5 → 2.18.7

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 (141) hide show
  1. package/definitions/email-settings-runtime.json +1 -1
  2. package/definitions/email-settings.json +50 -10
  3. package/definitions/integration-toolkit-runtime.json +1 -1
  4. package/definitions/integration-toolkit.json +176 -8
  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 +8 -8
  42. package/dist/apis/email-settings.d.cts +2 -2
  43. package/dist/apis/email-settings.d.ts +2 -2
  44. package/dist/apis/email-settings.js +2 -2
  45. package/dist/apis/email-template.cjs +6 -6
  46. package/dist/apis/email-template.js +1 -1
  47. package/dist/apis/entity-mapping.cjs +6 -6
  48. package/dist/apis/entity-mapping.js +1 -1
  49. package/dist/apis/entity.cjs +6 -6
  50. package/dist/apis/entity.js +1 -1
  51. package/dist/apis/environments.cjs +6 -6
  52. package/dist/apis/environments.js +1 -1
  53. package/dist/apis/event-catalog.cjs +6 -6
  54. package/dist/apis/event-catalog.js +1 -1
  55. package/dist/apis/file.cjs +6 -6
  56. package/dist/apis/file.js +1 -1
  57. package/dist/apis/iban.cjs +6 -6
  58. package/dist/apis/iban.js +1 -1
  59. package/dist/apis/integration-toolkit.cjs +8 -8
  60. package/dist/apis/integration-toolkit.d.cts +2 -2
  61. package/dist/apis/integration-toolkit.d.ts +2 -2
  62. package/dist/apis/integration-toolkit.js +2 -2
  63. package/dist/apis/journey.cjs +6 -6
  64. package/dist/apis/journey.js +1 -1
  65. package/dist/apis/kanban.cjs +6 -6
  66. package/dist/apis/kanban.js +1 -1
  67. package/dist/apis/message.cjs +6 -6
  68. package/dist/apis/message.js +1 -1
  69. package/dist/apis/metering.cjs +6 -6
  70. package/dist/apis/metering.js +1 -1
  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/snapshot.cjs +6 -6
  94. package/dist/apis/snapshot.js +1 -1
  95. package/dist/apis/submission.cjs +6 -6
  96. package/dist/apis/submission.js +1 -1
  97. package/dist/apis/target.cjs +6 -6
  98. package/dist/apis/target.js +1 -1
  99. package/dist/apis/targeting.cjs +6 -6
  100. package/dist/apis/targeting.js +1 -1
  101. package/dist/apis/template-variables.cjs +6 -6
  102. package/dist/apis/template-variables.js +1 -1
  103. package/dist/apis/user.cjs +6 -6
  104. package/dist/apis/user.js +1 -1
  105. package/dist/apis/validation-rules.cjs +6 -6
  106. package/dist/apis/validation-rules.js +1 -1
  107. package/dist/apis/webhooks.cjs +6 -6
  108. package/dist/apis/webhooks.js +1 -1
  109. package/dist/apis/workflow-definition.cjs +6 -6
  110. package/dist/apis/workflow-definition.js +1 -1
  111. package/dist/apis/workflow.cjs +6 -6
  112. package/dist/apis/workflow.js +1 -1
  113. package/dist/{chunk-EWY5NKI7.cjs → chunk-2L5YHQFJ.cjs} +4 -4
  114. package/dist/{chunk-KHKNOPEX.js → chunk-7HQ3GMYQ.js} +1 -1
  115. package/dist/{chunk-YNJPE3SS.cjs → chunk-AWJHA3GG.cjs} +1 -1
  116. package/dist/{chunk-5MIH4RZR.js → chunk-FMM7LLAO.js} +4 -4
  117. package/dist/{chunk-RXFXAZK3.cjs → chunk-TIH5X7Q4.cjs} +1 -1
  118. package/dist/{chunk-5OOGTDF2.js → chunk-YWZCVCG2.js} +1 -1
  119. package/dist/email-settings-U753HXGA.js +7 -0
  120. package/dist/email-settings-Z5EBAELW.cjs +7 -0
  121. package/dist/{email-settings-runtime-J7JLYDMU.cjs → email-settings-runtime-IW2AT2RB.cjs} +2 -2
  122. package/dist/{email-settings-runtime-4BT72ADN.js → email-settings-runtime-YJYEC5AH.js} +1 -1
  123. package/dist/{email-settings.d-CR4lORuR.d.cts → email-settings.d-DViLYaOl.d.cts} +56 -14
  124. package/dist/{email-settings.d-CR4lORuR.d.ts → email-settings.d-DViLYaOl.d.ts} +56 -14
  125. package/dist/index.cjs +12 -12
  126. package/dist/index.d.cts +2 -2
  127. package/dist/index.d.ts +2 -2
  128. package/dist/index.js +3 -3
  129. package/dist/integration-toolkit-MT7RPOOG.js +7 -0
  130. package/dist/integration-toolkit-S5BHYFIW.cjs +7 -0
  131. package/dist/{integration-toolkit-runtime-2MBB4EOE.js → integration-toolkit-runtime-6J2KUTFL.js} +1 -1
  132. package/dist/{integration-toolkit-runtime-VUI4NCRJ.cjs → integration-toolkit-runtime-REEOXZO6.cjs} +2 -2
  133. package/dist/{integration-toolkit.d-E2nrIdIM.d.cts → integration-toolkit.d-CVI89-A-.d.cts} +122 -9
  134. package/dist/{integration-toolkit.d-E2nrIdIM.d.ts → integration-toolkit.d-CVI89-A-.d.ts} +122 -9
  135. package/docs/email-settings.md +17 -13
  136. package/docs/integration-toolkit.md +103 -7
  137. package/package.json +1 -1
  138. package/dist/email-settings-ECSU7KWC.js +0 -7
  139. package/dist/email-settings-RHMYC2KT.cjs +0 -7
  140. package/dist/integration-toolkit-63NIMAHB.js +0 -7
  141. package/dist/integration-toolkit-7NCK7Z5G.cjs +0 -7
@@ -1338,10 +1338,11 @@ declare namespace Components {
1338
1338
  */
1339
1339
  latest_types_package_name?: string;
1340
1340
  }
1341
+ /**
1342
+ * Register an already-uploaded file as an import. The use case is chosen later, via `:validate` — upload and interpretation are separate decisions.
1343
+ */
1341
1344
  export interface CreateErpImportRequest {
1342
1345
  s3_reference: S3Reference;
1343
- integration_id: string;
1344
- use_case_slug?: string;
1345
1346
  }
1346
1347
  export interface CreateErpImportResponse {
1347
1348
  /**
@@ -2066,14 +2067,17 @@ declare namespace Components {
2066
2067
  import_id: string;
2067
2068
  org_id: string;
2068
2069
  created_by?: string;
2069
- integration_id: string;
2070
2070
  /**
2071
- * The inbound use case whose mapping drives both phases.
2071
+ * The integration owning the chosen use case. Absent until the first `:validate`.
2072
+ */
2073
+ integration_id?: string;
2074
+ /**
2075
+ * The inbound use case whose mapping drives both phases. Absent until the first `:validate`, and MUTABLE — re-validating with a different use case replaces it.
2072
2076
  */
2073
2077
  use_case_slug?: string;
2074
2078
  format: "csv" | "xlsx";
2075
2079
  /**
2076
- * PENDING → VALIDATING → READY → PROCESSING → IMPORTED, with FAILED reachable from any working status, and CANCELLING → CANCELLED reachable from VALIDATING or PROCESSING via :abort. IMPORTED, FAILED and CANCELLED are terminal and final.
2080
+ * PENDING → VALIDATING → READY → PROCESSING → IMPORTED, with FAILED reachable from any working status, and CANCELLING → CANCELLED reachable from VALIDATING or PROCESSING via :abort. Only IMPORTED and CANCELLED are terminal. READY and FAILED both accept a further `:validate`, which is how a wrong use case is corrected without re-uploading the file.
2077
2081
  * IMPORTED means every row was handed to the platform, not that the platform finished — per-row outcomes live in monitoring, filtered by correlation_id. A file that fails validation is FAILED with error.code = VALIDATION_BLOCKED.
2078
2082
  * READY is legitimately idle for as long as the user takes to confirm, so it carries no running work and never goes stale.
2079
2083
  * CANCELLING is transient and cooperative: the abort has been recorded but the worker only notices at its next batch boundary. Rows already published stay published — a stop is not a rollback.
@@ -2116,6 +2120,20 @@ declare namespace Components {
2116
2120
  */
2117
2121
  total_rows?: number;
2118
2122
  }
2123
+ export interface ErpImportUseCaseSuggestion {
2124
+ integration_id: string;
2125
+ integration_name: string;
2126
+ use_case_slug: string;
2127
+ use_case_name: string;
2128
+ /**
2129
+ * How many of the FILE's columns this use case reads, by exact trimmed name.
2130
+ */
2131
+ matched_columns: number;
2132
+ /**
2133
+ * Columns in the file. Identical across entries; repeated per entry so each row renders standalone as "matches N of your M columns".
2134
+ */
2135
+ file_columns: number;
2136
+ }
2119
2137
  /**
2120
2138
  * Validate-phase summary: what the file will create, and whether it may be confirmed. Absent until the validate phase completes. No per-row detail is kept — a rejected file is corrected and imported again.
2121
2139
  */
@@ -6172,6 +6190,9 @@ declare namespace Components {
6172
6190
  */
6173
6191
  overwrite?: boolean;
6174
6192
  }
6193
+ export interface SuggestErpImportUseCasesResponse {
6194
+ suggestions: ErpImportUseCaseSuggestion[];
6195
+ }
6175
6196
  export interface TestNotificationRequest {
6176
6197
  /**
6177
6198
  * The kind of notification to render and send.
@@ -6724,6 +6745,13 @@ declare namespace Components {
6724
6745
  response_shape: /* Describes the inferred type shape of a JSONata expression */ TypeDescriptor;
6725
6746
  existing_annotations?: /* Developer-provided type annotations for a use case's request and response fields */ TypeAnnotations;
6726
6747
  }
6748
+ export interface ValidateErpImportRequest {
6749
+ integration_id: string;
6750
+ /**
6751
+ * An inbound use case's slug, unique within its integration.
6752
+ */
6753
+ use_case_slug: string;
6754
+ }
6727
6755
  /**
6728
6756
  * Push delivery of the transformed event to a webhook via svc-webhooks
6729
6757
  */
@@ -6832,7 +6860,7 @@ declare namespace Paths {
6832
6860
  }
6833
6861
  }
6834
6862
  namespace CreateErpImport {
6835
- export type RequestBody = Components.Schemas.CreateErpImportRequest;
6863
+ export type RequestBody = /* Register an already-uploaded file as an import. The use case is chosen later, via `:validate` — upload and interpretation are separate decisions. */ Components.Schemas.CreateErpImportRequest;
6836
6864
  namespace Responses {
6837
6865
  export type $202 = Components.Schemas.CreateErpImportResponse;
6838
6866
  export type $400 = Components.Responses.BadRequest;
@@ -7660,6 +7688,21 @@ declare namespace Paths {
7660
7688
  export type $500 = Components.Responses.InternalServerError;
7661
7689
  }
7662
7690
  }
7691
+ namespace SuggestErpImportUseCases {
7692
+ namespace Parameters {
7693
+ export type ImportId = string;
7694
+ }
7695
+ export interface PathParameters {
7696
+ importId: Parameters.ImportId;
7697
+ }
7698
+ namespace Responses {
7699
+ export type $200 = Components.Schemas.SuggestErpImportUseCasesResponse;
7700
+ export type $400 = Components.Responses.BadRequest;
7701
+ export type $403 = Components.Responses.Forbidden;
7702
+ export type $404 = Components.Responses.NotFound;
7703
+ export type $500 = Components.Responses.InternalServerError;
7704
+ }
7705
+ }
7663
7706
  namespace TestSendNotification {
7664
7707
  namespace Parameters {
7665
7708
  export type IntegrationId = string; // uuid
@@ -7800,6 +7843,23 @@ declare namespace Paths {
7800
7843
  export type $500 = Components.Responses.InternalServerError;
7801
7844
  }
7802
7845
  }
7846
+ namespace ValidateErpImport {
7847
+ namespace Parameters {
7848
+ export type ImportId = string;
7849
+ }
7850
+ export interface PathParameters {
7851
+ importId: Parameters.ImportId;
7852
+ }
7853
+ export type RequestBody = Components.Schemas.ValidateErpImportRequest;
7854
+ namespace Responses {
7855
+ export type $202 = Components.Schemas.ErpImportJob;
7856
+ export type $403 = Components.Responses.Forbidden;
7857
+ export type $404 = Components.Responses.NotFound;
7858
+ export type $409 = Components.Responses.Conflict;
7859
+ export type $422 = Components.Schemas.ErrorResponseBase;
7860
+ export type $500 = Components.Responses.InternalServerError;
7861
+ }
7862
+ }
7803
7863
  }
7804
7864
 
7805
7865
 
@@ -8549,7 +8609,7 @@ interface OperationMethods {
8549
8609
  /**
8550
8610
  * createErpImport - createErpImport
8551
8611
  *
8552
- * Create a pricing-file import job from an already-uploaded file (S3 ref). Returns a job id and starts the validate phase asynchronously poll GET /v2/erp/imports/{importId}.
8612
+ * Register an already-uploaded file (S3 ref) as a pricing-file import job and return its id. Nothing runs yet: no use case is chosen and no validation starts here. Rank the candidates with POST /v2/erp/imports/{importId}:suggest-use-cases, then start the validate phase with POST /v2/erp/imports/{importId}:validate.
8553
8613
  */
8554
8614
  'createErpImport'(
8555
8615
  parameters?: Parameters<UnknownParamsObject> | null,
@@ -8566,6 +8626,29 @@ interface OperationMethods {
8566
8626
  data?: any,
8567
8627
  config?: AxiosRequestConfig
8568
8628
  ): OperationResponse<Paths.GetErpImport.Responses.$200>
8629
+ /**
8630
+ * validateErpImport - validateErpImport
8631
+ *
8632
+ * Choose the use case to read this file with, and start the validate phase.
8633
+ * Callable from PENDING, READY and FAILED — so a wrong choice is corrected by calling this again with a different use case, rather than re-uploading. Each call replaces any previous verdict. Any other status returns 409.
8634
+ */
8635
+ 'validateErpImport'(
8636
+ parameters?: Parameters<Paths.ValidateErpImport.PathParameters> | null,
8637
+ data?: Paths.ValidateErpImport.RequestBody,
8638
+ config?: AxiosRequestConfig
8639
+ ): OperationResponse<Paths.ValidateErpImport.Responses.$202>
8640
+ /**
8641
+ * suggestErpImportUseCases - suggestErpImportUseCases
8642
+ *
8643
+ * Rank the org's inbound use cases against this file's columns — the input to the ranked picker ("matches 6 of your 7 columns"). Reads only the file's first row, not its data.
8644
+ * Every eligible use case is returned, including ones matching nothing: the "nothing fits, pick anyway" view needs the full list. Highest match first.
8645
+ * CSV only — an xlsx import fails with 400 rather than silently returning zero matches, which would look identical to "we checked and nothing matches".
8646
+ */
8647
+ 'suggestErpImportUseCases'(
8648
+ parameters?: Parameters<Paths.SuggestErpImportUseCases.PathParameters> | null,
8649
+ data?: any,
8650
+ config?: AxiosRequestConfig
8651
+ ): OperationResponse<Paths.SuggestErpImportUseCases.Responses.$200>
8569
8652
  /**
8570
8653
  * executeErpImport - executeErpImport
8571
8654
  *
@@ -9412,7 +9495,7 @@ interface PathsDictionary {
9412
9495
  /**
9413
9496
  * createErpImport - createErpImport
9414
9497
  *
9415
- * Create a pricing-file import job from an already-uploaded file (S3 ref). Returns a job id and starts the validate phase asynchronously poll GET /v2/erp/imports/{importId}.
9498
+ * Register an already-uploaded file (S3 ref) as a pricing-file import job and return its id. Nothing runs yet: no use case is chosen and no validation starts here. Rank the candidates with POST /v2/erp/imports/{importId}:suggest-use-cases, then start the validate phase with POST /v2/erp/imports/{importId}:validate.
9416
9499
  */
9417
9500
  'post'(
9418
9501
  parameters?: Parameters<UnknownParamsObject> | null,
@@ -9447,6 +9530,33 @@ interface PathsDictionary {
9447
9530
  config?: AxiosRequestConfig
9448
9531
  ): OperationResponse<Paths.GetErpImport.Responses.$200>
9449
9532
  }
9533
+ ['/v2/erp/imports/{importId}:validate']: {
9534
+ /**
9535
+ * validateErpImport - validateErpImport
9536
+ *
9537
+ * Choose the use case to read this file with, and start the validate phase.
9538
+ * Callable from PENDING, READY and FAILED — so a wrong choice is corrected by calling this again with a different use case, rather than re-uploading. Each call replaces any previous verdict. Any other status returns 409.
9539
+ */
9540
+ 'post'(
9541
+ parameters?: Parameters<Paths.ValidateErpImport.PathParameters> | null,
9542
+ data?: Paths.ValidateErpImport.RequestBody,
9543
+ config?: AxiosRequestConfig
9544
+ ): OperationResponse<Paths.ValidateErpImport.Responses.$202>
9545
+ }
9546
+ ['/v2/erp/imports/{importId}:suggest-use-cases']: {
9547
+ /**
9548
+ * suggestErpImportUseCases - suggestErpImportUseCases
9549
+ *
9550
+ * Rank the org's inbound use cases against this file's columns — the input to the ranked picker ("matches 6 of your 7 columns"). Reads only the file's first row, not its data.
9551
+ * Every eligible use case is returned, including ones matching nothing: the "nothing fits, pick anyway" view needs the full list. Highest match first.
9552
+ * CSV only — an xlsx import fails with 400 rather than silently returning zero matches, which would look identical to "we checked and nothing matches".
9553
+ */
9554
+ 'post'(
9555
+ parameters?: Parameters<Paths.SuggestErpImportUseCases.PathParameters> | null,
9556
+ data?: any,
9557
+ config?: AxiosRequestConfig
9558
+ ): OperationResponse<Paths.SuggestErpImportUseCases.Responses.$200>
9559
+ }
9450
9560
  ['/v2/erp/imports/{importId}:execute']: {
9451
9561
  /**
9452
9562
  * executeErpImport - executeErpImport
@@ -9516,6 +9626,7 @@ type ErpImportIssue = Components.Schemas.ErpImportIssue;
9516
9626
  type ErpImportJob = Components.Schemas.ErpImportJob;
9517
9627
  type ErpImportList = Components.Schemas.ErpImportList;
9518
9628
  type ErpImportProgress = Components.Schemas.ErpImportProgress;
9629
+ type ErpImportUseCaseSuggestion = Components.Schemas.ErpImportUseCaseSuggestion;
9519
9630
  type ErpImportValidation = Components.Schemas.ErpImportValidation;
9520
9631
  type ErpUpdatesEventsV2Request = Components.Schemas.ErpUpdatesEventsV2Request;
9521
9632
  type ErpUpdatesEventsV3Request = Components.Schemas.ErpUpdatesEventsV3Request;
@@ -9635,6 +9746,7 @@ type SecureProxyUseCaseHistoryEntry = Components.Schemas.SecureProxyUseCaseHisto
9635
9746
  type SecureProxyWhitelist = Components.Schemas.SecureProxyWhitelist;
9636
9747
  type SecureProxyWhitelistUpdate = Components.Schemas.SecureProxyWhitelistUpdate;
9637
9748
  type SetIntegrationAppMappingRequest = Components.Schemas.SetIntegrationAppMappingRequest;
9749
+ type SuggestErpImportUseCasesResponse = Components.Schemas.SuggestErpImportUseCasesResponse;
9638
9750
  type TestNotificationRequest = Components.Schemas.TestNotificationRequest;
9639
9751
  type TestNotificationResponse = Components.Schemas.TestNotificationResponse;
9640
9752
  type TimeSeriesBreakdownItemV2 = Components.Schemas.TimeSeriesBreakdownItemV2;
@@ -9660,7 +9772,8 @@ type UseCaseBase = Components.Schemas.UseCaseBase;
9660
9772
  type UseCaseHistoryEntry = Components.Schemas.UseCaseHistoryEntry;
9661
9773
  type UseCaseHistoryEntryBase = Components.Schemas.UseCaseHistoryEntryBase;
9662
9774
  type UseCaseTypePreview = Components.Schemas.UseCaseTypePreview;
9775
+ type ValidateErpImportRequest = Components.Schemas.ValidateErpImportRequest;
9663
9776
  type WebhookDeliveryConfig = Components.Schemas.WebhookDeliveryConfig;
9664
9777
  type WebhookStatus = Components.Schemas.WebhookStatus;
9665
9778
 
9666
- export { type FileProxyStep as $, type AccessLogEntry as A, type EntityPruneScopeUpdate as B, type Client as C, type DeleteIntegrationAppMappingRequest as D, type EmbeddedFileProxyUseCaseRequest as E, type EntityUpdate as F, type EnvVarRefConfig as G, type EnvironmentFieldConfig as H, type ErpEvent as I, type ErpEventV3 as J, type ErpImportError as K, type ErpImportIssue as L, type ErpImportJob as M, type ErpImportList as N, type OperationMethods as O, Paths as P, type ErpImportProgress as Q, type ErpImportValidation as R, type ErpUpdatesEventsV2Request as S, type ErpUpdatesEventsV3Request as T, type ErrorResponseBase as U, type ExecuteErpImportRequest as V, type ExternalMonitoringSpan as W, type FileProxyAuth as X, type FileProxyParam as Y, type FileProxyResponseConfig as Z, type FileProxySecureProxyAttachment as _, Components as a, type OutboundIntegrationEventConfiguration as a$, type FileProxyUrlConfig as a0, type FileProxyUrlParam as a1, type FileProxyUrlParams as a2, type FileProxyUseCase as a3, type FileProxyUseCaseConfiguration as a4, type FileProxyUseCaseHistoryEntry as a5, type GenerateTypesPreviewResponse as a6, type GenerateTypesRequest as a7, type GenerateTypesResponse as a8, type GetMonitoringStatsRequest as a9, type ManagedCallOperation as aA, type ManagedCallOperationConfig as aB, type ManagedCallUseCase as aC, type ManagedCallUseCaseHistoryEntry as aD, type MappingSimulationRequest as aE, type MappingSimulationResponse as aF, type MappingSimulationV2Request as aG, type MappingSimulationWarning as aH, type MeterReadingPruneScopeConfig as aI, type MeterReadingPruneScopeUpdate as aJ, type MeterReadingUpdate as aK, type MeterUniqueIdsConfig as aL, type MonitoringEventV2 as aM, type MonitoringStats as aN, type MonitoringStatsV2 as aO, type MonitoringTraceResponse as aP, type NotificationChannelSet as aQ, type NotificationDigestConfig as aR, type NotificationHistoryItem as aS, type NotificationHistoryResponse as aT, type NotificationRecipient as aU, type NotificationRule as aV, type NotificationRuleStatus as aW, type NotificationStatusResponse as aX, type OutboundConflict as aY, type OutboundDlqListResponse as aZ, type OutboundDlqMessage as a_, type GetMonitoringStatsV2Request as aa, type GetMonitoringTimeSeriesRequest as ab, type GetMonitoringTimeSeriesV2Request as ac, type InboundIntegrationEventConfiguration as ad, type InboundMonitoringEvent as ae, type InboundUseCase as af, type InboundUseCaseHistoryEntry as ag, type IngestExternalMonitoringEventsRequest as ah, type IngestExternalMonitoringEventsResponse as ai, type Integration as aj, type IntegrationAppMapping as ak, type IntegrationConfigurationV1 as al, type IntegrationConfigurationV2 as am, type IntegrationEditableFields as an, type IntegrationEntity as ao, type IntegrationEntityField as ap, type IntegrationFieldV1 as aq, type IntegrationMeterReading as ar, type IntegrationNotificationConfig as as, type IntegrationObjectV1 as at, type IntegrationSettings as au, type IntegrationWithUseCases as av, type ManagedCallAuth as aw, type ManagedCallErrorResponse as ax, type ManagedCallExecuteRequest as ay, type ManagedCallExecuteResponse as az, type PathsDictionary as b, type UpsertIntegrationWithUseCasesRequest as b$, type OutboundMapping as b0, type OutboundMessage as b1, type OutboundMonitoringEvent as b2, type OutboundPollStatus as b3, type OutboundStatusResponse as b4, type OutboundUseCase as b5, type OutboundUseCaseHistoryEntry as b6, type OutboundUseCaseStatus as b7, type PollDeliveryConfig as b8, type PollOutboundMessagesRequest as b9, type SecureProxySummary as bA, type SecureProxyUpstreamError as bB, type SecureProxyUseCase as bC, type SecureProxyUseCaseConfiguration as bD, type SecureProxyUseCaseHistoryEntry as bE, type SecureProxyWhitelist as bF, type SecureProxyWhitelistUpdate as bG, type SetIntegrationAppMappingRequest as bH, type TestNotificationRequest as bI, type TestNotificationResponse as bJ, type TimeSeriesBreakdownItemV2 as bK, type TimeSeriesBucket as bL, type TimeSeriesBucketV2 as bM, type TriggerErpActionRequest as bN, type TriggerWebhookResp as bO, type TypeAnnotations as bP, type TypeDescriptor as bQ, type UnblockOutboundStreamRequest as bR, type UnblockOutboundStreamResponse as bS, type UpdateFileProxyUseCaseRequest as bT, type UpdateInboundUseCaseRequest as bU, type UpdateIntegrationRequest as bV, type UpdateManagedCallUseCaseRequest as bW, type UpdateOutboundUseCaseRequest as bX, type UpdateSecureProxyUseCaseRequest as bY, type UpdateUseCaseRequest as bZ, type UpdateUseCaseRequestBase as b_, type PollOutboundMessagesResponse as ba, type PortalOrigin as bb, type PortalRefConfig as bc, type PortalRefFilter as bd, type PruneScopeConfig as be, type QueryAccessLogsRequest as bf, type QueryEventsRequest as bg, type QueryInboundMonitoringEventsRequest as bh, type QueryMonitoringEventsV2Request as bi, type QueryOutboundMonitoringEventsRequest as bj, type RedriveOutboundDlqRequest as bk, type RedriveOutboundDlqResponse as bl, type RedriveOutboundDlqResult as bm, type RelationConfig as bn, type RelationItemConfig as bo, type RelationRefItemConfig as bp, type RelationRefValueConfig as bq, type RelationRefsConfig as br, type RelationUniqueIdField as bs, type RepeatableFieldType as bt, type ReplayEventsRequest as bu, type RuleBaselineBucket as bv, type RuleBaselineStatus as bw, type S3Reference as bx, type SecureProxyRequest as by, type SecureProxyResponse as bz, type AckOutboundMessagesRequest as c, type UseCase as c0, type UseCaseBase as c1, type UseCaseHistoryEntry as c2, type UseCaseHistoryEntryBase as c3, type UseCaseTypePreview as c4, type WebhookDeliveryConfig as c5, type WebhookStatus as c6, type AckOutboundMessagesResponse as d, type AckResult as e, type AutoRefreshSettings as f, type CommitTypesRequest as g, type CommitTypesResponse as h, type ConnectorConfig as i, type CreateErpImportRequest as j, type CreateErpImportResponse as k, type CreateFileProxyUseCaseRequest as l, type CreateInboundUseCaseRequest as m, type CreateIntegrationRequest as n, type CreateManagedCallUseCaseRequest as o, type CreateOutboundUseCaseRequest as p, type CreateSecureProxyUseCaseRequest as q, type CreateUseCaseRequest as r, type CreateUseCaseRequestBase as s, type DeliveryConfig as t, type EmbeddedInboundUseCaseRequest as u, type EmbeddedManagedCallUseCaseRequest as v, type EmbeddedOutboundUseCaseRequest as w, type EmbeddedSecureProxyUseCaseRequest as x, type EmbeddedUseCaseRequest as y, type EmbeddedUseCaseRequestBase as z };
9779
+ export { type FileProxySecureProxyAttachment as $, type AccessLogEntry as A, type EntityPruneScopeUpdate as B, type Client as C, type DeleteIntegrationAppMappingRequest as D, type EmbeddedFileProxyUseCaseRequest as E, type EntityUpdate as F, type EnvVarRefConfig as G, type EnvironmentFieldConfig as H, type ErpEvent as I, type ErpEventV3 as J, type ErpImportError as K, type ErpImportIssue as L, type ErpImportJob as M, type ErpImportList as N, type OperationMethods as O, Paths as P, type ErpImportProgress as Q, type ErpImportUseCaseSuggestion as R, type ErpImportValidation as S, type ErpUpdatesEventsV2Request as T, type ErpUpdatesEventsV3Request as U, type ErrorResponseBase as V, type ExecuteErpImportRequest as W, type ExternalMonitoringSpan as X, type FileProxyAuth as Y, type FileProxyParam as Z, type FileProxyResponseConfig as _, Components as a, type OutboundDlqMessage as a$, type FileProxyStep as a0, type FileProxyUrlConfig as a1, type FileProxyUrlParam as a2, type FileProxyUrlParams as a3, type FileProxyUseCase as a4, type FileProxyUseCaseConfiguration as a5, type FileProxyUseCaseHistoryEntry as a6, type GenerateTypesPreviewResponse as a7, type GenerateTypesRequest as a8, type GenerateTypesResponse as a9, type ManagedCallExecuteResponse as aA, type ManagedCallOperation as aB, type ManagedCallOperationConfig as aC, type ManagedCallUseCase as aD, type ManagedCallUseCaseHistoryEntry as aE, type MappingSimulationRequest as aF, type MappingSimulationResponse as aG, type MappingSimulationV2Request as aH, type MappingSimulationWarning as aI, type MeterReadingPruneScopeConfig as aJ, type MeterReadingPruneScopeUpdate as aK, type MeterReadingUpdate as aL, type MeterUniqueIdsConfig as aM, type MonitoringEventV2 as aN, type MonitoringStats as aO, type MonitoringStatsV2 as aP, type MonitoringTraceResponse as aQ, type NotificationChannelSet as aR, type NotificationDigestConfig as aS, type NotificationHistoryItem as aT, type NotificationHistoryResponse as aU, type NotificationRecipient as aV, type NotificationRule as aW, type NotificationRuleStatus as aX, type NotificationStatusResponse as aY, type OutboundConflict as aZ, type OutboundDlqListResponse as a_, type GetMonitoringStatsRequest as aa, type GetMonitoringStatsV2Request as ab, type GetMonitoringTimeSeriesRequest as ac, type GetMonitoringTimeSeriesV2Request as ad, type InboundIntegrationEventConfiguration as ae, type InboundMonitoringEvent as af, type InboundUseCase as ag, type InboundUseCaseHistoryEntry as ah, type IngestExternalMonitoringEventsRequest as ai, type IngestExternalMonitoringEventsResponse as aj, type Integration as ak, type IntegrationAppMapping as al, type IntegrationConfigurationV1 as am, type IntegrationConfigurationV2 as an, type IntegrationEditableFields as ao, type IntegrationEntity as ap, type IntegrationEntityField as aq, type IntegrationFieldV1 as ar, type IntegrationMeterReading as as, type IntegrationNotificationConfig as at, type IntegrationObjectV1 as au, type IntegrationSettings as av, type IntegrationWithUseCases as aw, type ManagedCallAuth as ax, type ManagedCallErrorResponse as ay, type ManagedCallExecuteRequest as az, type PathsDictionary as b, type UpdateUseCaseRequest as b$, type OutboundIntegrationEventConfiguration as b0, type OutboundMapping as b1, type OutboundMessage as b2, type OutboundMonitoringEvent as b3, type OutboundPollStatus as b4, type OutboundStatusResponse as b5, type OutboundUseCase as b6, type OutboundUseCaseHistoryEntry as b7, type OutboundUseCaseStatus as b8, type PollDeliveryConfig as b9, type SecureProxyResponse as bA, type SecureProxySummary as bB, type SecureProxyUpstreamError as bC, type SecureProxyUseCase as bD, type SecureProxyUseCaseConfiguration as bE, type SecureProxyUseCaseHistoryEntry as bF, type SecureProxyWhitelist as bG, type SecureProxyWhitelistUpdate as bH, type SetIntegrationAppMappingRequest as bI, type SuggestErpImportUseCasesResponse as bJ, type TestNotificationRequest as bK, type TestNotificationResponse as bL, type TimeSeriesBreakdownItemV2 as bM, type TimeSeriesBucket as bN, type TimeSeriesBucketV2 as bO, type TriggerErpActionRequest as bP, type TriggerWebhookResp as bQ, type TypeAnnotations as bR, type TypeDescriptor as bS, type UnblockOutboundStreamRequest as bT, type UnblockOutboundStreamResponse as bU, type UpdateFileProxyUseCaseRequest as bV, type UpdateInboundUseCaseRequest as bW, type UpdateIntegrationRequest as bX, type UpdateManagedCallUseCaseRequest as bY, type UpdateOutboundUseCaseRequest as bZ, type UpdateSecureProxyUseCaseRequest as b_, type PollOutboundMessagesRequest as ba, type PollOutboundMessagesResponse as bb, type PortalOrigin as bc, type PortalRefConfig as bd, type PortalRefFilter as be, type PruneScopeConfig as bf, type QueryAccessLogsRequest as bg, type QueryEventsRequest as bh, type QueryInboundMonitoringEventsRequest as bi, type QueryMonitoringEventsV2Request as bj, type QueryOutboundMonitoringEventsRequest as bk, type RedriveOutboundDlqRequest as bl, type RedriveOutboundDlqResponse as bm, type RedriveOutboundDlqResult as bn, type RelationConfig as bo, type RelationItemConfig as bp, type RelationRefItemConfig as bq, type RelationRefValueConfig as br, type RelationRefsConfig as bs, type RelationUniqueIdField as bt, type RepeatableFieldType as bu, type ReplayEventsRequest as bv, type RuleBaselineBucket as bw, type RuleBaselineStatus as bx, type S3Reference as by, type SecureProxyRequest as bz, type AckOutboundMessagesRequest as c, type UpdateUseCaseRequestBase as c0, type UpsertIntegrationWithUseCasesRequest as c1, type UseCase as c2, type UseCaseBase as c3, type UseCaseHistoryEntry as c4, type UseCaseHistoryEntryBase as c5, type UseCaseTypePreview as c6, type ValidateErpImportRequest as c7, type WebhookDeliveryConfig as c8, type WebhookStatus as c9, type AckOutboundMessagesResponse as d, type AckResult as e, type AutoRefreshSettings as f, type CommitTypesRequest as g, type CommitTypesResponse as h, type ConnectorConfig as i, type CreateErpImportRequest as j, type CreateErpImportResponse as k, type CreateFileProxyUseCaseRequest as l, type CreateInboundUseCaseRequest as m, type CreateIntegrationRequest as n, type CreateManagedCallUseCaseRequest as o, type CreateOutboundUseCaseRequest as p, type CreateSecureProxyUseCaseRequest as q, type CreateUseCaseRequest as r, type CreateUseCaseRequestBase as s, type DeliveryConfig as t, type EmbeddedInboundUseCaseRequest as u, type EmbeddedManagedCallUseCaseRequest as v, type EmbeddedOutboundUseCaseRequest as w, type EmbeddedSecureProxyUseCaseRequest as x, type EmbeddedUseCaseRequest as y, type EmbeddedUseCaseRequestBase as z };
@@ -1338,10 +1338,11 @@ declare namespace Components {
1338
1338
  */
1339
1339
  latest_types_package_name?: string;
1340
1340
  }
1341
+ /**
1342
+ * Register an already-uploaded file as an import. The use case is chosen later, via `:validate` — upload and interpretation are separate decisions.
1343
+ */
1341
1344
  export interface CreateErpImportRequest {
1342
1345
  s3_reference: S3Reference;
1343
- integration_id: string;
1344
- use_case_slug?: string;
1345
1346
  }
1346
1347
  export interface CreateErpImportResponse {
1347
1348
  /**
@@ -2066,14 +2067,17 @@ declare namespace Components {
2066
2067
  import_id: string;
2067
2068
  org_id: string;
2068
2069
  created_by?: string;
2069
- integration_id: string;
2070
2070
  /**
2071
- * The inbound use case whose mapping drives both phases.
2071
+ * The integration owning the chosen use case. Absent until the first `:validate`.
2072
+ */
2073
+ integration_id?: string;
2074
+ /**
2075
+ * The inbound use case whose mapping drives both phases. Absent until the first `:validate`, and MUTABLE — re-validating with a different use case replaces it.
2072
2076
  */
2073
2077
  use_case_slug?: string;
2074
2078
  format: "csv" | "xlsx";
2075
2079
  /**
2076
- * PENDING → VALIDATING → READY → PROCESSING → IMPORTED, with FAILED reachable from any working status, and CANCELLING → CANCELLED reachable from VALIDATING or PROCESSING via :abort. IMPORTED, FAILED and CANCELLED are terminal and final.
2080
+ * PENDING → VALIDATING → READY → PROCESSING → IMPORTED, with FAILED reachable from any working status, and CANCELLING → CANCELLED reachable from VALIDATING or PROCESSING via :abort. Only IMPORTED and CANCELLED are terminal. READY and FAILED both accept a further `:validate`, which is how a wrong use case is corrected without re-uploading the file.
2077
2081
  * IMPORTED means every row was handed to the platform, not that the platform finished — per-row outcomes live in monitoring, filtered by correlation_id. A file that fails validation is FAILED with error.code = VALIDATION_BLOCKED.
2078
2082
  * READY is legitimately idle for as long as the user takes to confirm, so it carries no running work and never goes stale.
2079
2083
  * CANCELLING is transient and cooperative: the abort has been recorded but the worker only notices at its next batch boundary. Rows already published stay published — a stop is not a rollback.
@@ -2116,6 +2120,20 @@ declare namespace Components {
2116
2120
  */
2117
2121
  total_rows?: number;
2118
2122
  }
2123
+ export interface ErpImportUseCaseSuggestion {
2124
+ integration_id: string;
2125
+ integration_name: string;
2126
+ use_case_slug: string;
2127
+ use_case_name: string;
2128
+ /**
2129
+ * How many of the FILE's columns this use case reads, by exact trimmed name.
2130
+ */
2131
+ matched_columns: number;
2132
+ /**
2133
+ * Columns in the file. Identical across entries; repeated per entry so each row renders standalone as "matches N of your M columns".
2134
+ */
2135
+ file_columns: number;
2136
+ }
2119
2137
  /**
2120
2138
  * Validate-phase summary: what the file will create, and whether it may be confirmed. Absent until the validate phase completes. No per-row detail is kept — a rejected file is corrected and imported again.
2121
2139
  */
@@ -6172,6 +6190,9 @@ declare namespace Components {
6172
6190
  */
6173
6191
  overwrite?: boolean;
6174
6192
  }
6193
+ export interface SuggestErpImportUseCasesResponse {
6194
+ suggestions: ErpImportUseCaseSuggestion[];
6195
+ }
6175
6196
  export interface TestNotificationRequest {
6176
6197
  /**
6177
6198
  * The kind of notification to render and send.
@@ -6724,6 +6745,13 @@ declare namespace Components {
6724
6745
  response_shape: /* Describes the inferred type shape of a JSONata expression */ TypeDescriptor;
6725
6746
  existing_annotations?: /* Developer-provided type annotations for a use case's request and response fields */ TypeAnnotations;
6726
6747
  }
6748
+ export interface ValidateErpImportRequest {
6749
+ integration_id: string;
6750
+ /**
6751
+ * An inbound use case's slug, unique within its integration.
6752
+ */
6753
+ use_case_slug: string;
6754
+ }
6727
6755
  /**
6728
6756
  * Push delivery of the transformed event to a webhook via svc-webhooks
6729
6757
  */
@@ -6832,7 +6860,7 @@ declare namespace Paths {
6832
6860
  }
6833
6861
  }
6834
6862
  namespace CreateErpImport {
6835
- export type RequestBody = Components.Schemas.CreateErpImportRequest;
6863
+ export type RequestBody = /* Register an already-uploaded file as an import. The use case is chosen later, via `:validate` — upload and interpretation are separate decisions. */ Components.Schemas.CreateErpImportRequest;
6836
6864
  namespace Responses {
6837
6865
  export type $202 = Components.Schemas.CreateErpImportResponse;
6838
6866
  export type $400 = Components.Responses.BadRequest;
@@ -7660,6 +7688,21 @@ declare namespace Paths {
7660
7688
  export type $500 = Components.Responses.InternalServerError;
7661
7689
  }
7662
7690
  }
7691
+ namespace SuggestErpImportUseCases {
7692
+ namespace Parameters {
7693
+ export type ImportId = string;
7694
+ }
7695
+ export interface PathParameters {
7696
+ importId: Parameters.ImportId;
7697
+ }
7698
+ namespace Responses {
7699
+ export type $200 = Components.Schemas.SuggestErpImportUseCasesResponse;
7700
+ export type $400 = Components.Responses.BadRequest;
7701
+ export type $403 = Components.Responses.Forbidden;
7702
+ export type $404 = Components.Responses.NotFound;
7703
+ export type $500 = Components.Responses.InternalServerError;
7704
+ }
7705
+ }
7663
7706
  namespace TestSendNotification {
7664
7707
  namespace Parameters {
7665
7708
  export type IntegrationId = string; // uuid
@@ -7800,6 +7843,23 @@ declare namespace Paths {
7800
7843
  export type $500 = Components.Responses.InternalServerError;
7801
7844
  }
7802
7845
  }
7846
+ namespace ValidateErpImport {
7847
+ namespace Parameters {
7848
+ export type ImportId = string;
7849
+ }
7850
+ export interface PathParameters {
7851
+ importId: Parameters.ImportId;
7852
+ }
7853
+ export type RequestBody = Components.Schemas.ValidateErpImportRequest;
7854
+ namespace Responses {
7855
+ export type $202 = Components.Schemas.ErpImportJob;
7856
+ export type $403 = Components.Responses.Forbidden;
7857
+ export type $404 = Components.Responses.NotFound;
7858
+ export type $409 = Components.Responses.Conflict;
7859
+ export type $422 = Components.Schemas.ErrorResponseBase;
7860
+ export type $500 = Components.Responses.InternalServerError;
7861
+ }
7862
+ }
7803
7863
  }
7804
7864
 
7805
7865
 
@@ -8549,7 +8609,7 @@ interface OperationMethods {
8549
8609
  /**
8550
8610
  * createErpImport - createErpImport
8551
8611
  *
8552
- * Create a pricing-file import job from an already-uploaded file (S3 ref). Returns a job id and starts the validate phase asynchronously poll GET /v2/erp/imports/{importId}.
8612
+ * Register an already-uploaded file (S3 ref) as a pricing-file import job and return its id. Nothing runs yet: no use case is chosen and no validation starts here. Rank the candidates with POST /v2/erp/imports/{importId}:suggest-use-cases, then start the validate phase with POST /v2/erp/imports/{importId}:validate.
8553
8613
  */
8554
8614
  'createErpImport'(
8555
8615
  parameters?: Parameters<UnknownParamsObject> | null,
@@ -8566,6 +8626,29 @@ interface OperationMethods {
8566
8626
  data?: any,
8567
8627
  config?: AxiosRequestConfig
8568
8628
  ): OperationResponse<Paths.GetErpImport.Responses.$200>
8629
+ /**
8630
+ * validateErpImport - validateErpImport
8631
+ *
8632
+ * Choose the use case to read this file with, and start the validate phase.
8633
+ * Callable from PENDING, READY and FAILED — so a wrong choice is corrected by calling this again with a different use case, rather than re-uploading. Each call replaces any previous verdict. Any other status returns 409.
8634
+ */
8635
+ 'validateErpImport'(
8636
+ parameters?: Parameters<Paths.ValidateErpImport.PathParameters> | null,
8637
+ data?: Paths.ValidateErpImport.RequestBody,
8638
+ config?: AxiosRequestConfig
8639
+ ): OperationResponse<Paths.ValidateErpImport.Responses.$202>
8640
+ /**
8641
+ * suggestErpImportUseCases - suggestErpImportUseCases
8642
+ *
8643
+ * Rank the org's inbound use cases against this file's columns — the input to the ranked picker ("matches 6 of your 7 columns"). Reads only the file's first row, not its data.
8644
+ * Every eligible use case is returned, including ones matching nothing: the "nothing fits, pick anyway" view needs the full list. Highest match first.
8645
+ * CSV only — an xlsx import fails with 400 rather than silently returning zero matches, which would look identical to "we checked and nothing matches".
8646
+ */
8647
+ 'suggestErpImportUseCases'(
8648
+ parameters?: Parameters<Paths.SuggestErpImportUseCases.PathParameters> | null,
8649
+ data?: any,
8650
+ config?: AxiosRequestConfig
8651
+ ): OperationResponse<Paths.SuggestErpImportUseCases.Responses.$200>
8569
8652
  /**
8570
8653
  * executeErpImport - executeErpImport
8571
8654
  *
@@ -9412,7 +9495,7 @@ interface PathsDictionary {
9412
9495
  /**
9413
9496
  * createErpImport - createErpImport
9414
9497
  *
9415
- * Create a pricing-file import job from an already-uploaded file (S3 ref). Returns a job id and starts the validate phase asynchronously poll GET /v2/erp/imports/{importId}.
9498
+ * Register an already-uploaded file (S3 ref) as a pricing-file import job and return its id. Nothing runs yet: no use case is chosen and no validation starts here. Rank the candidates with POST /v2/erp/imports/{importId}:suggest-use-cases, then start the validate phase with POST /v2/erp/imports/{importId}:validate.
9416
9499
  */
9417
9500
  'post'(
9418
9501
  parameters?: Parameters<UnknownParamsObject> | null,
@@ -9447,6 +9530,33 @@ interface PathsDictionary {
9447
9530
  config?: AxiosRequestConfig
9448
9531
  ): OperationResponse<Paths.GetErpImport.Responses.$200>
9449
9532
  }
9533
+ ['/v2/erp/imports/{importId}:validate']: {
9534
+ /**
9535
+ * validateErpImport - validateErpImport
9536
+ *
9537
+ * Choose the use case to read this file with, and start the validate phase.
9538
+ * Callable from PENDING, READY and FAILED — so a wrong choice is corrected by calling this again with a different use case, rather than re-uploading. Each call replaces any previous verdict. Any other status returns 409.
9539
+ */
9540
+ 'post'(
9541
+ parameters?: Parameters<Paths.ValidateErpImport.PathParameters> | null,
9542
+ data?: Paths.ValidateErpImport.RequestBody,
9543
+ config?: AxiosRequestConfig
9544
+ ): OperationResponse<Paths.ValidateErpImport.Responses.$202>
9545
+ }
9546
+ ['/v2/erp/imports/{importId}:suggest-use-cases']: {
9547
+ /**
9548
+ * suggestErpImportUseCases - suggestErpImportUseCases
9549
+ *
9550
+ * Rank the org's inbound use cases against this file's columns — the input to the ranked picker ("matches 6 of your 7 columns"). Reads only the file's first row, not its data.
9551
+ * Every eligible use case is returned, including ones matching nothing: the "nothing fits, pick anyway" view needs the full list. Highest match first.
9552
+ * CSV only — an xlsx import fails with 400 rather than silently returning zero matches, which would look identical to "we checked and nothing matches".
9553
+ */
9554
+ 'post'(
9555
+ parameters?: Parameters<Paths.SuggestErpImportUseCases.PathParameters> | null,
9556
+ data?: any,
9557
+ config?: AxiosRequestConfig
9558
+ ): OperationResponse<Paths.SuggestErpImportUseCases.Responses.$200>
9559
+ }
9450
9560
  ['/v2/erp/imports/{importId}:execute']: {
9451
9561
  /**
9452
9562
  * executeErpImport - executeErpImport
@@ -9516,6 +9626,7 @@ type ErpImportIssue = Components.Schemas.ErpImportIssue;
9516
9626
  type ErpImportJob = Components.Schemas.ErpImportJob;
9517
9627
  type ErpImportList = Components.Schemas.ErpImportList;
9518
9628
  type ErpImportProgress = Components.Schemas.ErpImportProgress;
9629
+ type ErpImportUseCaseSuggestion = Components.Schemas.ErpImportUseCaseSuggestion;
9519
9630
  type ErpImportValidation = Components.Schemas.ErpImportValidation;
9520
9631
  type ErpUpdatesEventsV2Request = Components.Schemas.ErpUpdatesEventsV2Request;
9521
9632
  type ErpUpdatesEventsV3Request = Components.Schemas.ErpUpdatesEventsV3Request;
@@ -9635,6 +9746,7 @@ type SecureProxyUseCaseHistoryEntry = Components.Schemas.SecureProxyUseCaseHisto
9635
9746
  type SecureProxyWhitelist = Components.Schemas.SecureProxyWhitelist;
9636
9747
  type SecureProxyWhitelistUpdate = Components.Schemas.SecureProxyWhitelistUpdate;
9637
9748
  type SetIntegrationAppMappingRequest = Components.Schemas.SetIntegrationAppMappingRequest;
9749
+ type SuggestErpImportUseCasesResponse = Components.Schemas.SuggestErpImportUseCasesResponse;
9638
9750
  type TestNotificationRequest = Components.Schemas.TestNotificationRequest;
9639
9751
  type TestNotificationResponse = Components.Schemas.TestNotificationResponse;
9640
9752
  type TimeSeriesBreakdownItemV2 = Components.Schemas.TimeSeriesBreakdownItemV2;
@@ -9660,7 +9772,8 @@ type UseCaseBase = Components.Schemas.UseCaseBase;
9660
9772
  type UseCaseHistoryEntry = Components.Schemas.UseCaseHistoryEntry;
9661
9773
  type UseCaseHistoryEntryBase = Components.Schemas.UseCaseHistoryEntryBase;
9662
9774
  type UseCaseTypePreview = Components.Schemas.UseCaseTypePreview;
9775
+ type ValidateErpImportRequest = Components.Schemas.ValidateErpImportRequest;
9663
9776
  type WebhookDeliveryConfig = Components.Schemas.WebhookDeliveryConfig;
9664
9777
  type WebhookStatus = Components.Schemas.WebhookStatus;
9665
9778
 
9666
- export { type FileProxyStep as $, type AccessLogEntry as A, type EntityPruneScopeUpdate as B, type Client as C, type DeleteIntegrationAppMappingRequest as D, type EmbeddedFileProxyUseCaseRequest as E, type EntityUpdate as F, type EnvVarRefConfig as G, type EnvironmentFieldConfig as H, type ErpEvent as I, type ErpEventV3 as J, type ErpImportError as K, type ErpImportIssue as L, type ErpImportJob as M, type ErpImportList as N, type OperationMethods as O, Paths as P, type ErpImportProgress as Q, type ErpImportValidation as R, type ErpUpdatesEventsV2Request as S, type ErpUpdatesEventsV3Request as T, type ErrorResponseBase as U, type ExecuteErpImportRequest as V, type ExternalMonitoringSpan as W, type FileProxyAuth as X, type FileProxyParam as Y, type FileProxyResponseConfig as Z, type FileProxySecureProxyAttachment as _, Components as a, type OutboundIntegrationEventConfiguration as a$, type FileProxyUrlConfig as a0, type FileProxyUrlParam as a1, type FileProxyUrlParams as a2, type FileProxyUseCase as a3, type FileProxyUseCaseConfiguration as a4, type FileProxyUseCaseHistoryEntry as a5, type GenerateTypesPreviewResponse as a6, type GenerateTypesRequest as a7, type GenerateTypesResponse as a8, type GetMonitoringStatsRequest as a9, type ManagedCallOperation as aA, type ManagedCallOperationConfig as aB, type ManagedCallUseCase as aC, type ManagedCallUseCaseHistoryEntry as aD, type MappingSimulationRequest as aE, type MappingSimulationResponse as aF, type MappingSimulationV2Request as aG, type MappingSimulationWarning as aH, type MeterReadingPruneScopeConfig as aI, type MeterReadingPruneScopeUpdate as aJ, type MeterReadingUpdate as aK, type MeterUniqueIdsConfig as aL, type MonitoringEventV2 as aM, type MonitoringStats as aN, type MonitoringStatsV2 as aO, type MonitoringTraceResponse as aP, type NotificationChannelSet as aQ, type NotificationDigestConfig as aR, type NotificationHistoryItem as aS, type NotificationHistoryResponse as aT, type NotificationRecipient as aU, type NotificationRule as aV, type NotificationRuleStatus as aW, type NotificationStatusResponse as aX, type OutboundConflict as aY, type OutboundDlqListResponse as aZ, type OutboundDlqMessage as a_, type GetMonitoringStatsV2Request as aa, type GetMonitoringTimeSeriesRequest as ab, type GetMonitoringTimeSeriesV2Request as ac, type InboundIntegrationEventConfiguration as ad, type InboundMonitoringEvent as ae, type InboundUseCase as af, type InboundUseCaseHistoryEntry as ag, type IngestExternalMonitoringEventsRequest as ah, type IngestExternalMonitoringEventsResponse as ai, type Integration as aj, type IntegrationAppMapping as ak, type IntegrationConfigurationV1 as al, type IntegrationConfigurationV2 as am, type IntegrationEditableFields as an, type IntegrationEntity as ao, type IntegrationEntityField as ap, type IntegrationFieldV1 as aq, type IntegrationMeterReading as ar, type IntegrationNotificationConfig as as, type IntegrationObjectV1 as at, type IntegrationSettings as au, type IntegrationWithUseCases as av, type ManagedCallAuth as aw, type ManagedCallErrorResponse as ax, type ManagedCallExecuteRequest as ay, type ManagedCallExecuteResponse as az, type PathsDictionary as b, type UpsertIntegrationWithUseCasesRequest as b$, type OutboundMapping as b0, type OutboundMessage as b1, type OutboundMonitoringEvent as b2, type OutboundPollStatus as b3, type OutboundStatusResponse as b4, type OutboundUseCase as b5, type OutboundUseCaseHistoryEntry as b6, type OutboundUseCaseStatus as b7, type PollDeliveryConfig as b8, type PollOutboundMessagesRequest as b9, type SecureProxySummary as bA, type SecureProxyUpstreamError as bB, type SecureProxyUseCase as bC, type SecureProxyUseCaseConfiguration as bD, type SecureProxyUseCaseHistoryEntry as bE, type SecureProxyWhitelist as bF, type SecureProxyWhitelistUpdate as bG, type SetIntegrationAppMappingRequest as bH, type TestNotificationRequest as bI, type TestNotificationResponse as bJ, type TimeSeriesBreakdownItemV2 as bK, type TimeSeriesBucket as bL, type TimeSeriesBucketV2 as bM, type TriggerErpActionRequest as bN, type TriggerWebhookResp as bO, type TypeAnnotations as bP, type TypeDescriptor as bQ, type UnblockOutboundStreamRequest as bR, type UnblockOutboundStreamResponse as bS, type UpdateFileProxyUseCaseRequest as bT, type UpdateInboundUseCaseRequest as bU, type UpdateIntegrationRequest as bV, type UpdateManagedCallUseCaseRequest as bW, type UpdateOutboundUseCaseRequest as bX, type UpdateSecureProxyUseCaseRequest as bY, type UpdateUseCaseRequest as bZ, type UpdateUseCaseRequestBase as b_, type PollOutboundMessagesResponse as ba, type PortalOrigin as bb, type PortalRefConfig as bc, type PortalRefFilter as bd, type PruneScopeConfig as be, type QueryAccessLogsRequest as bf, type QueryEventsRequest as bg, type QueryInboundMonitoringEventsRequest as bh, type QueryMonitoringEventsV2Request as bi, type QueryOutboundMonitoringEventsRequest as bj, type RedriveOutboundDlqRequest as bk, type RedriveOutboundDlqResponse as bl, type RedriveOutboundDlqResult as bm, type RelationConfig as bn, type RelationItemConfig as bo, type RelationRefItemConfig as bp, type RelationRefValueConfig as bq, type RelationRefsConfig as br, type RelationUniqueIdField as bs, type RepeatableFieldType as bt, type ReplayEventsRequest as bu, type RuleBaselineBucket as bv, type RuleBaselineStatus as bw, type S3Reference as bx, type SecureProxyRequest as by, type SecureProxyResponse as bz, type AckOutboundMessagesRequest as c, type UseCase as c0, type UseCaseBase as c1, type UseCaseHistoryEntry as c2, type UseCaseHistoryEntryBase as c3, type UseCaseTypePreview as c4, type WebhookDeliveryConfig as c5, type WebhookStatus as c6, type AckOutboundMessagesResponse as d, type AckResult as e, type AutoRefreshSettings as f, type CommitTypesRequest as g, type CommitTypesResponse as h, type ConnectorConfig as i, type CreateErpImportRequest as j, type CreateErpImportResponse as k, type CreateFileProxyUseCaseRequest as l, type CreateInboundUseCaseRequest as m, type CreateIntegrationRequest as n, type CreateManagedCallUseCaseRequest as o, type CreateOutboundUseCaseRequest as p, type CreateSecureProxyUseCaseRequest as q, type CreateUseCaseRequest as r, type CreateUseCaseRequestBase as s, type DeliveryConfig as t, type EmbeddedInboundUseCaseRequest as u, type EmbeddedManagedCallUseCaseRequest as v, type EmbeddedOutboundUseCaseRequest as w, type EmbeddedSecureProxyUseCaseRequest as x, type EmbeddedUseCaseRequest as y, type EmbeddedUseCaseRequestBase as z };
9779
+ export { type FileProxySecureProxyAttachment as $, type AccessLogEntry as A, type EntityPruneScopeUpdate as B, type Client as C, type DeleteIntegrationAppMappingRequest as D, type EmbeddedFileProxyUseCaseRequest as E, type EntityUpdate as F, type EnvVarRefConfig as G, type EnvironmentFieldConfig as H, type ErpEvent as I, type ErpEventV3 as J, type ErpImportError as K, type ErpImportIssue as L, type ErpImportJob as M, type ErpImportList as N, type OperationMethods as O, Paths as P, type ErpImportProgress as Q, type ErpImportUseCaseSuggestion as R, type ErpImportValidation as S, type ErpUpdatesEventsV2Request as T, type ErpUpdatesEventsV3Request as U, type ErrorResponseBase as V, type ExecuteErpImportRequest as W, type ExternalMonitoringSpan as X, type FileProxyAuth as Y, type FileProxyParam as Z, type FileProxyResponseConfig as _, Components as a, type OutboundDlqMessage as a$, type FileProxyStep as a0, type FileProxyUrlConfig as a1, type FileProxyUrlParam as a2, type FileProxyUrlParams as a3, type FileProxyUseCase as a4, type FileProxyUseCaseConfiguration as a5, type FileProxyUseCaseHistoryEntry as a6, type GenerateTypesPreviewResponse as a7, type GenerateTypesRequest as a8, type GenerateTypesResponse as a9, type ManagedCallExecuteResponse as aA, type ManagedCallOperation as aB, type ManagedCallOperationConfig as aC, type ManagedCallUseCase as aD, type ManagedCallUseCaseHistoryEntry as aE, type MappingSimulationRequest as aF, type MappingSimulationResponse as aG, type MappingSimulationV2Request as aH, type MappingSimulationWarning as aI, type MeterReadingPruneScopeConfig as aJ, type MeterReadingPruneScopeUpdate as aK, type MeterReadingUpdate as aL, type MeterUniqueIdsConfig as aM, type MonitoringEventV2 as aN, type MonitoringStats as aO, type MonitoringStatsV2 as aP, type MonitoringTraceResponse as aQ, type NotificationChannelSet as aR, type NotificationDigestConfig as aS, type NotificationHistoryItem as aT, type NotificationHistoryResponse as aU, type NotificationRecipient as aV, type NotificationRule as aW, type NotificationRuleStatus as aX, type NotificationStatusResponse as aY, type OutboundConflict as aZ, type OutboundDlqListResponse as a_, type GetMonitoringStatsRequest as aa, type GetMonitoringStatsV2Request as ab, type GetMonitoringTimeSeriesRequest as ac, type GetMonitoringTimeSeriesV2Request as ad, type InboundIntegrationEventConfiguration as ae, type InboundMonitoringEvent as af, type InboundUseCase as ag, type InboundUseCaseHistoryEntry as ah, type IngestExternalMonitoringEventsRequest as ai, type IngestExternalMonitoringEventsResponse as aj, type Integration as ak, type IntegrationAppMapping as al, type IntegrationConfigurationV1 as am, type IntegrationConfigurationV2 as an, type IntegrationEditableFields as ao, type IntegrationEntity as ap, type IntegrationEntityField as aq, type IntegrationFieldV1 as ar, type IntegrationMeterReading as as, type IntegrationNotificationConfig as at, type IntegrationObjectV1 as au, type IntegrationSettings as av, type IntegrationWithUseCases as aw, type ManagedCallAuth as ax, type ManagedCallErrorResponse as ay, type ManagedCallExecuteRequest as az, type PathsDictionary as b, type UpdateUseCaseRequest as b$, type OutboundIntegrationEventConfiguration as b0, type OutboundMapping as b1, type OutboundMessage as b2, type OutboundMonitoringEvent as b3, type OutboundPollStatus as b4, type OutboundStatusResponse as b5, type OutboundUseCase as b6, type OutboundUseCaseHistoryEntry as b7, type OutboundUseCaseStatus as b8, type PollDeliveryConfig as b9, type SecureProxyResponse as bA, type SecureProxySummary as bB, type SecureProxyUpstreamError as bC, type SecureProxyUseCase as bD, type SecureProxyUseCaseConfiguration as bE, type SecureProxyUseCaseHistoryEntry as bF, type SecureProxyWhitelist as bG, type SecureProxyWhitelistUpdate as bH, type SetIntegrationAppMappingRequest as bI, type SuggestErpImportUseCasesResponse as bJ, type TestNotificationRequest as bK, type TestNotificationResponse as bL, type TimeSeriesBreakdownItemV2 as bM, type TimeSeriesBucket as bN, type TimeSeriesBucketV2 as bO, type TriggerErpActionRequest as bP, type TriggerWebhookResp as bQ, type TypeAnnotations as bR, type TypeDescriptor as bS, type UnblockOutboundStreamRequest as bT, type UnblockOutboundStreamResponse as bU, type UpdateFileProxyUseCaseRequest as bV, type UpdateInboundUseCaseRequest as bW, type UpdateIntegrationRequest as bX, type UpdateManagedCallUseCaseRequest as bY, type UpdateOutboundUseCaseRequest as bZ, type UpdateSecureProxyUseCaseRequest as b_, type PollOutboundMessagesRequest as ba, type PollOutboundMessagesResponse as bb, type PortalOrigin as bc, type PortalRefConfig as bd, type PortalRefFilter as be, type PruneScopeConfig as bf, type QueryAccessLogsRequest as bg, type QueryEventsRequest as bh, type QueryInboundMonitoringEventsRequest as bi, type QueryMonitoringEventsV2Request as bj, type QueryOutboundMonitoringEventsRequest as bk, type RedriveOutboundDlqRequest as bl, type RedriveOutboundDlqResponse as bm, type RedriveOutboundDlqResult as bn, type RelationConfig as bo, type RelationItemConfig as bp, type RelationRefItemConfig as bq, type RelationRefValueConfig as br, type RelationRefsConfig as bs, type RelationUniqueIdField as bt, type RepeatableFieldType as bu, type ReplayEventsRequest as bv, type RuleBaselineBucket as bw, type RuleBaselineStatus as bx, type S3Reference as by, type SecureProxyRequest as bz, type AckOutboundMessagesRequest as c, type UpdateUseCaseRequestBase as c0, type UpsertIntegrationWithUseCasesRequest as c1, type UseCase as c2, type UseCaseBase as c3, type UseCaseHistoryEntry as c4, type UseCaseHistoryEntryBase as c5, type UseCaseTypePreview as c6, type ValidateErpImportRequest as c7, type WebhookDeliveryConfig as c8, type WebhookStatus as c9, type AckOutboundMessagesResponse as d, type AckResult as e, type AutoRefreshSettings as f, type CommitTypesRequest as g, type CommitTypesResponse as h, type ConnectorConfig as i, type CreateErpImportRequest as j, type CreateErpImportResponse as k, type CreateFileProxyUseCaseRequest as l, type CreateInboundUseCaseRequest as m, type CreateIntegrationRequest as n, type CreateManagedCallUseCaseRequest as o, type CreateOutboundUseCaseRequest as p, type CreateSecureProxyUseCaseRequest as q, type CreateUseCaseRequest as r, type CreateUseCaseRequestBase as s, type DeliveryConfig as t, type EmbeddedInboundUseCaseRequest as u, type EmbeddedManagedCallUseCaseRequest as v, type EmbeddedOutboundUseCaseRequest as w, type EmbeddedSecureProxyUseCaseRequest as x, type EmbeddedUseCaseRequest as y, type EmbeddedUseCaseRequestBase as z };
@@ -1045,7 +1045,7 @@ const { data } = await client.listSmtpConnections()
1045
1045
  {
1046
1046
  "connection_id": "string",
1047
1047
  "smtp_host": "string",
1048
- "smtp_port": 0,
1048
+ "smtp_port": "string",
1049
1049
  "smtp_secure": "tls",
1050
1050
  "smtp_username": "string",
1051
1051
  "smtp_password": "string",
@@ -1070,17 +1070,19 @@ const { data } = await client.listSmtpConnections()
1070
1070
  ### `createSmtpConnection`
1071
1071
 
1072
1072
  Creates a new custom SMTP connection. Runs a live verify against the SMTP server
1073
- before persisting; on failure the request is rejected and nothing is saved.
1074
- The password is encrypted via KMS before be
1073
+ before persisting; on failure the request is rejected and nothing is saved. Pass
1074
+ `skip_test=true` to store the configur
1075
1075
 
1076
1076
  `POST /v2/smtp/connections`
1077
1077
 
1078
1078
  ```ts
1079
1079
  const { data } = await client.createSmtpConnection(
1080
- null,
1080
+ {
1081
+ skip_test: true,
1082
+ },
1081
1083
  {
1082
1084
  smtp_host: 'string',
1083
- smtp_port: 1,
1085
+ smtp_port: 'string',
1084
1086
  smtp_secure: 'tls',
1085
1087
  smtp_username: 'string',
1086
1088
  smtp_password: '{{ env.smtp_password }}'
@@ -1095,7 +1097,7 @@ const { data } = await client.createSmtpConnection(
1095
1097
  {
1096
1098
  "connection_id": "string",
1097
1099
  "smtp_host": "string",
1098
- "smtp_port": 0,
1100
+ "smtp_port": "string",
1099
1101
  "smtp_secure": "tls",
1100
1102
  "smtp_username": "string",
1101
1103
  "smtp_password": "string",
@@ -1133,7 +1135,7 @@ const { data } = await client.getSmtpConnection({
1133
1135
  {
1134
1136
  "connection_id": "string",
1135
1137
  "smtp_host": "string",
1136
- "smtp_port": 0,
1138
+ "smtp_port": "string",
1137
1139
  "smtp_secure": "tls",
1138
1140
  "smtp_username": "string",
1139
1141
  "smtp_password": "string",
@@ -1155,7 +1157,8 @@ const { data } = await client.getSmtpConnection({
1155
1157
  ### `updateSmtpConnection`
1156
1158
 
1157
1159
  Partial update; omitted fields keep their existing values. The merged
1158
- configuration is verified against the SMTP server before persisting.
1160
+ configuration is verified against the SMTP server before persisting. Pass
1161
+ `skip_test=true` to store it untested instead, which als
1159
1162
 
1160
1163
  `PUT /v2/smtp/connections/{connectionId}`
1161
1164
 
@@ -1163,10 +1166,11 @@ configuration is verified against the SMTP server before persisting.
1163
1166
  const { data } = await client.updateSmtpConnection(
1164
1167
  {
1165
1168
  connectionId: 'example',
1169
+ skip_test: true,
1166
1170
  },
1167
1171
  {
1168
1172
  smtp_host: 'string',
1169
- smtp_port: 1,
1173
+ smtp_port: 'string',
1170
1174
  smtp_secure: 'tls',
1171
1175
  smtp_username: 'string',
1172
1176
  smtp_password: 'string'
@@ -1181,7 +1185,7 @@ const { data } = await client.updateSmtpConnection(
1181
1185
  {
1182
1186
  "connection_id": "string",
1183
1187
  "smtp_host": "string",
1184
- "smtp_port": 0,
1188
+ "smtp_port": "string",
1185
1189
  "smtp_secure": "tls",
1186
1190
  "smtp_username": "string",
1187
1191
  "smtp_password": "string",
@@ -2118,7 +2122,7 @@ type OutlookConnectionStatus = {
2118
2122
  type SmtpConnection = {
2119
2123
  connection_id: string
2120
2124
  smtp_host: string
2121
- smtp_port: number
2125
+ smtp_port: string
2122
2126
  smtp_secure: "tls" | "starttls"
2123
2127
  smtp_username: string
2124
2128
  smtp_password?: string
@@ -2138,7 +2142,7 @@ type SmtpConnection = {
2138
2142
  ```ts
2139
2143
  type CreateSmtpConnectionRequest = {
2140
2144
  smtp_host: string
2141
- smtp_port: number
2145
+ smtp_port: string | number
2142
2146
  smtp_secure: "tls" | "starttls"
2143
2147
  smtp_username: string
2144
2148
  smtp_password: string
@@ -2152,7 +2156,7 @@ Partial update; omitted fields keep their existing values.
2152
2156
  ```ts
2153
2157
  type UpdateSmtpConnectionRequest = {
2154
2158
  smtp_host?: string
2155
- smtp_port?: number
2159
+ smtp_port?: string | number
2156
2160
  smtp_secure?: "tls" | "starttls"
2157
2161
  smtp_username?: string
2158
2162
  smtp_password?: string