@epilot/sdk 2.20.56 → 2.20.57

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 (129) hide show
  1. package/definitions/integration-toolkit.json +133 -16
  2. package/dist/apis/access-token.cjs +11 -7
  3. package/dist/apis/access-token.js +7 -3
  4. package/dist/apis/address-suggestions.cjs +11 -7
  5. package/dist/apis/address-suggestions.js +7 -3
  6. package/dist/apis/address.cjs +11 -7
  7. package/dist/apis/address.js +7 -3
  8. package/dist/apis/ai-agents.cjs +11 -7
  9. package/dist/apis/ai-agents.js +7 -3
  10. package/dist/apis/app.cjs +11 -7
  11. package/dist/apis/app.js +7 -3
  12. package/dist/apis/audit-logs.cjs +11 -7
  13. package/dist/apis/audit-logs.js +7 -3
  14. package/dist/apis/automation.cjs +11 -7
  15. package/dist/apis/automation.js +7 -3
  16. package/dist/apis/billing.cjs +11 -7
  17. package/dist/apis/billing.js +7 -3
  18. package/dist/apis/blueprint-manifest.cjs +11 -7
  19. package/dist/apis/blueprint-manifest.js +7 -3
  20. package/dist/apis/calendar.cjs +11 -7
  21. package/dist/apis/calendar.js +7 -3
  22. package/dist/apis/chat.cjs +11 -7
  23. package/dist/apis/chat.js +7 -3
  24. package/dist/apis/configuration-hub.cjs +11 -7
  25. package/dist/apis/configuration-hub.js +7 -3
  26. package/dist/apis/consent.cjs +11 -7
  27. package/dist/apis/consent.js +7 -3
  28. package/dist/apis/customer-portal.cjs +11 -7
  29. package/dist/apis/customer-portal.js +7 -3
  30. package/dist/apis/dashboard.cjs +11 -7
  31. package/dist/apis/dashboard.js +7 -3
  32. package/dist/apis/data-governance.cjs +11 -7
  33. package/dist/apis/data-governance.js +7 -3
  34. package/dist/apis/deduplication.cjs +11 -7
  35. package/dist/apis/deduplication.js +7 -3
  36. package/dist/apis/design.cjs +11 -7
  37. package/dist/apis/design.js +7 -3
  38. package/dist/apis/document.cjs +11 -7
  39. package/dist/apis/document.js +7 -3
  40. package/dist/apis/email-settings.cjs +11 -7
  41. package/dist/apis/email-settings.js +7 -3
  42. package/dist/apis/email-template.cjs +11 -7
  43. package/dist/apis/email-template.js +7 -3
  44. package/dist/apis/entity-mapping.cjs +11 -7
  45. package/dist/apis/entity-mapping.js +7 -3
  46. package/dist/apis/entity.cjs +11 -7
  47. package/dist/apis/entity.js +7 -3
  48. package/dist/apis/environments.cjs +11 -7
  49. package/dist/apis/environments.js +7 -3
  50. package/dist/apis/event-catalog.cjs +11 -7
  51. package/dist/apis/event-catalog.js +7 -3
  52. package/dist/apis/external-values.cjs +11 -7
  53. package/dist/apis/external-values.js +7 -3
  54. package/dist/apis/file.cjs +11 -7
  55. package/dist/apis/file.js +7 -3
  56. package/dist/apis/iban.cjs +11 -7
  57. package/dist/apis/iban.js +7 -3
  58. package/dist/apis/identity.cjs +11 -7
  59. package/dist/apis/identity.js +7 -3
  60. package/dist/apis/integration-toolkit.cjs +11 -7
  61. package/dist/apis/integration-toolkit.d.cts +2 -2
  62. package/dist/apis/integration-toolkit.d.ts +2 -2
  63. package/dist/apis/integration-toolkit.js +7 -3
  64. package/dist/apis/journey.cjs +11 -7
  65. package/dist/apis/journey.js +7 -3
  66. package/dist/apis/kanban.cjs +11 -7
  67. package/dist/apis/kanban.js +7 -3
  68. package/dist/apis/message.cjs +11 -7
  69. package/dist/apis/message.js +7 -3
  70. package/dist/apis/metering.cjs +11 -7
  71. package/dist/apis/metering.js +7 -3
  72. package/dist/apis/notes.cjs +11 -7
  73. package/dist/apis/notes.js +7 -3
  74. package/dist/apis/notification.cjs +11 -7
  75. package/dist/apis/notification.js +7 -3
  76. package/dist/apis/organization.cjs +11 -7
  77. package/dist/apis/organization.js +7 -3
  78. package/dist/apis/partner-directory.cjs +11 -7
  79. package/dist/apis/partner-directory.js +7 -3
  80. package/dist/apis/permissions.cjs +11 -7
  81. package/dist/apis/permissions.js +7 -3
  82. package/dist/apis/phone-integration.cjs +11 -7
  83. package/dist/apis/phone-integration.js +7 -3
  84. package/dist/apis/pricing-tier.cjs +11 -7
  85. package/dist/apis/pricing-tier.js +7 -3
  86. package/dist/apis/pricing.cjs +11 -7
  87. package/dist/apis/pricing.js +7 -3
  88. package/dist/apis/purpose.cjs +11 -7
  89. package/dist/apis/purpose.js +7 -3
  90. package/dist/apis/query.cjs +11 -7
  91. package/dist/apis/query.js +7 -3
  92. package/dist/apis/sandbox.cjs +11 -7
  93. package/dist/apis/sandbox.js +7 -3
  94. package/dist/apis/sharing.cjs +11 -7
  95. package/dist/apis/sharing.js +7 -3
  96. package/dist/apis/snapshot.cjs +11 -7
  97. package/dist/apis/snapshot.js +7 -3
  98. package/dist/apis/submission.cjs +11 -7
  99. package/dist/apis/submission.js +7 -3
  100. package/dist/apis/target.cjs +11 -7
  101. package/dist/apis/target.js +7 -3
  102. package/dist/apis/targeting.cjs +11 -7
  103. package/dist/apis/targeting.js +7 -3
  104. package/dist/apis/template-variables.cjs +11 -7
  105. package/dist/apis/template-variables.js +7 -3
  106. package/dist/apis/user.cjs +11 -7
  107. package/dist/apis/user.js +7 -3
  108. package/dist/apis/validation-rules.cjs +11 -7
  109. package/dist/apis/validation-rules.js +7 -3
  110. package/dist/apis/webhooks.cjs +11 -7
  111. package/dist/apis/webhooks.js +7 -3
  112. package/dist/apis/workflow-definition.cjs +11 -7
  113. package/dist/apis/workflow-definition.js +7 -3
  114. package/dist/apis/workflow.cjs +11 -7
  115. package/dist/apis/workflow.js +7 -3
  116. package/dist/{chunk-A73AZOKT.js → chunk-7G7ZIF7P.js} +1 -1
  117. package/dist/{chunk-GMONLMVN.cjs → chunk-IPYKWRRK.cjs} +1 -1
  118. package/dist/index.cjs +17 -10
  119. package/dist/index.d.cts +1 -1
  120. package/dist/index.d.ts +1 -1
  121. package/dist/index.js +10 -3
  122. package/dist/integration-toolkit-3J7KVCK7.cjs +7 -0
  123. package/dist/integration-toolkit-CV2AU2R7.js +7 -0
  124. package/dist/{integration-toolkit.d-CLlaZx6b.d.cts → integration-toolkit.d-DWslwG3c.d.cts} +71 -6
  125. package/dist/{integration-toolkit.d-CLlaZx6b.d.ts → integration-toolkit.d-DWslwG3c.d.ts} +71 -6
  126. package/docs/integration-toolkit.md +41 -7
  127. package/package.json +1 -1
  128. package/dist/integration-toolkit-CG6SFVKC.cjs +0 -7
  129. package/dist/integration-toolkit-TLIEE3DY.js +0 -7
