@epilot/sdk 2.20.48 → 2.20.50

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 (159) hide show
  1. package/definitions/chat.json +1092 -1
  2. package/definitions/journey-runtime.json +1 -1
  3. package/definitions/journey.json +356 -10
  4. package/definitions/pricing-runtime.json +1 -1
  5. package/definitions/pricing.json +949 -130
  6. package/dist/apis/access-token.cjs +6 -6
  7. package/dist/apis/access-token.js +1 -1
  8. package/dist/apis/address-suggestions.cjs +6 -6
  9. package/dist/apis/address-suggestions.js +1 -1
  10. package/dist/apis/address.cjs +6 -6
  11. package/dist/apis/address.js +1 -1
  12. package/dist/apis/ai-agents.cjs +6 -6
  13. package/dist/apis/ai-agents.js +1 -1
  14. package/dist/apis/app.cjs +6 -6
  15. package/dist/apis/app.js +1 -1
  16. package/dist/apis/audit-logs.cjs +6 -6
  17. package/dist/apis/audit-logs.js +1 -1
  18. package/dist/apis/automation.cjs +6 -6
  19. package/dist/apis/automation.js +1 -1
  20. package/dist/apis/billing.cjs +6 -6
  21. package/dist/apis/billing.js +1 -1
  22. package/dist/apis/blueprint-manifest.cjs +6 -6
  23. package/dist/apis/blueprint-manifest.js +1 -1
  24. package/dist/apis/calendar.cjs +6 -6
  25. package/dist/apis/calendar.js +1 -1
  26. package/dist/apis/chat.cjs +6 -6
  27. package/dist/apis/chat.d.cts +2 -2
  28. package/dist/apis/chat.d.ts +2 -2
  29. package/dist/apis/chat.js +1 -1
  30. package/dist/apis/configuration-hub.cjs +6 -6
  31. package/dist/apis/configuration-hub.js +1 -1
  32. package/dist/apis/consent.cjs +6 -6
  33. package/dist/apis/consent.js +1 -1
  34. package/dist/apis/customer-portal.cjs +6 -6
  35. package/dist/apis/customer-portal.js +1 -1
  36. package/dist/apis/dashboard.cjs +6 -6
  37. package/dist/apis/dashboard.js +1 -1
  38. package/dist/apis/data-governance.cjs +6 -6
  39. package/dist/apis/data-governance.js +1 -1
  40. package/dist/apis/deduplication.cjs +6 -6
  41. package/dist/apis/deduplication.js +1 -1
  42. package/dist/apis/design.cjs +6 -6
  43. package/dist/apis/design.js +1 -1
  44. package/dist/apis/document.cjs +6 -6
  45. package/dist/apis/document.js +1 -1
  46. package/dist/apis/email-settings.cjs +6 -6
  47. package/dist/apis/email-settings.js +1 -1
  48. package/dist/apis/email-template.cjs +6 -6
  49. package/dist/apis/email-template.js +1 -1
  50. package/dist/apis/entity-mapping.cjs +6 -6
  51. package/dist/apis/entity-mapping.js +1 -1
  52. package/dist/apis/entity.cjs +6 -6
  53. package/dist/apis/entity.js +1 -1
  54. package/dist/apis/environments.cjs +6 -6
  55. package/dist/apis/environments.js +1 -1
  56. package/dist/apis/event-catalog.cjs +6 -6
  57. package/dist/apis/event-catalog.js +1 -1
  58. package/dist/apis/file.cjs +6 -6
  59. package/dist/apis/file.js +1 -1
  60. package/dist/apis/iban.cjs +6 -6
  61. package/dist/apis/iban.js +1 -1
  62. package/dist/apis/identity.cjs +6 -6
  63. package/dist/apis/identity.js +1 -1
  64. package/dist/apis/integration-toolkit.cjs +6 -6
  65. package/dist/apis/integration-toolkit.js +1 -1
  66. package/dist/apis/journey.cjs +8 -8
  67. package/dist/apis/journey.d.cts +2 -2
  68. package/dist/apis/journey.d.ts +2 -2
  69. package/dist/apis/journey.js +2 -2
  70. package/dist/apis/kanban.cjs +6 -6
  71. package/dist/apis/kanban.js +1 -1
  72. package/dist/apis/message.cjs +6 -6
  73. package/dist/apis/message.js +1 -1
  74. package/dist/apis/metering.cjs +6 -6
  75. package/dist/apis/metering.js +1 -1
  76. package/dist/apis/notes.cjs +6 -6
  77. package/dist/apis/notes.js +1 -1
  78. package/dist/apis/notification.cjs +6 -6
  79. package/dist/apis/notification.js +1 -1
  80. package/dist/apis/organization.cjs +6 -6
  81. package/dist/apis/organization.js +1 -1
  82. package/dist/apis/partner-directory.cjs +6 -6
  83. package/dist/apis/partner-directory.js +1 -1
  84. package/dist/apis/permissions.cjs +6 -6
  85. package/dist/apis/permissions.js +1 -1
  86. package/dist/apis/pricing-tier.cjs +6 -6
  87. package/dist/apis/pricing-tier.js +1 -1
  88. package/dist/apis/pricing.cjs +8 -8
  89. package/dist/apis/pricing.d.cts +2 -2
  90. package/dist/apis/pricing.d.ts +2 -2
  91. package/dist/apis/pricing.js +2 -2
  92. package/dist/apis/purpose.cjs +6 -6
  93. package/dist/apis/purpose.js +1 -1
  94. package/dist/apis/query.cjs +6 -6
  95. package/dist/apis/query.js +1 -1
  96. package/dist/apis/sandbox.cjs +6 -6
  97. package/dist/apis/sandbox.js +1 -1
  98. package/dist/apis/sharing.cjs +6 -6
  99. package/dist/apis/sharing.js +1 -1
  100. package/dist/apis/snapshot.cjs +6 -6
  101. package/dist/apis/snapshot.js +1 -1
  102. package/dist/apis/submission.cjs +6 -6
  103. package/dist/apis/submission.js +1 -1
  104. package/dist/apis/target.cjs +6 -6
  105. package/dist/apis/target.js +1 -1
  106. package/dist/apis/targeting.cjs +6 -6
  107. package/dist/apis/targeting.js +1 -1
  108. package/dist/apis/template-variables.cjs +6 -6
  109. package/dist/apis/template-variables.js +1 -1
  110. package/dist/apis/user.cjs +6 -6
  111. package/dist/apis/user.js +1 -1
  112. package/dist/apis/validation-rules.cjs +6 -6
  113. package/dist/apis/validation-rules.js +1 -1
  114. package/dist/apis/webhooks.cjs +6 -6
  115. package/dist/apis/webhooks.js +1 -1
  116. package/dist/apis/workflow-definition.cjs +6 -6
  117. package/dist/apis/workflow-definition.js +1 -1
  118. package/dist/apis/workflow.cjs +6 -6
  119. package/dist/apis/workflow.js +1 -1
  120. package/dist/chat-J2QDZT3T.cjs +7 -0
  121. package/dist/chat-S2AFYBHH.js +7 -0
  122. package/dist/chat.d-C-X6oeNS.d.cts +10535 -0
  123. package/dist/chat.d-C-X6oeNS.d.ts +10535 -0
  124. package/dist/chunk-BU5DVOFF.cjs +14 -0
  125. package/dist/{chunk-SJS5S6Z5.js → chunk-I3ZZES76.js} +1 -1
  126. package/dist/{chunk-X7UJYAG5.cjs → chunk-QYHNZLHS.cjs} +1 -1
  127. package/dist/chunk-QZ3FPCEP.js +14 -0
  128. package/dist/{chunk-KP2RRRO5.cjs → chunk-TF4SGSFP.cjs} +5 -5
  129. package/dist/{chunk-UORN27QE.js → chunk-VMA2UKDS.js} +5 -5
  130. package/dist/index.cjs +12 -12
  131. package/dist/index.d.cts +3 -3
  132. package/dist/index.d.ts +3 -3
  133. package/dist/index.js +3 -3
  134. package/dist/journey-JDIVUY7T.cjs +7 -0
  135. package/dist/journey-PBOMOJ5G.js +7 -0
  136. package/dist/{journey-runtime-S5I3K4NH.js → journey-runtime-AQH7EG4C.js} +1 -1
  137. package/dist/{journey-runtime-BVSPJTYH.cjs → journey-runtime-KZUPV4XH.cjs} +2 -2
  138. package/dist/{journey.d-Dj93v-Lw.d.cts → journey.d-CMtM6U3Y.d.cts} +404 -15
  139. package/dist/{journey.d-Dj93v-Lw.d.ts → journey.d-CMtM6U3Y.d.ts} +404 -15
  140. package/dist/pricing-FYBJTHHN.js +7 -0
  141. package/dist/pricing-M2FG4LZ6.cjs +7 -0
  142. package/dist/{pricing-runtime-NMRZO6J4.cjs → pricing-runtime-PEAN7F5S.cjs} +2 -2
  143. package/dist/{pricing-runtime-MJAIO4AY.js → pricing-runtime-UDUM3AXP.js} +1 -1
  144. package/dist/{pricing.d-B3_8FPCM.d.cts → pricing.d-BMV5QoZ7.d.cts} +5039 -1447
  145. package/dist/{pricing.d-B3_8FPCM.d.ts → pricing.d-BMV5QoZ7.d.ts} +5039 -1447
  146. package/docs/chat.md +158 -0
  147. package/docs/journey.md +234 -36
  148. package/docs/pricing.md +940 -126
  149. package/package.json +1 -1
  150. package/dist/chat-6E3CPZZV.js +0 -7
  151. package/dist/chat-EGLWHHF5.cjs +0 -7
  152. package/dist/chat.d-BGPN5RIE.d.cts +0 -5319
  153. package/dist/chat.d-BGPN5RIE.d.ts +0 -5319
  154. package/dist/chunk-7Q3JW72Y.js +0 -14
  155. package/dist/chunk-QLWDOKGE.cjs +0 -14
  156. package/dist/journey-IVIBYU5V.js +0 -7
  157. package/dist/journey-ZN46FFPM.cjs +0 -7
  158. package/dist/pricing-JAICFDO5.cjs +0 -7
  159. package/dist/pricing-MYZSVSGK.js +0 -7