@@ -2990,8 +2990,23 @@ declare namespace Components {
2990
2990
  * individual rows.
2991
2991
  *
2992
2992
  * `code` is the translation key and the other fields are its parameters — there is
2993
- * deliberately no message to display. Each code appears at most once, with
2994
- * everything it has to say aggregated into that one entry.
2993
+ * deliberately no message to display. Each code appears at most once (once per
2994
+ * `expected` for `VALUE_FORMAT_INVALID`), with everything it has to say aggregated
2995
+ * into that one entry.
2996
+ *
2997
+ * `VALUE_FORMAT_INVALID` — the mapping produces values in a format the entity schema
2998
+ * does not store; `expected` says which format, and `columns` names every column
2999
+ * (or, for a value built by an expression, the attribute) that holds one.
3000
+ *
3001
+ * `MAPPING_EXPRESSION_FAILED` (a warning) — a mapping expression failed for some rows,
3002
+ * including `$number()` on a value it cannot convert such as `12,50` or on a blank cell,
3003
+ * so importing anyway leaves those values out; `attributes` names the attribute it fills.
3004
+ *
3005
+ * `FROM_ROWS_EXPRESSION_FAILED` — an expression in a `conditional.from_rows` item failed
3006
+ * for some rows. Blocking, unlike a field: the import would skip every entry of that
3007
+ * target built in the same chunk, not one value; `attributes` names the list attribute.
3008
+ *
3009
+ * `lines` points at up to five file lines an issue was seen on, as examples.
2995
3010
  *
2996
3011
  * The conditional codes describe a file that cannot be written as variants:
2997
3012
  *
@@ -3019,7 +3034,7 @@ declare namespace Components {
3019
3034
  * Enum of possible issue codes.
3020
3035
  *
3021
3036
  */
3022
- code: "UNIQUE_ID_COLUMN_MISSING" | "MAPPED_COLUMN_MISSING" | "MALFORMED_ROW" | "INVALID_ENCODING" | "EMPTY_FILE" | "TOO_MANY_ROWS" | "BLANK_ROWS_SKIPPED" | "TIER_ROWS_NOT_GROUPED" | "TIER_BANDS_CONFLICT" | "CONDITION_VALUE_MISSING" | "VARIANT_VALUE_CONFLICT" | "ATTRIBUTE_NOT_OVERRIDABLE" | "ATTRIBUTE_NOT_IN_SCHEMA" | "IS_CONDITIONAL_NOT_CONSTANT" | "SCHEMA_NOT_CONDITIONABLE" | "SCHEMA_NOT_FOUND" | "SCHEMA_DECLARES_NO_CONDITIONS" | "GROUPING_KEY_NOT_A_COLUMN" | "GROUPING_KEY_IS_SORT_COLUMN" | "CONDITIONAL_TARGET_MODE_UNSUPPORTED";
3037
+ code: "UNIQUE_ID_COLUMN_MISSING" | "MAPPED_COLUMN_MISSING" | "MALFORMED_ROW" | "INVALID_ENCODING" | "EMPTY_FILE" | "TOO_MANY_ROWS" | "BLANK_ROWS_SKIPPED" | "TIER_ROWS_NOT_GROUPED" | "TIER_BANDS_CONFLICT" | "CONDITION_VALUE_MISSING" | "VARIANT_VALUE_CONFLICT" | "ATTRIBUTE_NOT_OVERRIDABLE" | "ATTRIBUTE_NOT_IN_SCHEMA" | "IS_CONDITIONAL_NOT_CONSTANT" | "SCHEMA_NOT_CONDITIONABLE" | "SCHEMA_NOT_FOUND" | "SCHEMA_DECLARES_NO_CONDITIONS" | "GROUPING_KEY_NOT_A_COLUMN" | "GROUPING_KEY_IS_SORT_COLUMN" | "CONDITIONAL_TARGET_MODE_UNSUPPORTED" | "VALUE_FORMAT_INVALID" | "MAPPING_EXPRESSION_FAILED" | "FROM_ROWS_EXPRESSION_FAILED";
3023
3038
  severity: "warning" | "blocking";
3024
3039
  /**
3025
3040
  * The columns this issue is about, at most one entry per column per entity.
@@ -3035,14 +3050,33 @@ declare namespace Components {
3035
3050
  */
3036
3051
  entity?: string;
3037
3052
  }[];
3053
+ /**
3054
+ * The mapping fields this issue is about, where the value is not a file column as it is: an expression builds it, or the expression fails. VALUE_FORMAT_INVALID (beside `columns`, which holds the values taken from a column as they are), MAPPING_EXPRESSION_FAILED and FROM_ROWS_EXPRESSION_FAILED.
3055
+ */
3056
+ attributes?: {
3057
+ /**
3058
+ * The attribute the mapping writes, like `unit_amount_decimal`.
3059
+ */
3060
+ name: string;
3061
+ }[];
3062
+ /**
3063
+ * Up to five lines of the file this issue was seen on, as examples rather than the full list. The header is line 1. BLANK_ROWS_SKIPPED, VALUE_FORMAT_INVALID, MAPPING_EXPRESSION_FAILED, FROM_ROWS_EXPRESSION_FAILED, TIER_ROWS_NOT_GROUPED (where a variant's rows start again), TIER_BANDS_CONFLICT and VARIANT_VALUE_CONFLICT (the row at odds with the first).
3064
+ */
3065
+ lines?: number[];
3038
3066
  /**
3039
3067
  * What the issue is about — an attribute, an entity type slug, or an "attribute reads column" pair — to substitute into the client's copy for the code. Independent of `columns`; a code can carry both.
3040
3068
  */
3041
3069
  subject?: string;
3042
3070
  /**
3043
- * The offending data row, 1-based as the user counts rows. MALFORMED_ROW only.
3071
+ * The offending row's line in the file, the header being line 1 — the number a spreadsheet or text editor shows, and the same numbering as `lines`. MALFORMED_ROW only.
3044
3072
  */
3045
3073
  row?: number;
3074
+ /**
3075
+ * The format the values should have had. VALUE_FORMAT_INVALID only.
3076
+ * - `number` — a JSON number; the mapping produces text (wrap the column in `$number()`). - `text` — text; the mapping produces a number. - `decimal` — a plain number with a dot as text, like `12.50`. - `date` — a date like `2026-01-01`, optionally with a time and offset like
3077
+ * `2026-01-01T08:00:00Z`.
3078
+ */
3079
+ expected?: "number" | "text" | "decimal" | "date";
3046
3080
  }
3047
3081
  export interface ErpImportJob {
3048
3082
  /**
@@ -3158,8 +3192,23 @@ declare namespace Components {
3158
3192
  * individual rows.
3159
3193
  *
3160
3194
  * `code` is the translation key and the other fields are its parameters — there is
3161
- * deliberately no message to display. Each code appears at most once, with
3162
- * everything it has to say aggregated into that one entry.
3195
+ * deliberately no message to display. Each code appears at most once (once per
3196
+ * `expected` for `VALUE_FORMAT_INVALID`), with everything it has to say aggregated
3197
+ * into that one entry.
3198
+ *
3199
+ * `VALUE_FORMAT_INVALID` — the mapping produces values in a format the entity schema
3200
+ * does not store; `expected` says which format, and `columns` names every column
3201
+ * (or, for a value built by an expression, the attribute) that holds one.
3202
+ *
3203
+ * `MAPPING_EXPRESSION_FAILED` (a warning) — a mapping expression failed for some rows,
3204
+ * including `$number()` on a value it cannot convert such as `12,50` or on a blank cell,
3205
+ * so importing anyway leaves those values out; `attributes` names the attribute it fills.
3206
+ *
3207
+ * `FROM_ROWS_EXPRESSION_FAILED` — an expression in a `conditional.from_rows` item failed
3208
+ * for some rows. Blocking, unlike a field: the import would skip every entry of that
3209
+ * target built in the same chunk, not one value; `attributes` names the list attribute.
3210
+ *
3211
+ * `lines` points at up to five file lines an issue was seen on, as examples.
3163
3212
  *
3164
3213
  * The conditional codes describe a file that cannot be written as variants:
3165
3214
  *
@@ -8940,6 +8989,7 @@ declare namespace Paths {
8940
8989
  export type $200 = Components.Responses.GetAssociatedMonitoringEventsResponse;
8941
8990
  export type $400 = Components.Responses.BadRequest;
8942
8991
  export type $401 = Components.Responses.Unauthorized;
8992
+ export type $403 = Components.Responses.Forbidden;
8943
8993
  export type $500 = Components.Responses.InternalServerError;
8944
8994
  }
8945
8995
  }
@@ -9049,6 +9099,7 @@ declare namespace Paths {
9049
9099
  export type $200 = Components.Responses.GetMonitoringStatsResponse;
9050
9100
  export type $400 = Components.Responses.BadRequest;
9051
9101
  export type $401 = Components.Responses.Unauthorized;
9102
+ export type $403 = Components.Responses.Forbidden;
9052
9103
  export type $404 = Components.Responses.NotFound;
9053
9104
  export type $500 = Components.Responses.InternalServerError;
9054
9105
  }
@@ -9065,6 +9116,7 @@ declare namespace Paths {
9065
9116
  export type $200 = Components.Responses.GetMonitoringStatsV2Response;
9066
9117
  export type $400 = Components.Responses.BadRequest;
9067
9118
  export type $401 = Components.Responses.Unauthorized;
9119
+ export type $403 = Components.Responses.Forbidden;
9068
9120
  export type $404 = Components.Responses.NotFound;
9069
9121
  export type $500 = Components.Responses.InternalServerError;
9070
9122
  }
@@ -9081,6 +9133,7 @@ declare namespace Paths {
9081
9133
  export type $200 = Components.Responses.GetMonitoringTimeSeriesResponse;
9082
9134
  export type $400 = Components.Responses.BadRequest;
9083
9135
  export type $401 = Components.Responses.Unauthorized;
9136
+ export type $403 = Components.Responses.Forbidden;
9084
9137
  export type $404 = Components.Responses.NotFound;
9085
9138
  export type $500 = Components.Responses.InternalServerError;
9086
9139
  }
@@ -9097,6 +9150,7 @@ declare namespace Paths {
9097
9150
  export type $200 = Components.Responses.GetMonitoringTimeSeriesV2Response;
9098
9151
  export type $400 = Components.Responses.BadRequest;
9099
9152
  export type $401 = Components.Responses.Unauthorized;
9153
+ export type $403 = Components.Responses.Forbidden;
9100
9154
  export type $404 = Components.Responses.NotFound;
9101
9155
  export type $500 = Components.Responses.InternalServerError;
9102
9156
  }
@@ -9148,6 +9202,7 @@ declare namespace Paths {
9148
9202
  namespace Responses {
9149
9203
  export type $200 = Components.Schemas.OutboundStatusResponse;
9150
9204
  export type $401 = Components.Responses.Unauthorized;
9205
+ export type $403 = Components.Responses.Forbidden;
9151
9206
  export type $404 = Components.Responses.NotFound;
9152
9207
  export type $500 = Components.Responses.InternalServerError;
9153
9208
  }
@@ -9501,6 +9556,7 @@ declare namespace Paths {
9501
9556
  export type $200 = Components.Responses.QueryAccessLogsResponse;
9502
9557
  export type $400 = Components.Responses.BadRequest;
9503
9558
  export type $401 = Components.Responses.Unauthorized;
9559
+ export type $403 = Components.Responses.Forbidden;
9504
9560
  export type $404 = Components.Responses.NotFound;
9505
9561
  export type $500 = Components.Responses.InternalServerError;
9506
9562
  }
@@ -9533,6 +9589,7 @@ declare namespace Paths {
9533
9589
  export type $200 = Components.Responses.QueryInboundMonitoringEventsResponse;
9534
9590
  export type $400 = Components.Responses.BadRequest;
9535
9591
  export type $401 = Components.Responses.Unauthorized;
9592
+ export type $403 = Components.Responses.Forbidden;
9536
9593
  export type $404 = Components.Responses.NotFound;
9537
9594
  export type $500 = Components.Responses.InternalServerError;
9538
9595
  }
@@ -9549,6 +9606,7 @@ declare namespace Paths {
9549
9606
  export type $200 = Components.Responses.QueryMonitoringEventsV2Response;
9550
9607
  export type $400 = Components.Responses.BadRequest;
9551
9608
  export type $401 = Components.Responses.Unauthorized;
9609
+ export type $403 = Components.Responses.Forbidden;
9552
9610
  export type $404 = Components.Responses.NotFound;
9553
9611
  export type $500 = Components.Responses.InternalServerError;
9554
9612
  }
@@ -9565,6 +9623,7 @@ declare namespace Paths {
9565
9623
  export type $200 = Components.Responses.QueryOutboundMonitoringEventsResponse;
9566
9624
  export type $400 = Components.Responses.BadRequest;
9567
9625
  export type $401 = Components.Responses.Unauthorized;
9626
+ export type $403 = Components.Responses.Forbidden;
9568
9627
  export type $404 = Components.Responses.NotFound;
9569
9628
  export type $500 = Components.Responses.InternalServerError;
9570
9629
  }
@@ -10602,6 +10661,9 @@ interface OperationMethods {
10602
10661
  * Query monitoring events from the unified erp_monitoring_v2 table.
10603
10662
  * Returns all event types (inbound, outbound, file_proxy, etc.) in a single list.
10604
10663
  * Replaces the separate v1 inbound-events and outbound-events endpoints.
10664
+ * Requires the `integration:view` grant for the integration: event
10665
+ * details can carry customer data (a mapped poll message's delivered
10666
+ * payload, for example).
10605
10667
  *
10606
10668
  */
10607
10669
  'queryMonitoringEventsV2'(
@@ -11658,6 +11720,9 @@ interface PathsDictionary {
11658
11720
  * Query monitoring events from the unified erp_monitoring_v2 table.
11659
11721
  * Returns all event types (inbound, outbound, file_proxy, etc.) in a single list.
11660
11722
  * Replaces the separate v1 inbound-events and outbound-events endpoints.
11723
+ * Requires the `integration:view` grant for the integration: event
11724
+ * details can carry customer data (a mapped poll message's delivered
11725
+ * payload, for example).
11661
11726
  *
11662
11727
  */
11663
11728
  'post'(
@@ -2990,8 +2990,23 @@ declare namespace Components {
2990
2990
  * individual rows.
2991
2991
  *
2992
2992
  * `code` is the translation key and the other fields are its parameters — there is
2993
- * deliberately no message to display. Each code appears at most once, with
2994
- * everything it has to say aggregated into that one entry.
2993
+ * deliberately no message to display. Each code appears at most once (once per
2994
+ * `expected` for `VALUE_FORMAT_INVALID`), with everything it has to say aggregated
2995
+ * into that one entry.
2996
+ *
2997
+ * `VALUE_FORMAT_INVALID` — the mapping produces values in a format the entity schema
2998
+ * does not store; `expected` says which format, and `columns` names every column
2999
+ * (or, for a value built by an expression, the attribute) that holds one.
3000
+ *
3001
+ * `MAPPING_EXPRESSION_FAILED` (a warning) — a mapping expression failed for some rows,
3002
+ * including `$number()` on a value it cannot convert such as `12,50` or on a blank cell,
3003
+ * so importing anyway leaves those values out; `attributes` names the attribute it fills.
3004
+ *
3005
+ * `FROM_ROWS_EXPRESSION_FAILED` — an expression in a `conditional.from_rows` item failed
3006
+ * for some rows. Blocking, unlike a field: the import would skip every entry of that
3007
+ * target built in the same chunk, not one value; `attributes` names the list attribute.
3008
+ *
3009
+ * `lines` points at up to five file lines an issue was seen on, as examples.
2995
3010
  *
2996
3011
  * The conditional codes describe a file that cannot be written as variants:
2997
3012
  *
@@ -3019,7 +3034,7 @@ declare namespace Components {
3019
3034
  * Enum of possible issue codes.
3020
3035
  *
3021
3036
  */
3022
- code: "UNIQUE_ID_COLUMN_MISSING" | "MAPPED_COLUMN_MISSING" | "MALFORMED_ROW" | "INVALID_ENCODING" | "EMPTY_FILE" | "TOO_MANY_ROWS" | "BLANK_ROWS_SKIPPED" | "TIER_ROWS_NOT_GROUPED" | "TIER_BANDS_CONFLICT" | "CONDITION_VALUE_MISSING" | "VARIANT_VALUE_CONFLICT" | "ATTRIBUTE_NOT_OVERRIDABLE" | "ATTRIBUTE_NOT_IN_SCHEMA" | "IS_CONDITIONAL_NOT_CONSTANT" | "SCHEMA_NOT_CONDITIONABLE" | "SCHEMA_NOT_FOUND" | "SCHEMA_DECLARES_NO_CONDITIONS" | "GROUPING_KEY_NOT_A_COLUMN" | "GROUPING_KEY_IS_SORT_COLUMN" | "CONDITIONAL_TARGET_MODE_UNSUPPORTED";
3037
+ code: "UNIQUE_ID_COLUMN_MISSING" | "MAPPED_COLUMN_MISSING" | "MALFORMED_ROW" | "INVALID_ENCODING" | "EMPTY_FILE" | "TOO_MANY_ROWS" | "BLANK_ROWS_SKIPPED" | "TIER_ROWS_NOT_GROUPED" | "TIER_BANDS_CONFLICT" | "CONDITION_VALUE_MISSING" | "VARIANT_VALUE_CONFLICT" | "ATTRIBUTE_NOT_OVERRIDABLE" | "ATTRIBUTE_NOT_IN_SCHEMA" | "IS_CONDITIONAL_NOT_CONSTANT" | "SCHEMA_NOT_CONDITIONABLE" | "SCHEMA_NOT_FOUND" | "SCHEMA_DECLARES_NO_CONDITIONS" | "GROUPING_KEY_NOT_A_COLUMN" | "GROUPING_KEY_IS_SORT_COLUMN" | "CONDITIONAL_TARGET_MODE_UNSUPPORTED" | "VALUE_FORMAT_INVALID" | "MAPPING_EXPRESSION_FAILED" | "FROM_ROWS_EXPRESSION_FAILED";
3023
3038
  severity: "warning" | "blocking";
3024
3039
  /**
3025
3040
  * The columns this issue is about, at most one entry per column per entity.
@@ -3035,14 +3050,33 @@ declare namespace Components {
3035
3050
  */
3036
3051
  entity?: string;
3037
3052
  }[];
3053
+ /**
3054
+ * The mapping fields this issue is about, where the value is not a file column as it is: an expression builds it, or the expression fails. VALUE_FORMAT_INVALID (beside `columns`, which holds the values taken from a column as they are), MAPPING_EXPRESSION_FAILED and FROM_ROWS_EXPRESSION_FAILED.
3055
+ */
3056
+ attributes?: {
3057
+ /**
3058
+ * The attribute the mapping writes, like `unit_amount_decimal`.
3059
+ */
3060
+ name: string;
3061
+ }[];
3062
+ /**
3063
+ * Up to five lines of the file this issue was seen on, as examples rather than the full list. The header is line 1. BLANK_ROWS_SKIPPED, VALUE_FORMAT_INVALID, MAPPING_EXPRESSION_FAILED, FROM_ROWS_EXPRESSION_FAILED, TIER_ROWS_NOT_GROUPED (where a variant's rows start again), TIER_BANDS_CONFLICT and VARIANT_VALUE_CONFLICT (the row at odds with the first).
3064
+ */
3065
+ lines?: number[];
3038
3066
  /**
3039
3067
  * What the issue is about — an attribute, an entity type slug, or an "attribute reads column" pair — to substitute into the client's copy for the code. Independent of `columns`; a code can carry both.
3040
3068
  */
3041
3069
  subject?: string;
3042
3070
  /**
3043
- * The offending data row, 1-based as the user counts rows. MALFORMED_ROW only.
3071
+ * The offending row's line in the file, the header being line 1 — the number a spreadsheet or text editor shows, and the same numbering as `lines`. MALFORMED_ROW only.
3044
3072
  */
3045
3073
  row?: number;
3074
+ /**
3075
+ * The format the values should have had. VALUE_FORMAT_INVALID only.
3076
+ * - `number` — a JSON number; the mapping produces text (wrap the column in `$number()`). - `text` — text; the mapping produces a number. - `decimal` — a plain number with a dot as text, like `12.50`. - `date` — a date like `2026-01-01`, optionally with a time and offset like
3077
+ * `2026-01-01T08:00:00Z`.
3078
+ */
3079
+ expected?: "number" | "text" | "decimal" | "date";
3046
3080
  }
3047
3081
  export interface ErpImportJob {
3048
3082
  /**
@@ -3158,8 +3192,23 @@ declare namespace Components {
3158
3192
  * individual rows.
3159
3193
  *
3160
3194
  * `code` is the translation key and the other fields are its parameters — there is
3161
- * deliberately no message to display. Each code appears at most once, with
3162
- * everything it has to say aggregated into that one entry.
3195
+ * deliberately no message to display. Each code appears at most once (once per
3196
+ * `expected` for `VALUE_FORMAT_INVALID`), with everything it has to say aggregated
3197
+ * into that one entry.
3198
+ *
3199
+ * `VALUE_FORMAT_INVALID` — the mapping produces values in a format the entity schema
3200
+ * does not store; `expected` says which format, and `columns` names every column
3201
+ * (or, for a value built by an expression, the attribute) that holds one.
3202
+ *
3203
+ * `MAPPING_EXPRESSION_FAILED` (a warning) — a mapping expression failed for some rows,
3204
+ * including `$number()` on a value it cannot convert such as `12,50` or on a blank cell,
3205
+ * so importing anyway leaves those values out; `attributes` names the attribute it fills.
3206
+ *
3207
+ * `FROM_ROWS_EXPRESSION_FAILED` — an expression in a `conditional.from_rows` item failed
3208
+ * for some rows. Blocking, unlike a field: the import would skip every entry of that
3209
+ * target built in the same chunk, not one value; `attributes` names the list attribute.
3210
+ *
3211
+ * `lines` points at up to five file lines an issue was seen on, as examples.
3163
3212
  *
3164
3213
  * The conditional codes describe a file that cannot be written as variants:
3165
3214
  *
@@ -8940,6 +8989,7 @@ declare namespace Paths {
8940
8989
  export type $200 = Components.Responses.GetAssociatedMonitoringEventsResponse;
8941
8990
  export type $400 = Components.Responses.BadRequest;
8942
8991
  export type $401 = Components.Responses.Unauthorized;
8992
+ export type $403 = Components.Responses.Forbidden;
8943
8993
  export type $500 = Components.Responses.InternalServerError;
8944
8994
  }
8945
8995
  }
@@ -9049,6 +9099,7 @@ declare namespace Paths {
9049
9099
  export type $200 = Components.Responses.GetMonitoringStatsResponse;
9050
9100
  export type $400 = Components.Responses.BadRequest;
9051
9101
  export type $401 = Components.Responses.Unauthorized;
9102
+ export type $403 = Components.Responses.Forbidden;
9052
9103
  export type $404 = Components.Responses.NotFound;
9053
9104
  export type $500 = Components.Responses.InternalServerError;
9054
9105
  }
@@ -9065,6 +9116,7 @@ declare namespace Paths {
9065
9116
  export type $200 = Components.Responses.GetMonitoringStatsV2Response;
9066
9117
  export type $400 = Components.Responses.BadRequest;
9067
9118
  export type $401 = Components.Responses.Unauthorized;
9119
+ export type $403 = Components.Responses.Forbidden;
9068
9120
  export type $404 = Components.Responses.NotFound;
9069
9121
  export type $500 = Components.Responses.InternalServerError;
9070
9122
  }
@@ -9081,6 +9133,7 @@ declare namespace Paths {
9081
9133
  export type $200 = Components.Responses.GetMonitoringTimeSeriesResponse;
9082
9134
  export type $400 = Components.Responses.BadRequest;
9083
9135
  export type $401 = Components.Responses.Unauthorized;
9136
+ export type $403 = Components.Responses.Forbidden;
9084
9137
  export type $404 = Components.Responses.NotFound;
9085
9138
  export type $500 = Components.Responses.InternalServerError;
9086
9139
  }
@@ -9097,6 +9150,7 @@ declare namespace Paths {
9097
9150
  export type $200 = Components.Responses.GetMonitoringTimeSeriesV2Response;
9098
9151
  export type $400 = Components.Responses.BadRequest;
9099
9152
  export type $401 = Components.Responses.Unauthorized;
9153
+ export type $403 = Components.Responses.Forbidden;
9100
9154
  export type $404 = Components.Responses.NotFound;
9101
9155
  export type $500 = Components.Responses.InternalServerError;
9102
9156
  }
@@ -9148,6 +9202,7 @@ declare namespace Paths {
9148
9202
  namespace Responses {
9149
9203
  export type $200 = Components.Schemas.OutboundStatusResponse;
9150
9204
  export type $401 = Components.Responses.Unauthorized;
9205
+ export type $403 = Components.Responses.Forbidden;
9151
9206
  export type $404 = Components.Responses.NotFound;
9152
9207
  export type $500 = Components.Responses.InternalServerError;
9153
9208
  }
@@ -9501,6 +9556,7 @@ declare namespace Paths {
9501
9556
  export type $200 = Components.Responses.QueryAccessLogsResponse;
9502
9557
  export type $400 = Components.Responses.BadRequest;
9503
9558
  export type $401 = Components.Responses.Unauthorized;
9559
+ export type $403 = Components.Responses.Forbidden;
9504
9560
  export type $404 = Components.Responses.NotFound;
9505
9561
  export type $500 = Components.Responses.InternalServerError;
9506
9562
  }
@@ -9533,6 +9589,7 @@ declare namespace Paths {
9533
9589
  export type $200 = Components.Responses.QueryInboundMonitoringEventsResponse;
9534
9590
  export type $400 = Components.Responses.BadRequest;
9535
9591
  export type $401 = Components.Responses.Unauthorized;
9592
+ export type $403 = Components.Responses.Forbidden;
9536
9593
  export type $404 = Components.Responses.NotFound;
9537
9594
  export type $500 = Components.Responses.InternalServerError;
9538
9595
  }
@@ -9549,6 +9606,7 @@ declare namespace Paths {
9549
9606
  export type $200 = Components.Responses.QueryMonitoringEventsV2Response;
9550
9607
  export type $400 = Components.Responses.BadRequest;
9551
9608
  export type $401 = Components.Responses.Unauthorized;
9609
+ export type $403 = Components.Responses.Forbidden;
9552
9610
  export type $404 = Components.Responses.NotFound;
9553
9611
  export type $500 = Components.Responses.InternalServerError;
9554
9612
  }
@@ -9565,6 +9623,7 @@ declare namespace Paths {
9565
9623
  export type $200 = Components.Responses.QueryOutboundMonitoringEventsResponse;
9566
9624
  export type $400 = Components.Responses.BadRequest;
9567
9625
  export type $401 = Components.Responses.Unauthorized;
9626
+ export type $403 = Components.Responses.Forbidden;
9568
9627
  export type $404 = Components.Responses.NotFound;
9569
9628
  export type $500 = Components.Responses.InternalServerError;
9570
9629
  }
@@ -10602,6 +10661,9 @@ interface OperationMethods {
10602
10661
  * Query monitoring events from the unified erp_monitoring_v2 table.
10603
10662
  * Returns all event types (inbound, outbound, file_proxy, etc.) in a single list.
10604
10663
  * Replaces the separate v1 inbound-events and outbound-events endpoints.
10664
+ * Requires the `integration:view` grant for the integration: event
10665
+ * details can carry customer data (a mapped poll message's delivered
10666
+ * payload, for example).
10605
10667
  *
10606
10668
  */
10607
10669
  'queryMonitoringEventsV2'(
@@ -11658,6 +11720,9 @@ interface PathsDictionary {
11658
11720
  * Query monitoring events from the unified erp_monitoring_v2 table.
11659
11721
  * Returns all event types (inbound, outbound, file_proxy, etc.) in a single list.
11660
11722
  * Replaces the separate v1 inbound-events and outbound-events endpoints.
11723
+ * Requires the `integration:view` grant for the integration: event
11724
+ * details can carry customer data (a mapped poll message's delivered
11725
+ * payload, for example).
11661
11726
  *
11662
11727
  */
11663
11728
  'post'(
@@ -3722,8 +3722,15 @@ const { data } = await client.createErpImport(
3722
3722
  "entity": "string"
3723
3723
  }
3724
3724
  ],
3725
+ "attributes": [
3726
+ {
3727
+ "name": "string"
3728
+ }
3729
+ ],
3730
+ "lines": [0],
3725
3731
  "subject": "string",
3726
- "row": 0
3732
+ "row": 0,
3733
+ "expected": "number"
3727
3734
  }
3728
3735
  ]
3729
3736
  },
@@ -3812,8 +3819,15 @@ const { data } = await client.listErpImports({
3812
3819
  "entity": "string"
3813
3820
  }
3814
3821
  ],
3822
+ "attributes": [
3823
+ {
3824
+ "name": "string"
3825
+ }
3826
+ ],
3827
+ "lines": [0],
3815
3828
  "subject": "string",
3816
- "row": 0
3829
+ "row": 0,
3830
+ "expected": "number"
3817
3831
  }
3818
3832
  ]
3819
3833
  },
@@ -3895,8 +3909,15 @@ const { data } = await client.getErpImport({
3895
3909
  "entity": "string"
3896
3910
  }
3897
3911
  ],
3912
+ "attributes": [
3913
+ {
3914
+ "name": "string"
3915
+ }
3916
+ ],
3917
+ "lines": [0],
3898
3918
  "subject": "string",
3899
- "row": 0
3919
+ "row": 0,
3920
+ "expected": "number"
3900
3921
  }