package/docs/pricing.md CHANGED
@@ -35,6 +35,7 @@ const { data } = await pricingClient.$calculatePricingDetails(...)
35
35
  **Catalog API**
36
36
  - [`$searchCatalog`](#$searchcatalog)
37
37
  - [`$privateSearchCatalog`](#$privatesearchcatalog)
38
+ - [`$resolveCatalog`](#$resolvecatalog)
38
39
 
39
40
  **Promo Codes API**
40
41
  - [`$validatePromoCodes`](#$validatepromocodes)
@@ -141,9 +142,14 @@ const { data } = await pricingClient.$calculatePricingDetails(...)
141
142
  - [`BatchUpsertResultEntry`](#batchupsertresultentry)
142
143
  - [`BatchDeleteResultEntry`](#batchdeleteresultentry)
143
144
  - [`Error`](#error)
145
+ - [`RefusedLineItem`](#refusedlineitem)
144
146
  - [`ReportedError`](#reportederror)
145
147
  - [`ConditionalPricingError`](#conditionalpricingerror)
148
+ - [`CatalogReferenceErrorCode`](#catalogreferenceerrorcode)
149
+ - [`CatalogReferenceError`](#catalogreferenceerror)
150
+ - [`BaseProduct`](#baseproduct)
146
151
  - [`Product`](#product)
152
+ - [`HydratedProduct`](#hydratedproduct)
147
153
  - [`Opportunity`](#opportunity)
148
154
  - [`Order`](#order)
149
155
  - [`Price`](#price)
@@ -164,6 +170,15 @@ const { data } = await pricingClient.$calculatePricingDetails(...)
164
170
  - [`CatalogSearch`](#catalogsearch)
165
171
  - [`CatalogFieldsParam`](#catalogfieldsparam)
166
172
  - [`CatalogSearchResult`](#catalogsearchresult)
173
+ - [`ResolveCatalogRequest`](#resolvecatalogrequest)
174
+ - [`CatalogContext`](#catalogcontext)
175
+ - [`CatalogEntry`](#catalogentry)
176
+ - [`ResolveCatalogResult`](#resolvecatalogresult)
177
+ - [`CatalogPair`](#catalogpair)
178
+ - [`ResolvedPriceComponents`](#resolvedpricecomponents)
179
+ - [`CatalogWarning`](#catalogwarning)
180
+ - [`CatalogReference`](#catalogreference)
181
+ - [`CatalogReferenceMember`](#catalogreferencemember)
167
182
  - [`SearchProvidersParams`](#searchprovidersparams)
168
183
  - [`SearchStreetsParams`](#searchstreetsparams)
169
184
  - [`AvailabilityCheckParams`](#availabilitycheckparams)
@@ -401,6 +416,7 @@ const { data } = await client.createOrder(
401
416
  price_mappings: [ /* ... */ ],
402
417
  is_tax_inclusive: true,
403
418
  _product: { /* ... */ },
419
+ catalog_reference: { /* ... */ },
404
420
  type: 'one_time',
405
421
  billing_period: 'weekly',
406
422
  unit_amount: 0,
@@ -431,6 +447,7 @@ const { data } = await client.createOrder(
431
447
  price_mappings: [ /* ... */ ],
432
448
  is_tax_inclusive: true,
433
449
  _product: { /* ... */ },
450
+ catalog_reference: { /* ... */ },
434
451
  is_composite_price: true,
435
452
  item_components: [ /* ... */ ],
436
453
  selected_price_component_ids: ['string'],
@@ -634,6 +651,7 @@ const { data } = await client.putOrder(
634
651
  price_mappings: [ /* ... */ ],
635
652
  is_tax_inclusive: true,
636
653
  _product: { /* ... */ },
654
+ catalog_reference: { /* ... */ },
637
655
  type: 'one_time',
638
656
  billing_period: 'weekly',
639
657
  unit_amount: 0,
@@ -664,6 +682,7 @@ const { data } = await client.putOrder(
664
682
  price_mappings: [ /* ... */ ],
665
683
  is_tax_inclusive: true,
666
684
  _product: { /* ... */ },
685
+ catalog_reference: { /* ... */ },
667
686
  is_composite_price: true,
668
687
  item_components: [ /* ... */ ],
669
688
  selected_price_component_ids: ['string'],
@@ -1023,6 +1042,64 @@ const { data } = await client.$privateSearchCatalog(
1023
1042
 
1024
1043
  ---
1025
1044
 
1045
+ ### `$resolveCatalog`
1046
+
1047
+ Returns the products and prices a journey block shows as catalog pairs, each member resolved
1048
+ for its own entity type's context at `as_of`. A pair carries the product, one of its prices, the coupons th
1049
+
1050
+ `POST /v2/public/catalog`
1051
+
1052
+ ```ts
1053
+ const { data } = await client.$resolveCatalog(
1054
+ null,
1055
+ {
1056
+ entries: [
1057
+ {
1058
+ product_id: 'product-pv-2027',
1059
+ price_id: 'price-sp26d1yo'
1060
+ }
1061
+ ],
1062
+ context: {
1063
+ product: {
1064
+ postal_code: '46045',
1065
+ channel: 'direct'
1066
+ },
1067
+ price: {
1068
+ postal_code: '46045'
1069
+ }
1070
+ },
1071
+ as_of: '2026-12-20T10:15:00Z'
1072
+ },
1073
+ )
1074
+ ```
1075
+
1076
+ <details>
1077
+ <summary>Response</summary>
1078
+
1079
+ ```json
1080
+ {
1081
+ "pairs": [
1082
+ {
1083
+ "product": {},
1084
+ "price": {},
1085
+ "coupons": [],
1086
+ "catalog_reference": {}
1087
+ }
1088
+ ],
1089
+ "warnings": [
1090
+ {
1091
+ "code": "CATALOG_ENTRY_NOT_FOUND",
1092
+ "message": "string",
1093
+ "details": {}
1094
+ }
1095
+ ]
1096
+ }
1097
+ ```
1098
+
1099
+ </details>
1100
+
1101
+ ---
1102
+
1026
1103
  ### `$validatePromoCodes`
1027
1104
 
1028
1105
  Validate a list of promo codes against a list of coupons
@@ -3963,6 +4040,17 @@ type Error = {
3963
4040
  }
3964
4041
  ```
3965
4042
 
4043
+ ### `RefusedLineItem`
4044
+
4045
+ The line item a checkout refusal is about, named as the item names itself.
4046
+
4047
+ ```ts
4048
+ type RefusedLineItem = {
4049
+ price_id: string
4050
+ product_id?: string
4051
+ }
4052
+ ```
4053
+
3966
4054
  ### `ReportedError`
3967
4055
 
3968
4056
  The `error` field of an error response: the message, or — where the request failed
@@ -3990,12 +4078,40 @@ type ConditionalPricingError = {
3990
4078
  }
3991
4079
  ```
3992
4080
 
3993
- ### `Product`
4081
+ ### `CatalogReferenceErrorCode`
3994
4082
 
3995
- The product entity
4083
+ Why an order operation refused a catalog reference. Other refusals carry no `code`.
4084
+
4085
+ - `CATALOG_REFERENCE_MISSING` (400): a line item whose product or price is conditional carries no `catalog_reference`, or one with no variant for that member
4086
+ - `CATALOG_REFERENCE_SIGNATURE_INVALID` (400): a `catalog
3996
4087
 
3997
4088
  ```ts
3998
- type Product = {
4089
+ type CatalogReferenceErrorCode = "CATALOG_REFERENCE_MISSING" | "CATALOG_REFERENCE_SIGNATURE_INVALID" | "CATALOG_REFERENCE_UNRESOLVABLE"
4090
+ ```
4091
+
4092
+ ### `CatalogReferenceError`
4093
+
4094
+ An error from an order operation that prices line items. A catalog-reference refusal carries
4095
+ `code` and `details`, typed per code. Every other refusal carries neither.
4096
+
4097
+
4098
+ ```ts
4099
+ type CatalogReferenceError = {
4100
+ message: string
4101
+ status?: number
4102
+ cause?: string
4103
+ error?: string | Record<string, unknown>[]
4104
+ }
4105
+ ```
4106
+
4107
+ ### `BaseProduct`
4108
+
4109
+ The product's own attributes — everything but the two relations whose shape depends on
4110
+ whether the product was hydrated, which `Product` and `HydratedProduct` add.
4111
+
4112
+
4113
+ ```ts
4114
+ type BaseProduct = {
3999
4115
  description?: string
4000
4116
  code?: string
4001
4117
  type?: "product" | "service"
@@ -4005,12 +4121,91 @@ type Product = {
4005
4121
  _tags?: string[]
4006
4122
  feature?: string
4007
4123
  }>
4008
- cross_sellable_products?: {
4124
+ product_images?: {
4009
4125
  $relation?: Array<{
4010
4126
  entity_id?: { ... }
4011
4127
  _tags?: { ... }
4012
4128
  }>
4013
- }
4129
+ } | Array<{
4130
+ _id: string
4131
+ filename: string
4132
+ mime_type: string
4133
+ versions: Array<{
4134
+ s3ref: { ... }
4135
+ }>
4136
+ _schema: string
4137
+ _org: string
4138
+ _created_at: string // date-time
4139
+ _updated_at: string // date-time
4140
+ _title?: string
4141
+ $relation?: {
4142
+ entity_id?: { ... }
4143
+ _tags?: { ... }
4144
+ }
4145
+ }>
4146
+ product_downloads?: {
4147
+ $relation?: Array<{
4148
+ entity_id?: { ... }
4149
+ _tags?: { ... }
4150
+ }>
4151
+ } | Array<{
4152
+ _id: string
4153
+ filename: string
4154
+ mime_type: string
4155
+ versions: Array<{
4156
+ s3ref: { ... }
4157
+ }>
4158
+ _schema: string
4159
+ _org: string
4160
+ _created_at: string // date-time
4161
+ _updated_at: string // date-time
4162
+ _title?: string
4163
+ $relation?: {
4164
+ entity_id?: { ... }
4165
+ _tags?: { ... }
4166
+ }
4167
+ }>
4168
+ is_conditional?: boolean
4169
+ _availability_files?: Array<{
4170
+ _id: string
4171
+ filename: string
4172
+ mime_type: string
4173
+ versions: Array<{
4174
+ s3ref: { ... }
4175
+ }>
4176
+ _schema: string
4177
+ _org: string
4178
+ _created_at: string // date-time
4179
+ _updated_at: string // date-time
4180
+ _title?: string
4181
+ $relation?: {
4182
+ entity_id?: { ... }
4183
+ _tags?: { ... }
4184
+ }
4185
+ }>
4186
+ _id?: string
4187
+ _title?: string
4188
+ _org_id?: string
4189
+ _created_at?: string
4190
+ _updated_at?: string
4191
+ }
4192
+ ```
4193
+
4194
+ ### `Product`
4195
+
4196
+ The product entity, its relations as stored.
4197
+
4198
+ ```ts
4199
+ type Product = {
4200
+ description?: string
4201
+ code?: string
4202
+ type?: "product" | "service"
4203
+ name?: string
4204
+ categories?: string[]
4205
+ feature?: Array<{
4206
+ _tags?: string[]
4207
+ feature?: string
4208
+ }>
4014
4209
  product_images?: {
4015
4210
  $relation?: Array<{
4016
4211
  entity_id?: { ... }
@@ -4055,12 +4250,93 @@ type Product = {
4055
4250
  _tags?: { ... }
4056
4251
  }
4057
4252
  }>
4058
- price_options?: {
4253
+ is_conditional?: boolean
4254
+ _availability_files?: Array<{
4255
+ _id: string
4256
+ filename: string
4257
+ mime_type: string
4258
+ versions: Array<{
4259
+ s3ref: { ... }
4260
+ }>
4261
+ _schema: string
4262
+ _org: string
4263
+ _created_at: string // date-time
4264
+ _updated_at: string // date-time
4265
+ _title?: string
4266
+ $relation?: {
4267
+ entity_id?: { ... }
4268
+ _tags?: { ... }
4269
+ }
4270
+ }>
4271
+ _id?: string
4272
+ _title?: string
4273
+ _org_id?: string
4274
+ _created_at?: string
4275
+ _updated_at?: string
4276
+ }
4277
+ ```
4278
+
4279
+ ### `HydratedProduct`
4280
+
4281
+ The product entity hydrated one level deep, as the v2 public catalog serves it: each
4282
+ relation holds the entities it referenced, sanitised, with their own relations as stored.
4283
+
4284
+
4285
+ ```ts
4286
+ type HydratedProduct = {
4287
+ description?: string
4288
+ code?: string
4289
+ type?: "product" | "service"
4290
+ name?: string
4291
+ categories?: string[]
4292
+ feature?: Array<{
4293
+ _tags?: string[]
4294
+ feature?: string
4295
+ }>
4296
+ product_images?: {
4059
4297
  $relation?: Array<{
4060
4298
  entity_id?: { ... }
4061
4299
  _tags?: { ... }
4062
4300
  }>
4063
- }
4301
+ } | Array<{
4302
+ _id: string
4303
+ filename: string
4304
+ mime_type: string
4305
+ versions: Array<{
4306
+ s3ref: { ... }
4307
+ }>
4308
+ _schema: string
4309
+ _org: string
4310
+ _created_at: string // date-time
4311
+ _updated_at: string // date-time
4312
+ _title?: string
4313
+ $relation?: {
4314
+ entity_id?: { ... }
4315
+ _tags?: { ... }
4316
+ }
4317
+ }>
4318
+ product_downloads?: {
4319
+ $relation?: Array<{
4320
+ entity_id?: { ... }
4321
+ _tags?: { ... }
4322
+ }>
4323
+ } | Array<{
4324
+ _id: string
4325
+ filename: string
4326
+ mime_type: string
4327
+ versions: Array<{
4328
+ s3ref: { ... }
4329
+ }>
4330
+ _schema: string
4331
+ _org: string
4332
+ _created_at: string // date-time
4333
+ _updated_at: string // date-time
4334
+ _title?: string
4335
+ $relation?: {
4336
+ entity_id?: { ... }
4337
+ _tags?: { ... }
4338
+ }
4339
+ }>
4064
4340
  is_conditional?: boolean
4065
4341
  _availability_files?: Array<{
4066
4342
  _id: string
@@ -4251,10 +4527,8 @@ type Order = {
4251
4527
  name?: { ... }
4252
4528
  categories?: { ... }
4253
4529
  feature?: { ... }
4254
- cross_sellable_products?: { ... }
4255
4530
  product_images?: { ... }
4256
4531
  product_downloads?: { ... }
4257
- price_options?: { ... }
4258
4532
  is_conditional?: { ... }
4259
4533
  _availability_files?: { ... }
4260
4534
  _id?: { ... }
@@ -4263,9 +4537,11 @@ type Order = {
4263
4537
  _created_at?: { ... }
4264
4538
  _updated_at?: { ... }
4265
4539
  }
4266
- } | {
4267
- metadata?: Array<{
4268
- key?: { ... }
4540
+ catalog_reference?: {
4541
+ product: { ... }
4542
+ price: { ... }
4543
+ price_components?: { ... }
4544
+ coupons?: { ... }
4269
4545
  // ...
4270
4546
  }
4271
4547
  ```
@@ -4614,9 +4890,6 @@ type CatalogSearchResult = {
4614
4890
  _tags?: { ... }
4615
4891
  feature?: { ... }
4616
4892
  }>
4617
- cross_sellable_products?: {
4618
- $relation?: { ... }
4619
- }
4620
4893
  product_images?: {
4621
4894
  $relation?: { ... }
4622
4895
  } | Array<{
@@ -4645,9 +4918,6 @@ type CatalogSearchResult = {
4645
4918
  _title?: { ... }
4646
4919
  $relation?: { ... }
4647
4920
  }>
4648
- price_options?: {
4649
- $relation?: { ... }
4650
- }
4651
4921
  is_conditional?: boolean
4652
4922
  _availability_files?: Array<{
4653
4923
  _id: { ... }
@@ -4699,28 +4969,483 @@ type CatalogSearchResult = {
4699
4969
  }
4700
4970
  ```
4701
4971
 
4702
- ### `SearchProvidersParams`
4972
+ ### `ResolveCatalogRequest`
4973
+
4974
+ The entries of one journey block, and the situation to resolve them for. Every member of
4975
+ every pair is resolved for its entity type's context at the same `as_of`.
4703
4976
 
4704
- A search providers payload
4705
4977
 
4706
4978
  ```ts
4707
- type SearchProvidersParams = {
4708
- type: "power" | "gas"
4709
- postal_code: string
4710
- city?: string
4711
- street?: string
4712
- street_number?: string
4979
+ type ResolveCatalogRequest = {
4980
+ entries: Array<{
4981
+ product_id: string
4982
+ price_id?: string
4983
+ }>
4984
+ context: {
4985
+ product?: Record<string, unknown>
4986
+ price?: Record<string, unknown>
4987
+ coupon?: Record<string, unknown>
4988
+ }
4989
+ as_of?: string
4713
4990
  }
4714
4991
  ```
4715
4992
 
4716
- ### `SearchStreetsParams`
4993
+ ### `CatalogContext`
4717
4994
 
4718
- A search streets payload
4995
+ One context per entity type, each the authenticated resolve's context and checked against
4996
+ that type's schema alone. A product resolves against `product`, a price and each of a
4997
+ composite's components against `price`, and a coupon against `coupon`. A type left out
4998
+ resolves against an empty context, wh
4719
4999
 
4720
5000
  ```ts
4721
- type SearchStreetsParams = {
4722
- postal_code: string
4723
- city: string
5001
+ type CatalogContext = {
5002
+ product?: Record<string, unknown>
5003
+ price?: Record<string, unknown>
5004
+ coupon?: Record<string, unknown>
5005
+ }
5006
+ ```
5007
+
5008
+ ### `CatalogEntry`
5009
+
5010
+ A product and, optionally, one of its prices. With `price_id` the entry is the author's
5011
+ pair, served as named; without it the entry is served from the resolved product's
5012
+ `price_options`, one pair per price.
5013
+
5014
+
5015
+ ```ts
5016
+ type CatalogEntry = {
5017
+ product_id: string
5018
+ price_id?: string
5019
+ }
5020
+ ```
5021
+
5022
+ ### `ResolveCatalogResult`
5023
+
5024
+ ```ts
5025
+ type ResolveCatalogResult = {
5026
+ pairs: Array<{
5027
+ product: {
5028
+ cross_sellable_products?: { ... }
5029
+ price_options?: { ... }
5030
+ _id: { ... }
5031
+ _variant_id: { ... }
5032
+ _version_valid_from: { ... }
5033
+ _conditions: { ... }
5034
+ _inert_overrides: { ... }
5035
+ } | {
5036
+ description?: { ... }
5037
+ code?: { ... }
5038
+ type?: { ... }
5039
+ name?: { ... }
5040
+ categories?: { ... }
5041
+ feature?: { ... }
5042
+ product_images?: { ... }
5043
+ product_downloads?: { ... }
5044
+ is_conditional?: { ... }
5045
+ _availability_files?: { ... }
5046
+ _id?: { ... }
5047
+ _title?: { ... }
5048
+ _org_id?: { ... }
5049
+ _created_at?: { ... }
5050
+ _updated_at?: { ... }
5051
+ }
5052
+ price: {
5053
+ active?: { ... }
5054
+ is_composite_price?: { ... }
5055
+ is_conditional?: { ... }
5056
+ pricing_model: { ... }
5057
+ tiers?: { ... }
5058
+ description?: { ... }
5059
+ long_description?: { ... }
5060
+ sales_tax?: { ... }
5061
+ tax?: { ... }
5062
+ is_tax_inclusive?: { ... }
5063
+ type?: { ... }
5064
+ billing_period?: { ... }
5065
+ unit_amount?: { ... }
5066
+ unit_amount_decimal?: { ... }
5067
+ unit_amount_currency?: { ... }
5068
+ price_display_in_journeys?: { ... }
5069
+ variable_price?: { ... }
5070
+ unit?: { ... }
5071
+ get_ag?: { ... }
5072
+ dynamic_tariff?: { ... }
5073
+ _created_at?: { ... }
5074
+ _id: { ... }
5075
+ _title?: { ... }
5076
+ _updated_at?: { ... }
5077
+ _org_id?: { ... }
5078
+ _tags?: { ... }
5079
+ _variant_id: { ... }
5080
+ _version_valid_from: { ... }
5081
+ _conditions: { ... }
5082
+ _inert_overrides: { ... }
5083
+ } | {
5084
+ price_components?: { ... }
5085
+ _id: { ... }
5086
+ _variant_id: { ... }
5087
+ _version_valid_from: { ... }
5088
+ _conditions: { ... }
5089
+ _inert_overrides: { ... }
5090
+ } | {
5091
+ billing_duration_amount?: { ... }
5092
+ billing_duration_unit?: { ... }
5093
+ notice_time_amount?: { ... }
5094
+ notice_time_unit?: { ... }
5095
+ termination_time_amount?: { ... }
5096
+ termination_time_unit?: { ... }
5097
+ renewal_duration_amount?: { ... }
5098
+ renewal_duration_unit?: { ... }
5099
+ } | {
5100
+ price_components?: { ... }
5101
+ }
5102
+ coupons: Array<{
5103
+ _id: { ... }
5104
+ _title: { ... }
5105
+ _org: { ... }
5106
+ _schema: { ... }
5107
+ _tags?: { ... }
5108
+ _created_at: { ... }
5109
+ _updated_at: { ... }
5110
+ name: { ... }
5111
+ description?: { ... }
5112
+ type: { ... }
5113
+ category: { ... }
5114
+ percentage_value?: { ... }
5115
+ fixed_value?: { ... }
5116
+ fixed_value_decimal?: { ... }
5117
+ fixed_value_currency?: { ... }
5118
+ cashback_period?: { ... }
5119
+ active?: { ... }
5120
+ is_conditional?: { ... }
5121
+ requires_promo_code?: { ... }
5122
+ }>
5123
+ catalog_reference: {
5124
+ product: { ... }
5125
+ // ...
5126
+ }
5127
+ ```
5128
+
5129
+ ### `CatalogPair`
5130
+
5131
+ A product and one of its prices, resolved for the request's `context` at its `as_of`, with
5132
+ the coupons that apply and the reference checkout prices from.
5133
+
5134
+
5135
+ ```ts
5136
+ type CatalogPair = {
5137
+ product: {
5138
+ cross_sellable_products?: Array<{
5139
+ description?: { ... }
5140
+ code?: { ... }
5141
+ type?: { ... }
5142
+ name?: { ... }
5143
+ categories?: { ... }
5144
+ feature?: { ... }
5145
+ product_images?: { ... }
5146
+ product_downloads?: { ... }
5147
+ is_conditional?: { ... }
5148
+ _availability_files?: { ... }
5149
+ _id?: { ... }
5150
+ _title?: { ... }
5151
+ _org_id?: { ... }
5152
+ _created_at?: { ... }
5153
+ _updated_at?: { ... }
5154
+ }>
5155
+ price_options?: Array<{
5156
+ billing_duration_amount?: { ... }
5157
+ billing_duration_unit?: { ... }
5158
+ notice_time_amount?: { ... }
5159
+ notice_time_unit?: { ... }
5160
+ termination_time_amount?: { ... }
5161
+ termination_time_unit?: { ... }
5162
+ renewal_duration_amount?: { ... }
5163
+ renewal_duration_unit?: { ... }
5164
+ } | {
5165
+ billing_duration_amount?: { ... }
5166
+ billing_duration_unit?: { ... }
5167
+ notice_time_amount?: { ... }
5168
+ notice_time_unit?: { ... }
5169
+ termination_time_amount?: { ... }
5170
+ termination_time_unit?: { ... }
5171
+ renewal_duration_amount?: { ... }
5172
+ renewal_duration_unit?: { ... }
5173
+ } | {
5174
+ billing_duration_amount?: { ... }
5175
+ billing_duration_unit?: { ... }
5176
+ notice_time_amount?: { ... }
5177
+ notice_time_unit?: { ... }
5178
+ termination_time_amount?: { ... }
5179
+ termination_time_unit?: { ... }
5180
+ renewal_duration_amount?: { ... }
5181
+ renewal_duration_unit?: { ... }
5182
+ }>
5183
+ _id: string
5184
+ _variant_id: string
5185
+ _version_valid_from: string
5186
+ _conditions: {
5187
+ default: { ... }
5188
+ }
5189
+ _inert_overrides: Array<{
5190
+ attribute: { ... }
5191
+ reason: { ... }
5192
+ }>
5193
+ } | {
5194
+ description?: string
5195
+ code?: string
5196
+ type?: "product" | "service"
5197
+ name?: string
5198
+ categories?: string[]
5199
+ feature?: Array<{
5200
+ _tags?: { ... }
5201
+ feature?: { ... }
5202
+ }>
5203
+ product_images?: {
5204
+ $relation?: { ... }
5205
+ } | Array<{
5206
+ _id: { ... }
5207
+ filename: { ... }
5208
+ mime_type: { ... }
5209
+ versions: { ... }
5210
+ _schema: { ... }
5211
+ _org: { ... }
5212
+ _created_at: { ... }
5213
+ _updated_at: { ... }
5214
+ _title?: { ... }
5215
+ $relation?: { ... }
5216
+ }>
5217
+ product_downloads?: {
5218
+ $relation?: { ... }
5219
+ } | Array<{
5220
+ _id: { ... }
5221
+ filename: { ... }
5222
+ mime_type: { ... }
5223
+ versions: { ... }
5224
+ _schema: { ... }
5225
+ _org: { ... }
5226
+ _created_at: { ... }
5227
+ _updated_at: { ... }
5228
+ _title?: { ... }
5229
+ $relation?: { ... }
5230
+ }>
5231
+ is_conditional?: boolean
5232
+ _availability_files?: Array<{
5233
+ _id: { ... }
5234
+ filename: { ... }
5235
+ mime_type: { ... }
5236
+ // ...
5237
+ }
5238
+ ```
5239
+
5240
+ ### `ResolvedPriceComponents`
5241
+
5242
+ The components of a composite price as the v2 catalog serves them: hydrated in place, and
5243
+ a component that is itself conditional resolved against the same context, carrying the
5244
+ discriminators a resolved payload carries. A conditional component with no variant in
5245
+ effect — nothing matches and there is
5246
+
5247
+ ```ts
5248
+ type ResolvedPriceComponents = {
5249
+ price_components?: Array<{
5250
+ active?: boolean
5251
+ is_composite_price?: false
5252
+ is_conditional?: boolean
5253
+ pricing_model: "per_unit" | "tiered_graduated" | "tiered_volume" | "tiered_flatfee" | "dynamic_tariff" | "external_getag"
5254
+ tiers?: Array<{
5255
+ up_to?: { ... }
5256
+ flat_fee_amount?: { ... }
5257
+ flat_fee_amount_decimal?: { ... }
5258
+ unit_amount?: { ... }
5259
+ unit_amount_decimal?: { ... }
5260
+ display_mode?: { ... }
5261
+ }>
5262
+ description?: string
5263
+ long_description?: string
5264
+ sales_tax?: "nontaxable" | "reduced" | "standard"
5265
+ tax?: {
5266
+ $relation?: { ... }
5267
+ } | Array<{
5268
+ _id: { ... }
5269
+ _title: { ... }
5270
+ _org: { ... }
5271
+ _schema: { ... }
5272
+ _tags?: { ... }
5273
+ _created_at: { ... }
5274
+ _updated_at: { ... }
5275
+ type: { ... }
5276
+ description?: { ... }
5277
+ rate: { ... }
5278
+ active?: { ... }
5279
+ region?: { ... }
5280
+ region_label?: { ... }
5281
+ }>
5282
+ is_tax_inclusive?: boolean
5283
+ type?: "one_time" | "recurring"
5284
+ billing_period?: "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly"
5285
+ unit_amount?: number
5286
+ unit_amount_decimal?: string
5287
+ unit_amount_currency?: string
5288
+ price_display_in_journeys?: "show_price" | "show_as_starting_price" | "show_as_on_request" | "estimated_price"
5289
+ variable_price?: boolean
5290
+ unit?: "kw" | "kwh" | "m" | "m2" | "l" | "cubic-meter" | "cubic-meter-h" | "ls" | "a" | "kva" | "w" | "wp" | "kwp" | string
5291
+ get_ag?: {
5292
+ category: { ... }
5293
+ markup_pricing_model?: { ... }
5294
+ type?: { ... }
5295
+ tariff_type?: { ... }
5296
+ consumption_type?: { ... }
5297
+ concession_type?: { ... }
5298
+ meter_type?: { ... }
5299
+ markup_tiers?: { ... }
5300
+ markup_amount: { ... }
5301
+ markup_amount_decimal: { ... }
5302
+ markup_amount_net?: { ... }
5303
+ markup_amount_net_decimal?: { ... }
5304
+ markup_amount_gross?: { ... }
5305
+ markup_amount_gross_decimal?: { ... }
5306
+ markup_total_amount_net?: { ... }
5307
+ markup_total_amount_net_decimal?: { ... }
5308
+ markup_total_amount_gross?: { ... }
5309
+ markup_total_amount_gross_decimal?: { ... }
5310
+ additional_markups_enabled?: { ... }
5311
+ additional_markups?: { ... }
5312
+ unit_amount_gross: { ... }
5313
+ unit_amount_gross_decimal?: { ... }
5314
+ unit_amount_net: { ... }
5315
+ unit_amount_net_decimal?: { ... }
5316
+ }
5317
+ dynamic_tariff?: {
5318
+ mode: { ... }
5319
+ interval?: { ... }
5320
+ average_price: { ... }
5321
+ average_price_decimal: { ... }
5322
+ markup_amount?: { ... }
5323
+ markup_amount_decimal?: { ... }
5324
+ markup_amount_net?: { ... }
5325
+ markup_amount_net_decimal?: { ... }
5326
+ markup_amount_gross?: { ... }
5327
+ markup_amount_gross_decimal?: { ... }
5328
+ unit_amount_net?: { ... }
5329
+ unit_amount_net_decimal?: { ... }
5330
+ unit_amount_gross?: { ... }
5331
+ unit_amount_gross_decimal?: { ... }
5332
+ }
5333
+ _created_at?: string
5334
+ _id: string
5335
+ _title?: string
5336
+ _updated_at?: string
5337
+ _org_id?: string
5338
+ _tags?: string[]
5339
+ _variant_id: string
5340
+ _version_valid_from: string
5341
+ _conditions: {
5342
+ default: { ... }
5343
+ }
5344
+ _inert_overrides: Array<{
5345
+ attribute: { ... }
5346
+ reason: { ... }
5347
+ }>
5348
+ // ...
5349
+ }
5350
+ ```
5351
+
5352
+ ### `CatalogWarning`
5353
+
5354
+ An entry the v2 catalog could not answer, and why. `details` is typed per `code`: narrow on
5355
+ `code` and the object under it declares exactly the fields that code sends.
5356
+
5357
+
5358
+ ```ts
5359
+ type CatalogWarning = {
5360
+ code: "CATALOG_ENTRY_NOT_FOUND"
5361
+ message: string
5362
+ details: {
5363
+ product_id: string
5364
+ price_id?: string
5365
+ missing: "product" | "price"
5366
+ }
5367
+ } | {
5368
+ code: "CATALOG_ENTRY_TYPE_MISMATCH"
5369
+ message: string
5370
+ details: {
5371
+ product_id: string
5372
+ price_id?: string
5373
+ mismatched: "product" | "price"
5374
+ actual_schema: string
5375
+ }
5376
+ }
5377
+ ```
5378
+
5379
+ ### `CatalogReference`
5380
+
5381
+ Names the variant each member of a catalog pair was resolved from, and the instant `as_of`
5382
+ they were resolved at. Checkout prices each conditional member from that variant, using the
5383
+ version in effect at `as_of`.
5384
+
5385
+ The catalog signs every reference, classic pair or not: `_meta` signs the rest of the
5386
+
5387
+
5388
+ ```ts
5389
+ type CatalogReference = {
5390
+ product: {
5391
+ id: string
5392
+ variant?: string
5393
+ }
5394
+ price: {
5395
+ id: string
5396
+ variant?: string
5397
+ }
5398
+ price_components?: Array<{
5399
+ id: string
5400
+ variant?: string
5401
+ }>
5402
+ coupons?: Array<{
5403
+ id: string
5404
+ variant?: string
5405
+ }>
5406
+ as_of: string
5407
+ _meta?: {
5408
+ signature: string
5409
+ timestamp: number
5410
+ }
5411
+ }
5412
+ ```
5413
+
5414
+ ### `CatalogReferenceMember`
5415
+
5416
+ One member of a catalog reference: the entity, and the variant that produced it. `variant`
5417
+ is absent for a classic entity.
5418
+
5419
+
5420
+ ```ts
5421
+ type CatalogReferenceMember = {
5422
+ id: string
5423
+ variant?: string
5424
+ }
5425
+ ```
5426
+
5427
+ ### `SearchProvidersParams`
5428
+
5429
+ A search providers payload
5430
+
5431
+ ```ts
5432
+ type SearchProvidersParams = {
5433
+ type: "power" | "gas"
5434
+ postal_code: string
5435
+ city?: string
5436
+ street?: string
5437
+ street_number?: string
5438
+ }
5439
+ ```
5440
+
5441
+ ### `SearchStreetsParams`
5442
+
5443
+ A search streets payload
5444
+
5445
+ ```ts
5446
+ type SearchStreetsParams = {
5447
+ postal_code: string
5448
+ city: string
4724
5449
  }
4725
5450
  ```
4726
5451
 
@@ -5731,6 +6456,7 @@ type CheckoutCartResult = {
5731
6456
  price_mappings?: { ... }
5732
6457
  is_tax_inclusive?: { ... }
5733
6458
  _product?: { ... }
6459
+ catalog_reference?: { ... }
5734
6460
  } | {
5735
6461
  metadata?: { ... }
5736
6462
  quantity?: { ... }
@@ -5742,6 +6468,7 @@ type CheckoutCartResult = {
5742
6468
  price_mappings?: { ... }
5743
6469
  is_tax_inclusive?: { ... }
5744
6470
  _product?: { ... }
6471
+ catalog_reference?: { ... }
5745
6472
  }>
5746
6473
  products?: {
5747
6474
  $relation?: { ... }
@@ -5761,8 +6488,6 @@ type CheckoutCartResult = {
5761
6488
  }
5762
6489
  _org_id?: string
5763
6490
  _id?: string
5764
- _created_at?: string
5765
- _updated_at?: string
5766
6491
  // ...
5767
6492
  }
5768
6493
  ```
@@ -5822,9 +6547,6 @@ type BasePriceItemCommon = {
5822
6547
  _tags?: { ... }
5823
6548
  feature?: { ... }
5824
6549
  }>
5825
- cross_sellable_products?: {
5826
- $relation?: { ... }
5827
- }
5828
6550
  product_images?: {
5829
6551
  $relation?: { ... }
5830
6552
  } | Array<{
@@ -5853,9 +6575,6 @@ type BasePriceItemCommon = {
5853
6575
  _title?: { ... }
5854
6576
  $relation?: { ... }
5855
6577
  }>
5856
- price_options?: {
5857
- $relation?: { ... }
5858
- }
5859
6578
  is_conditional?: boolean
5860
6579
  _availability_files?: Array<{
5861
6580
  _id: { ... }
@@ -5875,6 +6594,29 @@ type BasePriceItemCommon = {
5875
6594
  _created_at?: string
5876
6595
  _updated_at?: string
5877
6596
  }
6597
+ catalog_reference?: {
6598
+ product: {
6599
+ id: { ... }
6600
+ variant?: { ... }
6601
+ }
6602
+ price: {
6603
+ id: { ... }
6604
+ variant?: { ... }
6605
+ }
6606
+ price_components?: Array<{
6607
+ id: { ... }
6608
+ variant?: { ... }
6609
+ }>
6610
+ coupons?: Array<{
6611
+ id: { ... }
6612
+ variant?: { ... }
6613
+ }>
6614
+ as_of: string
6615
+ _meta?: {
6616
+ signature: { ... }
6617
+ timestamp: { ... }
6618
+ }
6619
+ }
5878
6620
  }
5879
6621
  ```
5880
6622
 
@@ -5965,6 +6707,7 @@ type PriceItemDtoUnion = {
5965
6707
  price_mappings?: { ... }
5966
6708
  is_tax_inclusive?: { ... }
5967
6709
  _product?: { ... }
6710
+ catalog_reference?: { ... }
5968
6711
  } | {
5969
6712
  metadata?: { ... }
5970
6713
  quantity?: { ... }
@@ -5976,11 +6719,10 @@ type PriceItemDtoUnion = {
5976
6719
  price_mappings?: { ... }
5977
6720
  is_tax_inclusive?: { ... }
5978
6721
  _product?: { ... }
6722
+ catalog_reference?: { ... }
5979
6723
  }>
5980
6724
  amount_subtotal?: number
5981
6725
  amount_total?: number
5982
- unit_amount_gross?: number
5983
- unit_amount_net?: number
5984
6726
  // ...
5985
6727
  }
5986
6728
  ```
@@ -6074,6 +6816,7 @@ type PriceItemsDto = Array<{
6074
6816
  price_mappings?: { ... }
6075
6817
  is_tax_inclusive?: { ... }
6076
6818
  _product?: { ... }
6819
+ catalog_reference?: { ... }
6077
6820
  } | {
6078
6821
  metadata?: { ... }
6079
6822
  quantity?: { ... }
@@ -6085,11 +6828,10 @@ type PriceItemsDto = Array<{
6085
6828
  price_mappings?: { ... }
6086
6829
  is_tax_inclusive?: { ... }
6087
6830
  _product?: { ... }
6831
+ catalog_reference?: { ... }
6088
6832
  }>
6089
6833
  amount_subtotal?: number
6090
6834
  amount_total?: number
6091
- unit_amount_gross?: number
6092
- unit_amount_net?: number
6093
6835
  // ...
6094
6836
  }
6095
6837
  ```
@@ -6128,9 +6870,6 @@ type BasePriceItemDto = {
6128
6870
  _tags?: { ... }
6129
6871
  feature?: { ... }
6130
6872
  }>
6131
- cross_sellable_products?: {
6132
- $relation?: { ... }
6133
- }
6134
6873
  product_images?: {
6135
6874
  $relation?: { ... }
6136
6875
  } | Array<{
@@ -6159,9 +6898,6 @@ type BasePriceItemDto = {
6159
6898
  _title?: { ... }
6160
6899
  $relation?: { ... }
6161
6900
  }>
6162
- price_options?: {
6163
- $relation?: { ... }
6164
- }
6165
6901
  is_conditional?: boolean
6166
6902
  _availability_files?: Array<{
6167
6903
  _id: { ... }
@@ -6181,6 +6917,29 @@ type BasePriceItemDto = {
6181
6917
  _created_at?: string
6182
6918
  _updated_at?: string
6183
6919
  }
6920
+ catalog_reference?: {
6921
+ product: {
6922
+ id: { ... }
6923
+ variant?: { ... }
6924
+ }
6925
+ price: {
6926
+ id: { ... }
6927
+ variant?: { ... }
6928
+ }
6929
+ price_components?: Array<{
6930
+ id: { ... }
6931
+ variant?: { ... }
6932
+ }>
6933
+ coupons?: Array<{
6934
+ id: { ... }
6935
+ variant?: { ... }
6936
+ }>
6937
+ as_of: string
6938
+ _meta?: {
6939
+ signature: { ... }
6940
+ timestamp: { ... }
6941
+ }
6942
+ }
6184
6943
  }
6185
6944
  ```
6186
6945
 
@@ -6273,6 +7032,7 @@ type PriceItemDto = {
6273
7032
  price_mappings?: { ... }
6274
7033
  is_tax_inclusive?: { ... }
6275
7034
  _product?: { ... }
7035
+ catalog_reference?: { ... }
6276
7036
  } | {
6277
7037
  metadata?: { ... }
6278
7038
  quantity?: { ... }
@@ -6284,11 +7044,10 @@ type PriceItemDto = {
6284
7044
  price_mappings?: { ... }
6285
7045
  is_tax_inclusive?: { ... }
6286
7046
  _product?: { ... }
7047
+ catalog_reference?: { ... }
6287
7048
  }>
6288
7049
  amount_subtotal?: number
6289
7050
  amount_total?: number
6290
- unit_amount_gross?: number
6291
- unit_amount_net?: number
6292
7051
  // ...
6293
7052
  }
6294
7053
  ```
@@ -6382,6 +7141,7 @@ type CompositePriceItemDto = {
6382
7141
  price_mappings?: { ... }
6383
7142
  is_tax_inclusive?: { ... }
6384
7143
  _product?: { ... }
7144
+ catalog_reference?: { ... }
6385
7145
  } | {
6386
7146
  metadata?: { ... }
6387
7147
  quantity?: { ... }
@@ -6393,11 +7153,10 @@ type CompositePriceItemDto = {
6393
7153
  price_mappings?: { ... }
6394
7154
  is_tax_inclusive?: { ... }
6395
7155
  _product?: { ... }
7156
+ catalog_reference?: { ... }
6396
7157
  }>
6397
7158
  amount_subtotal?: number
6398
7159
  amount_total?: number
6399
- unit_amount_gross?: number
6400
- unit_amount_net?: number
6401
7160
  // ...
6402
7161
  }
6403
7162
  ```
@@ -6642,9 +7401,6 @@ type PriceItems = Array<{
6642
7401
  _tags?: { ... }
6643
7402
  feature?: { ... }
6644
7403
  }>
6645
- cross_sellable_products?: {
6646
- $relation?: { ... }
6647
- }
6648
7404
  product_images?: {
6649
7405
  $relation?: { ... }
6650
7406
  } | Array<{
@@ -6673,9 +7429,6 @@ type PriceItems = Array<{
6673
7429
  _title?: { ... }
6674
7430
  $relation?: { ... }
6675
7431
  }>
6676
- price_options?: {
6677
- $relation?: { ... }
6678
- }
6679
7432
  is_conditional?: boolean
6680
7433
  _availability_files?: Array<{
6681
7434
  _id: { ... }
@@ -6695,24 +7448,30 @@ type PriceItems = Array<{
6695
7448
  _created_at?: string
6696
7449
  _updated_at?: string
6697
7450
  }
7451
+ catalog_reference?: {
7452
+ product: {
7453
+ id: { ... }
7454
+ variant?: { ... }
7455
+ }
7456
+ price: {
7457
+ id: { ... }
7458
+ variant?: { ... }
7459
+ }
7460
+ price_components?: Array<{
7461
+ id: { ... }
7462
+ variant?: { ... }
7463
+ }>
7464
+ coupons?: Array<{
7465
+ id: { ... }
7466
+ variant?: { ... }
7467
+ }>
7468
+ as_of: string
7469
+ _meta?: {
7470
+ signature: { ... }
7471
+ timestamp: { ... }
7472
+ }
7473
+ }
6698
7474
  } | {
6699
- metadata?: Array<{
6700
- key?: string
6701
- value?: string
6702
- }>
6703
- quantity?: number
6704
- product_id?: string
6705
- price_id?: string
6706
- description?: string
6707
- product_description?: string
6708
- product_name?: string
6709
- price_mappings?: Array<{
6710
- price_id?: string
6711
- frequency_unit?: "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly" | "one_time"
6712
- name?: string
6713
- value?: number
6714
- metadata?: Record<string, string>
6715
- }>
6716
7475
  // ...
6717
7476
  }
6718
7477
  ```
@@ -6751,9 +7510,6 @@ type CompositePriceItem = {
6751
7510
  _tags?: { ... }
6752
7511
  feature?: { ... }
6753
7512
  }>
6754
- cross_sellable_products?: {
6755
- $relation?: { ... }
6756
- }
6757
7513
  product_images?: {
6758
7514
  $relation?: { ... }
6759
7515
  } | Array<{
@@ -6782,9 +7538,6 @@ type CompositePriceItem = {
6782
7538
  _title?: { ... }
6783
7539
  $relation?: { ... }
6784
7540
  }>
6785
- price_options?: {
6786
- $relation?: { ... }
6787
- }
6788
7541
  is_conditional?: boolean
6789
7542
  _availability_files?: Array<{
6790
7543
  _id: { ... }
@@ -6804,6 +7557,29 @@ type CompositePriceItem = {
6804
7557
  _created_at?: string
6805
7558
  _updated_at?: string
6806
7559
  }
7560
+ catalog_reference?: {
7561
+ product: {
7562
+ id: { ... }
7563
+ variant?: { ... }
7564
+ }
7565
+ price: {
7566
+ id: { ... }
7567
+ variant?: { ... }
7568
+ }
7569
+ price_components?: Array<{
7570
+ id: { ... }
7571
+ variant?: { ... }
7572
+ }>
7573
+ coupons?: Array<{
7574
+ id: { ... }
7575
+ variant?: { ... }
7576
+ }>
7577
+ as_of: string
7578
+ _meta?: {
7579
+ signature: { ... }
7580
+ timestamp: { ... }
7581
+ }
7582
+ }
6807
7583
  }
6808
7584
  ```
6809
7585
 
@@ -6841,9 +7617,6 @@ type BasePriceItem = {
6841
7617
  _tags?: { ... }
6842
7618
  feature?: { ... }
6843
7619
  }>
6844
- cross_sellable_products?: {
6845
- $relation?: { ... }
6846
- }
6847
7620
  product_images?: {
6848
7621
  $relation?: { ... }
6849
7622
  } | Array<{
@@ -6872,9 +7645,6 @@ type BasePriceItem = {
6872
7645
  _title?: { ... }
6873
7646
  $relation?: { ... }
6874
7647
  }>
6875
- price_options?: {
6876
- $relation?: { ... }
6877
- }
6878
7648
  is_conditional?: boolean
6879
7649
  _availability_files?: Array<{
6880
7650
  _id: { ... }
@@ -6894,6 +7664,29 @@ type BasePriceItem = {
6894
7664
  _created_at?: string
6895
7665
  _updated_at?: string
6896
7666
  }
7667
+ catalog_reference?: {
7668
+ product: {
7669
+ id: { ... }
7670
+ variant?: { ... }
7671
+ }
7672
+ price: {
7673
+ id: { ... }
7674
+ variant?: { ... }
7675
+ }
7676
+ price_components?: Array<{
7677
+ id: { ... }
7678
+ variant?: { ... }
7679
+ }>
7680
+ coupons?: Array<{
7681
+ id: { ... }
7682
+ variant?: { ... }
7683
+ }>
7684
+ as_of: string
7685
+ _meta?: {
7686
+ signature: { ... }
7687
+ timestamp: { ... }
7688
+ }
7689
+ }
6897
7690
  }
6898
7691
  ```
6899
7692
 
@@ -6991,9 +7784,6 @@ type PriceItem = {
6991
7784
  _tags?: { ... }
6992
7785
  feature?: { ... }
6993
7786
  }>
6994
- cross_sellable_products?: {
6995
- $relation?: { ... }
6996
- }
6997
7787
  product_images?: {
6998
7788
  $relation?: { ... }
6999
7789
  } | Array<{
@@ -7022,9 +7812,6 @@ type PriceItem = {
7022
7812
  _title?: { ... }
7023
7813
  $relation?: { ... }
7024
7814
  }>
7025
- price_options?: {
7026
- $relation?: { ... }
7027
- }
7028
7815
  is_conditional?: boolean
7029
7816
  _availability_files?: Array<{
7030
7817
  _id: { ... }
@@ -7044,6 +7831,29 @@ type PriceItem = {
7044
7831
  _created_at?: string
7045
7832
  _updated_at?: string
7046
7833
  }
7834
+ catalog_reference?: {
7835
+ product: {
7836
+ id: { ... }
7837
+ variant?: { ... }
7838
+ }
7839
+ price: {
7840
+ id: { ... }
7841
+ variant?: { ... }
7842
+ }
7843
+ price_components?: Array<{
7844
+ id: { ... }
7845
+ variant?: { ... }
7846
+ }>
7847
+ coupons?: Array<{
7848
+ id: { ... }
7849
+ variant?: { ... }
7850
+ }>
7851
+ as_of: string
7852
+ _meta?: {
7853
+ signature: { ... }
7854
+ timestamp: { ... }
7855
+ }
7856
+ }
7047
7857
  }
7048
7858
  ```
7049
7859
 
@@ -7238,10 +8048,8 @@ type PricingDetails = {
7238
8048
  name?: { ... }
7239
8049
  categories?: { ... }
7240
8050
  feature?: { ... }
7241
- cross_sellable_products?: { ... }
7242
8051
  product_images?: { ... }
7243
8052
  product_downloads?: { ... }
7244
- price_options?: { ... }
7245
8053
  is_conditional?: { ... }
7246
8054
  _availability_files?: { ... }
7247
8055
  _id?: { ... }
@@ -7250,6 +8058,14 @@ type PricingDetails = {
7250
8058
  _created_at?: { ... }
7251
8059
  _updated_at?: { ... }
7252
8060
  }
8061
+ catalog_reference?: {
8062
+ product: { ... }
8063
+ price: { ... }
8064
+ price_components?: { ... }
8065
+ coupons?: { ... }
8066
+ as_of: { ... }
8067
+ _meta?: { ... }
8068
+ }
7253
8069
  } | {
7254
8070
  metadata?: Array<{
7255
8071
  key?: { ... }
@@ -7276,10 +8092,8 @@ type PricingDetails = {
7276
8092
  name?: { ... }
7277
8093
  categories?: { ... }
7278
8094
  feature?: { ... }
7279
- cross_sellable_products?: { ... }
7280
8095
  product_images?: { ... }
7281
8096
  product_downloads?: { ... }
7282
- price_options?: { ... }
7283
8097
  is_conditional?: { ... }
7284
8098
  _availability_files?: { ... }
7285
8099
  _id?: { ... }
@@ -7288,6 +8102,14 @@ type PricingDetails = {
7288
8102
  _created_at?: { ... }
7289
8103
  _updated_at?: { ... }
7290
8104
  }
8105
+ catalog_reference?: {
8106
+ product: { ... }
8107
+ price: { ... }
8108
+ price_components?: { ... }
8109
+ coupons?: { ... }
8110
+ as_of: { ... }
8111
+ _meta?: { ... }
8112
+ }
7291
8113
  }>
7292
8114
  amount_subtotal?: number
7293
8115
  amount_total?: number
@@ -7299,18 +8121,6 @@ type PricingDetails = {
7299
8121
  amount_tax?: number
7300
8122
  breakdown?: {
7301
8123
  taxes?: { ... }
7302
- recurrences?: { ... }
7303
- cashbacks?: { ... }
7304
- recurrencesByTax?: { ... }
7305
- }
7306
- }
7307
- currency?: string
7308
- redeemed_promos?: Array<{
7309
- code: string
7310
- coupons: Array<{
7311
- _id: { ... }
7312
- _title: { ... }
7313
- _org: { ... }
7314
8124
  // ...
7315
8125
  }
7316
8126
  ```
@@ -7377,10 +8187,8 @@ type PricingDetailsResponse = {
7377
8187
  name?: { ... }
7378
8188
  categories?: { ... }
7379
8189
  feature?: { ... }
7380
- cross_sellable_products?: { ... }
7381
8190
  product_images?: { ... }
7382
8191
  product_downloads?: { ... }
7383
- price_options?: { ... }
7384
8192
  is_conditional?: { ... }
7385
8193
  _availability_files?: { ... }
7386
8194
  _id?: { ... }
@@ -7389,6 +8197,14 @@ type PricingDetailsResponse = {
7389
8197
  _created_at?: { ... }
7390
8198
  _updated_at?: { ... }
7391
8199
  }
8200
+ catalog_reference?: {
8201
+ product: { ... }
8202
+ price: { ... }
8203
+ price_components?: { ... }
8204
+ coupons?: { ... }
8205
+ as_of: { ... }
8206
+ _meta?: { ... }
8207
+ }
7392
8208
  } | {
7393
8209
  metadata?: Array<{
7394
8210
  key?: { ... }
@@ -7415,10 +8231,8 @@ type PricingDetailsResponse = {
7415
8231
  name?: { ... }
7416
8232
  categories?: { ... }
7417
8233
  feature?: { ... }
7418
- cross_sellable_products?: { ... }
7419
8234
  product_images?: { ... }
7420
8235
  product_downloads?: { ... }
7421
- price_options?: { ... }
7422
8236
  is_conditional?: { ... }
7423
8237
  _availability_files?: { ... }
7424
8238
  _id?: { ... }
@@ -7427,6 +8241,14 @@ type PricingDetailsResponse = {
7427
8241
  _created_at?: { ... }
7428
8242
  _updated_at?: { ... }
7429
8243
  }
8244
+ catalog_reference?: {
8245
+ product: { ... }
8246
+ price: { ... }
8247
+ price_components?: { ... }
8248
+ coupons?: { ... }
8249
+ as_of: { ... }
8250
+ _meta?: { ... }
8251
+ }
7430
8252
  }>
7431
8253
  amount_subtotal?: number
7432
8254
  amount_total?: number
@@ -7438,18 +8260,6 @@ type PricingDetailsResponse = {
7438
8260
  amount_tax?: number
7439
8261
  breakdown?: {
7440
8262
  taxes?: { ... }
7441
- recurrences?: { ... }
7442
- cashbacks?: { ... }
7443
- recurrencesByTax?: { ... }
7444
- }
7445
- }
7446
- currency?: string
7447
- redeemed_promos?: Array<{
7448
- code: string
7449
- coupons: Array<{
7450
- _id: { ... }
7451
- _title: { ... }
7452
- _org: { ... }
7453
8263
  // ...
7454
8264
  }
7455
8265
  ```
@@ -8187,6 +8997,7 @@ type ExternalCatalogItem = {
8187
8997
  price_mappings?: { ... }
8188
8998
  is_tax_inclusive?: { ... }
8189
8999
  _product?: { ... }
9000
+ catalog_reference?: { ... }
8190
9001
  } | {
8191
9002
  metadata?: { ... }
8192
9003
  quantity?: { ... }
@@ -8198,6 +9009,7 @@ type ExternalCatalogItem = {
8198
9009
  price_mappings?: { ... }
8199
9010
  is_tax_inclusive?: { ... }
8200
9011
  _product?: { ... }
9012
+ catalog_reference?: { ... }
8201
9013
  }>
8202
9014
  amount_subtotal?: number
8203
9015
  amount_total?: number
@@ -8275,6 +9087,7 @@ type ProductRecommendationResponse = {
8275
9087
  price_mappings?: { ... }
8276
9088
  is_tax_inclusive?: { ... }
8277
9089
  _product?: { ... }
9090
+ catalog_reference?: { ... }
8278
9091
  } | {
8279
9092
  metadata?: { ... }
8280
9093
  quantity?: { ... }
@@ -8286,6 +9099,7 @@ type ProductRecommendationResponse = {
8286
9099
  price_mappings?: { ... }
8287
9100
  is_tax_inclusive?: { ... }
8288
9101
  _product?: { ... }
9102
+ catalog_reference?: { ... }
8289
9103
  }
8290
9104
  }
8291
9105
  }