3901
3922
  ]
3902
3923
  },
@@ -4159,19 +4180,24 @@ A problem found during validation, scoped to the file as a whole rather than to
4159
4180
  individual rows.
4160
4181
 
4161
4182
  `code` is the translation key and the other fields are its parameters — there is
4162
- deliberately no message to display. Each code appears at most once, with
4163
- everything it has to say aggregated into that on
4183
+ deliberately no message to display. Each code appears at most once (once per
4184
+ `expected` for `VALUE_FORMAT_INVALID`), with
4164
4185
 
4165
4186
  ```ts
4166
4187
  type ErpImportIssue = {
4167
- code: "UNIQUE_ID_COLUMN_MISSING" | "MAPPED_COLUMN_MISSING" | "MALFORMED_ROW" | "INVALID_ENCODING" | "EMPTY_FILE" | "TOO_MANY_ROWS" | "BLANK_ROWS_SKIPPED" | "TIER_ROWS_NOT_GROUPED" | "TIER_BANDS_CONFLICT" | "CONDITION_VALUE_MISSING" | "VARIANT_VALUE_CONFLICT" | "ATTRIBUTE_NOT_OVERRIDABLE" | "ATTRIBUTE_NOT_IN_SCHEMA" | "IS_CONDITIONAL_NOT_CONSTANT" | "SCHEMA_NOT_CONDITIONABLE" | "SCHEMA_NOT_FOUND" | "SCHEMA_DECLARES_NO_CONDITIONS" | "GROUPING_KEY_NOT_A_COLUMN" | "GROUPING_KEY_IS_SORT_COLUMN" | "CONDITIONAL_TARGET_MODE_UNSUPPORTED"
4188
+ code: "UNIQUE_ID_COLUMN_MISSING" | "MAPPED_COLUMN_MISSING" | "MALFORMED_ROW" | "INVALID_ENCODING" | "EMPTY_FILE" | "TOO_MANY_ROWS" | "BLANK_ROWS_SKIPPED" | "TIER_ROWS_NOT_GROUPED" | "TIER_BANDS_CONFLICT" | "CONDITION_VALUE_MISSING" | "VARIANT_VALUE_CONFLICT" | "ATTRIBUTE_NOT_OVERRIDABLE" | "ATTRIBUTE_NOT_IN_SCHEMA" | "IS_CONDITIONAL_NOT_CONSTANT" | "SCHEMA_NOT_CONDITIONABLE" | "SCHEMA_NOT_FOUND" | "SCHEMA_DECLARES_NO_CONDITIONS" | "GROUPING_KEY_NOT_A_COLUMN" | "GROUPING_KEY_IS_SORT_COLUMN" | "CONDITIONAL_TARGET_MODE_UNSUPPORTED" | "VALUE_FORMAT_INVALID" | "MAPPING_EXPRESSION_FAILED" | "FROM_ROWS_EXPRESSION_FAILED"
4168
4189
  severity: "warning" | "blocking"
4169
4190
  columns?: Array<{
4170
4191
  name: string
4171
4192
  entity?: string
4172
4193
  }>
4194
+ attributes?: Array<{
4195
+ name: string
4196
+ }>
4197
+ lines?: number[]
4173
4198
  subject?: string
4174
4199
  row?: number
4200
+ expected?: "number" | "text" | "decimal" | "date"
4175
4201
  }
4176
4202
  ```
4177
4203
 
@@ -4195,14 +4221,19 @@ type ErpImportValidation = {
4195
4221
  version_attribute?: string
4196
4222
  }>
4197
4223
  issues?: Array<{
4198
- code: "UNIQUE_ID_COLUMN_MISSING" | "MAPPED_COLUMN_MISSING" | "MALFORMED_ROW" | "INVALID_ENCODING" | "EMPTY_FILE" | "TOO_MANY_ROWS" | "BLANK_ROWS_SKIPPED" | "TIER_ROWS_NOT_GROUPED" | "TIER_BANDS_CONFLICT" | "CONDITION_VALUE_MISSING" | "VARIANT_VALUE_CONFLICT" | "ATTRIBUTE_NOT_OVERRIDABLE" | "ATTRIBUTE_NOT_IN_SCHEMA" | "IS_CONDITIONAL_NOT_CONSTANT" | "SCHEMA_NOT_CONDITIONABLE" | "SCHEMA_NOT_FOUND" | "SCHEMA_DECLARES_NO_CONDITIONS" | "GROUPING_KEY_NOT_A_COLUMN" | "GROUPING_KEY_IS_SORT_COLUMN" | "CONDITIONAL_TARGET_MODE_UNSUPPORTED"
4224
+ code: "UNIQUE_ID_COLUMN_MISSING" | "MAPPED_COLUMN_MISSING" | "MALFORMED_ROW" | "INVALID_ENCODING" | "EMPTY_FILE" | "TOO_MANY_ROWS" | "BLANK_ROWS_SKIPPED" | "TIER_ROWS_NOT_GROUPED" | "TIER_BANDS_CONFLICT" | "CONDITION_VALUE_MISSING" | "VARIANT_VALUE_CONFLICT" | "ATTRIBUTE_NOT_OVERRIDABLE" | "ATTRIBUTE_NOT_IN_SCHEMA" | "IS_CONDITIONAL_NOT_CONSTANT" | "SCHEMA_NOT_CONDITIONABLE" | "SCHEMA_NOT_FOUND" | "SCHEMA_DECLARES_NO_CONDITIONS" | "GROUPING_KEY_NOT_A_COLUMN" | "GROUPING_KEY_IS_SORT_COLUMN" | "CONDITIONAL_TARGET_MODE_UNSUPPORTED" | "VALUE_FORMAT_INVALID" | "MAPPING_EXPRESSION_FAILED" | "FROM_ROWS_EXPRESSION_FAILED"
4199
4225
  severity: "warning" | "blocking"
4200
4226
  columns?: Array<{
4201
4227
  name: { ... }
4202
4228
  entity?: { ... }
4203
4229
  }>
4230
+ attributes?: Array<{
4231
+ name: { ... }
4232
+ }>
4233
+ lines?: number[]
4204
4234
  subject?: string
4205
4235
  row?: number
4236
+ expected?: "number" | "text" | "decimal" | "date"
4206
4237
  }>
4207
4238
  }
4208
4239
  ```
@@ -4348,8 +4379,11 @@ type ErpImportJob = {
4348
4379
  code: { ... }
4349
4380
  severity: { ... }
4350
4381
  columns?: { ... }
4382
+ attributes?: { ... }
4383
+ lines?: { ... }
4351
4384
  subject?: { ... }
4352
4385
  row?: { ... }
4386
+ expected?: { ... }
4353
4387
  }>
4354
4388
  }
4355
4389
  progress?: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@epilot/sdk",
3
- "version": "2.20.56",
3
+ "version": "2.20.57",
4
4
  "description": "JavaScript/TypeScript SDK for epilot APIs",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs",