voucherify 8.0.3 → 8.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (699) hide show
  1. checksums.yaml +4 -4
  2. data/Dockerfile +1 -1
  3. data/ENDPOINTS-COVERAGE.md +123 -111
  4. data/Gemfile.lock +19 -17
  5. data/README.md +218 -75
  6. data/VoucherifySdk.gemspec +1 -1
  7. data/__tests__/README.md +18 -0
  8. data/__tests__/lib/campaigns.rb +53 -1
  9. data/__tests__/lib/config.rb +21 -0
  10. data/__tests__/lib/loyalties.rb +2 -2
  11. data/__tests__/lib/utils.rb +27 -1
  12. data/__tests__/spec/02_campaigns_spec.rb +33 -2
  13. data/__tests__/spec/04_publications_spec.rb +16 -3
  14. data/__tests__/spec/07_vouchers_spec.rb +22 -3
  15. data/__tests__/spec/13_management_spec.rb +110 -0
  16. data/__tests__/spec/14_additional_properties_spec.rb +28 -0
  17. data/__tests__/spec/support/get_snapshot_without_uniq_keys.rb +1 -1
  18. data/docs/ApplicableTo.md +18 -2
  19. data/docs/ApplicableToOrderItemUnitsItem.md +2 -1
  20. data/docs/AsyncActionsApi.md +2 -2
  21. data/docs/AsyncActionsListResponseBody.md +1 -0
  22. data/docs/Bundle.md +11 -0
  23. data/docs/BundleIdentifiedItem.md +11 -0
  24. data/docs/BundleMissingItem.md +10 -0
  25. data/docs/Campaign.md +4 -4
  26. data/docs/CampaignBase.md +4 -4
  27. data/docs/CampaignLoyaltyCardExpirationRules.md +6 -4
  28. data/docs/CampaignsApi.md +209 -12
  29. data/docs/CampaignsCreateRequestBody.md +2 -2
  30. data/docs/CampaignsCreateResponseBody.md +4 -4
  31. data/docs/CampaignsGetResponseBody.md +4 -4
  32. data/docs/CampaignsImportVoucherItem.md +1 -1
  33. data/docs/CampaignsSummaryGetResponseBody.md +48 -0
  34. data/docs/CampaignsTransactionsExportCreateRequestBody.md +8 -0
  35. data/docs/CampaignsTransactionsExportCreateRequestBodyParameters.md +10 -0
  36. data/docs/CampaignsTransactionsExportCreateResponseBody.md +16 -0
  37. data/docs/CampaignsTransactionsExportCreateResponseBodyParameters.md +10 -0
  38. data/docs/CampaignsTransactionsExportCreateResponseBodyParametersFilters.md +11 -0
  39. data/docs/CampaignsTransactionsExportCreateResponseBodyParametersFiltersCampaignId.md +8 -0
  40. data/docs/CampaignsTransactionsExportCreateResponseBodyParametersFiltersCampaignIdConditions.md +8 -0
  41. data/docs/CampaignsTransactionsExportCreateResponseBodyResult.md +8 -0
  42. data/docs/CampaignsTransactionsListResponseBody.md +12 -0
  43. data/docs/CampaignsUpdateRequestBody.md +1 -1
  44. data/docs/CampaignsUpdateResponseBody.md +4 -4
  45. data/docs/CampaignsVouchersCreateCombinedResponseBodyGift.md +3 -2
  46. data/docs/CampaignsVouchersCreateCombinedResponseBodyLoyaltyCard.md +5 -3
  47. data/docs/CampaignsVouchersCreateResponseBodyGift.md +3 -2
  48. data/docs/CampaignsVouchersCreateResponseBodyLoyaltyCard.md +5 -3
  49. data/docs/CategoriesApi.md +1 -1
  50. data/docs/ClientQualificationsCheckEligibilityRequestBody.md +2 -1
  51. data/docs/ClientQualificationsCheckEligibilityRequestBodySession.md +8 -0
  52. data/docs/ClientRedemptionsRedeemRequestBodyOptions.md +1 -1
  53. data/docs/ClientRedemptionsRedeemRequestBodyRedeemablesItemGift.md +1 -1
  54. data/docs/ClientSideApi.md +2 -2
  55. data/docs/ClientValidationsValidateRequestBodyOptions.md +1 -1
  56. data/docs/ClientValidationsValidateRequestBodyRedeemablesItemGift.md +1 -1
  57. data/docs/ClientValidationsValidateResponseBody.md +1 -0
  58. data/docs/ClientValidationsValidateResponseBodyRedeemablesItemResult.md +1 -0
  59. data/docs/ClientValidationsValidateResponseBodyRedeemablesItemResultDiscount.md +4 -4
  60. data/docs/ClientValidationsValidateResponseBodyRedeemablesItemResultGift.md +2 -1
  61. data/docs/CustomerSummaryOrders.md +3 -3
  62. data/docs/CustomerSummaryRedemptionsGift.md +2 -2
  63. data/docs/CustomerWithSummaryLoyaltyReferralsAssets.md +2 -1
  64. data/docs/CustomersApi.md +10 -10
  65. data/docs/CustomersCreateResponseBodyAssets.md +2 -1
  66. data/docs/CustomersGetResponseBodyAssets.md +2 -1
  67. data/docs/CustomersUpdateResponseBodyAssets.md +2 -1
  68. data/docs/Discount.md +4 -4
  69. data/docs/DiscountUnitMultipleOneUnit.md +1 -1
  70. data/docs/EarningRule.md +1 -0
  71. data/docs/EarningRuleExpirationRules.md +13 -0
  72. data/docs/EarningRuleLoyalty.md +1 -0
  73. data/docs/EarningRuleLoyaltyCustomEventMetadata.md +1 -0
  74. data/docs/EarningRuleLoyaltyCustomerMetadata.md +1 -0
  75. data/docs/EarningRuleLoyaltyOrderAmount.md +1 -0
  76. data/docs/EarningRuleLoyaltyOrderItemsAmount.md +4 -2
  77. data/docs/EarningRuleLoyaltyOrderItemsAmountApplicableToItem.md +9 -0
  78. data/docs/EarningRuleLoyaltyOrderItemsQuantity.md +4 -2
  79. data/docs/EarningRuleLoyaltyOrderItemsQuantityApplicableToItem.md +9 -0
  80. data/docs/EarningRuleLoyaltyOrderItemsSubtotalAmount.md +4 -2
  81. data/docs/EarningRuleLoyaltyOrderItemsSubtotalAmountApplicableToItem.md +9 -0
  82. data/docs/EarningRuleLoyaltyOrderMetadata.md +1 -0
  83. data/docs/EarningRuleLoyaltyOrderTotalAmount.md +1 -0
  84. data/docs/ExportCampaignTransactionsFilters.md +10 -0
  85. data/docs/ExportParameters.md +1 -0
  86. data/docs/ExportsApi.md +3 -3
  87. data/docs/ExportsCreateRequestBodyParameters.md +1 -0
  88. data/docs/ExportsCreateResponseBodyParameters.md +1 -0
  89. data/docs/ExportsGetResponseBodyParameters.md +1 -0
  90. data/docs/Gift.md +3 -2
  91. data/docs/InapplicableTo.md +18 -2
  92. data/docs/InapplicableToOrderItemUnitsItem.md +2 -1
  93. data/docs/LoyaltiesApi.md +264 -67
  94. data/docs/LoyaltiesCreateCampaignRequestBody.md +2 -2
  95. data/docs/LoyaltiesCreateCampaignResponseBody.md +1 -1
  96. data/docs/LoyaltiesEarningRulesCreateRequestBodyItem.md +4 -2
  97. data/docs/LoyaltiesEarningRulesCreateRequestBodyItemLoyalty.md +1 -0
  98. data/docs/LoyaltiesEarningRulesCreateRequestBodyItemLoyaltyCustomEventMetadata.md +1 -0
  99. data/docs/LoyaltiesEarningRulesCreateRequestBodyItemLoyaltyCustomerMetadata.md +1 -0
  100. data/docs/LoyaltiesEarningRulesCreateRequestBodyItemLoyaltyOrderAmount.md +1 -0
  101. data/docs/LoyaltiesEarningRulesCreateRequestBodyItemLoyaltyOrderItemsAmount.md +4 -2
  102. data/docs/LoyaltiesEarningRulesCreateRequestBodyItemLoyaltyOrderItemsAmountApplicableToItem.md +9 -0
  103. data/docs/LoyaltiesEarningRulesCreateRequestBodyItemLoyaltyOrderItemsQuantity.md +4 -2
  104. data/docs/LoyaltiesEarningRulesCreateRequestBodyItemLoyaltyOrderItemsQuantityApplicableToItem.md +9 -0
  105. data/docs/LoyaltiesEarningRulesCreateRequestBodyItemLoyaltyOrderItemsSubtotalAmount.md +4 -2
  106. data/docs/LoyaltiesEarningRulesCreateRequestBodyItemLoyaltyOrderMetadata.md +1 -0
  107. data/docs/LoyaltiesEarningRulesCreateRequestBodyItemLoyaltyOrderTotalAmount.md +1 -0
  108. data/docs/LoyaltiesEarningRulesCreateRequestBodyItemOrderItemsSubtotalAmountApplicableToItem.md +9 -0
  109. data/docs/LoyaltiesEarningRulesCreateRequestBodyItemPendingPoints.md +9 -0
  110. data/docs/LoyaltiesEarningRulesCreateResponseBody.md +1 -0
  111. data/docs/LoyaltiesEarningRulesCreateResponseBodyLoyalty.md +1 -0
  112. data/docs/LoyaltiesEarningRulesCreateResponseBodyLoyaltyCustomEventMetadata.md +1 -0
  113. data/docs/LoyaltiesEarningRulesCreateResponseBodyLoyaltyCustomerMetadata.md +1 -0
  114. data/docs/LoyaltiesEarningRulesCreateResponseBodyLoyaltyOrderAmount.md +1 -0
  115. data/docs/LoyaltiesEarningRulesCreateResponseBodyLoyaltyOrderItemsAmount.md +4 -2
  116. data/docs/LoyaltiesEarningRulesCreateResponseBodyLoyaltyOrderItemsAmountApplicableToItem.md +9 -0
  117. data/docs/LoyaltiesEarningRulesCreateResponseBodyLoyaltyOrderItemsQuantity.md +4 -2
  118. data/docs/LoyaltiesEarningRulesCreateResponseBodyLoyaltyOrderItemsQuantityApplicableToItem.md +9 -0
  119. data/docs/LoyaltiesEarningRulesCreateResponseBodyLoyaltyOrderItemsSubtotalAmount.md +4 -2
  120. data/docs/LoyaltiesEarningRulesCreateResponseBodyLoyaltyOrderMetadata.md +1 -0
  121. data/docs/LoyaltiesEarningRulesCreateResponseBodyLoyaltyOrderTotalAmount.md +1 -0
  122. data/docs/LoyaltiesEarningRulesCreateResponseBodyOrderItemsSubtotalAmountApplicableToItem.md +9 -0
  123. data/docs/LoyaltiesEarningRulesDisableResponseBody.md +1 -0
  124. data/docs/LoyaltiesEarningRulesDisableResponseBodyLoyalty.md +1 -0
  125. data/docs/LoyaltiesEarningRulesDisableResponseBodyLoyaltyCustomEventMetadata.md +1 -0
  126. data/docs/LoyaltiesEarningRulesDisableResponseBodyLoyaltyCustomerMetadata.md +1 -0
  127. data/docs/LoyaltiesEarningRulesDisableResponseBodyLoyaltyOrderAmount.md +1 -0
  128. data/docs/LoyaltiesEarningRulesDisableResponseBodyLoyaltyOrderItemsAmount.md +4 -2
  129. data/docs/LoyaltiesEarningRulesDisableResponseBodyLoyaltyOrderItemsAmountApplicableToItem.md +9 -0
  130. data/docs/LoyaltiesEarningRulesDisableResponseBodyLoyaltyOrderItemsQuantity.md +4 -2
  131. data/docs/LoyaltiesEarningRulesDisableResponseBodyLoyaltyOrderItemsQuantityApplicableToItem.md +9 -0
  132. data/docs/LoyaltiesEarningRulesDisableResponseBodyLoyaltyOrderItemsSubtotalAmount.md +4 -2
  133. data/docs/LoyaltiesEarningRulesDisableResponseBodyLoyaltyOrderMetadata.md +1 -0
  134. data/docs/LoyaltiesEarningRulesDisableResponseBodyLoyaltyOrderTotalAmount.md +1 -0
  135. data/docs/LoyaltiesEarningRulesDisableResponseBodyOrderItemsSubtotalAmountApplicableToItem.md +9 -0
  136. data/docs/LoyaltiesEarningRulesEnableResponseBody.md +1 -0
  137. data/docs/LoyaltiesEarningRulesEnableResponseBodyLoyalty.md +1 -0
  138. data/docs/LoyaltiesEarningRulesEnableResponseBodyLoyaltyCustomEventMetadata.md +1 -0
  139. data/docs/LoyaltiesEarningRulesEnableResponseBodyLoyaltyCustomerMetadata.md +1 -0
  140. data/docs/LoyaltiesEarningRulesEnableResponseBodyLoyaltyOrderAmount.md +1 -0
  141. data/docs/LoyaltiesEarningRulesEnableResponseBodyLoyaltyOrderItemsAmount.md +4 -2
  142. data/docs/LoyaltiesEarningRulesEnableResponseBodyLoyaltyOrderItemsAmountApplicableToItem.md +9 -0
  143. data/docs/LoyaltiesEarningRulesEnableResponseBodyLoyaltyOrderItemsQuantity.md +4 -2
  144. data/docs/LoyaltiesEarningRulesEnableResponseBodyLoyaltyOrderItemsQuantityApplicableToItem.md +9 -0
  145. data/docs/LoyaltiesEarningRulesEnableResponseBodyLoyaltyOrderItemsSubtotalAmount.md +4 -2
  146. data/docs/LoyaltiesEarningRulesEnableResponseBodyLoyaltyOrderMetadata.md +1 -0
  147. data/docs/LoyaltiesEarningRulesEnableResponseBodyLoyaltyOrderTotalAmount.md +1 -0
  148. data/docs/LoyaltiesEarningRulesEnableResponseBodyOrderItemsSubtotalAmountApplicableToItem.md +9 -0
  149. data/docs/LoyaltiesEarningRulesGetResponseBody.md +1 -0
  150. data/docs/LoyaltiesEarningRulesGetResponseBodyLoyalty.md +1 -0
  151. data/docs/LoyaltiesEarningRulesGetResponseBodyLoyaltyCustomEventMetadata.md +1 -0
  152. data/docs/LoyaltiesEarningRulesGetResponseBodyLoyaltyCustomerMetadata.md +1 -0
  153. data/docs/LoyaltiesEarningRulesGetResponseBodyLoyaltyOrderAmount.md +1 -0
  154. data/docs/LoyaltiesEarningRulesGetResponseBodyLoyaltyOrderItemsAmount.md +4 -2
  155. data/docs/LoyaltiesEarningRulesGetResponseBodyLoyaltyOrderItemsAmountApplicableToItem.md +9 -0
  156. data/docs/LoyaltiesEarningRulesGetResponseBodyLoyaltyOrderItemsQuantity.md +4 -2
  157. data/docs/LoyaltiesEarningRulesGetResponseBodyLoyaltyOrderItemsQuantityApplicableToItem.md +9 -0
  158. data/docs/LoyaltiesEarningRulesGetResponseBodyLoyaltyOrderItemsSubtotalAmount.md +4 -2
  159. data/docs/LoyaltiesEarningRulesGetResponseBodyLoyaltyOrderItemsSubtotalAmountApplicableToItem.md +9 -0
  160. data/docs/LoyaltiesEarningRulesGetResponseBodyLoyaltyOrderMetadata.md +1 -0
  161. data/docs/LoyaltiesEarningRulesGetResponseBodyLoyaltyOrderTotalAmount.md +1 -0
  162. data/docs/LoyaltiesEarningRulesUpdateRequestBody.md +4 -2
  163. data/docs/LoyaltiesEarningRulesUpdateRequestBodyLoyalty.md +1 -0
  164. data/docs/LoyaltiesEarningRulesUpdateRequestBodyLoyaltyCustomEventMetadata.md +1 -0
  165. data/docs/LoyaltiesEarningRulesUpdateRequestBodyLoyaltyCustomerMetadata.md +1 -0
  166. data/docs/LoyaltiesEarningRulesUpdateRequestBodyLoyaltyOrderAmount.md +1 -0
  167. data/docs/LoyaltiesEarningRulesUpdateRequestBodyLoyaltyOrderItemsAmount.md +4 -2
  168. data/docs/LoyaltiesEarningRulesUpdateRequestBodyLoyaltyOrderItemsAmountApplicableToItem.md +9 -0
  169. data/docs/LoyaltiesEarningRulesUpdateRequestBodyLoyaltyOrderItemsQuantity.md +4 -2
  170. data/docs/LoyaltiesEarningRulesUpdateRequestBodyLoyaltyOrderItemsQuantityApplicableToItem.md +9 -0
  171. data/docs/LoyaltiesEarningRulesUpdateRequestBodyLoyaltyOrderItemsSubtotalAmount.md +4 -2
  172. data/docs/LoyaltiesEarningRulesUpdateRequestBodyLoyaltyOrderMetadata.md +1 -0
  173. data/docs/LoyaltiesEarningRulesUpdateRequestBodyLoyaltyOrderTotalAmount.md +1 -0
  174. data/docs/LoyaltiesEarningRulesUpdateRequestBodyOrderItemsSubtotalAmountApplicableToItem.md +9 -0
  175. data/docs/LoyaltiesEarningRulesUpdateRequestBodyPendingPoints.md +9 -0
  176. data/docs/LoyaltiesEarningRulesUpdateResponseBody.md +1 -0
  177. data/docs/LoyaltiesEarningRulesUpdateResponseBodyLoyalty.md +1 -0
  178. data/docs/LoyaltiesEarningRulesUpdateResponseBodyLoyaltyCustomEventMetadata.md +1 -0
  179. data/docs/LoyaltiesEarningRulesUpdateResponseBodyLoyaltyCustomerMetadata.md +1 -0
  180. data/docs/LoyaltiesEarningRulesUpdateResponseBodyLoyaltyOrderAmount.md +1 -0
  181. data/docs/LoyaltiesEarningRulesUpdateResponseBodyLoyaltyOrderItemsAmount.md +4 -2
  182. data/docs/LoyaltiesEarningRulesUpdateResponseBodyLoyaltyOrderItemsAmountApplicableToItem.md +9 -0
  183. data/docs/LoyaltiesEarningRulesUpdateResponseBodyLoyaltyOrderItemsQuantity.md +4 -2
  184. data/docs/LoyaltiesEarningRulesUpdateResponseBodyLoyaltyOrderItemsQuantityApplicableToItem.md +9 -0
  185. data/docs/LoyaltiesEarningRulesUpdateResponseBodyLoyaltyOrderItemsSubtotalAmount.md +4 -2
  186. data/docs/LoyaltiesEarningRulesUpdateResponseBodyLoyaltyOrderMetadata.md +1 -0
  187. data/docs/LoyaltiesEarningRulesUpdateResponseBodyLoyaltyOrderTotalAmount.md +1 -0
  188. data/docs/LoyaltiesEarningRulesUpdateResponseBodyOrderItemsSubtotalAmountApplicableToItem.md +9 -0
  189. data/docs/LoyaltiesGetCampaignResponseBody.md +1 -1
  190. data/docs/LoyaltiesMembersCreateResponseBodyLoyaltyCard.md +5 -3
  191. data/docs/LoyaltiesMembersGetResponseBodyLoyaltyCard.md +5 -3
  192. data/docs/LoyaltiesMembersPendingPointsActivateResponseBody.md +1 -1
  193. data/docs/LoyaltiesMembersPendingPointsBalanceRequestBody.md +8 -0
  194. data/docs/LoyaltiesMembersPendingPointsBalanceResponseBody.md +12 -0
  195. data/docs/LoyaltiesMembersPendingPointsBalanceResponseBodyRelatedObject.md +9 -0
  196. data/docs/LoyaltiesMembersPointsExpirationListResponseBodyDataItem.md +1 -1
  197. data/docs/LoyaltiesMembersRedemptionRedeemRequestBody.md +1 -1
  198. data/docs/LoyaltiesMembersRedemptionRedeemResponseBody.md +1 -0
  199. data/docs/LoyaltiesMembersRedemptionRedeemResponseBodyRelatedRedemptionsRollbacksItem.md +1 -0
  200. data/docs/LoyaltiesMembersRedemptionRedeemResponseBodySession.md +8 -0
  201. data/docs/LoyaltiesMembersRedemptionRedeemResponseBodyVoucherGift.md +3 -2
  202. data/docs/LoyaltiesMembersRedemptionRedeemResponseBodyVoucherLoyaltyCard.md +5 -3
  203. data/docs/LoyaltiesMembersTransfersCreateResponseBodyLoyaltyCard.md +5 -3
  204. data/docs/LoyaltiesPointsExpirationExportCreateRequestBodyParameters.md +1 -1
  205. data/docs/LoyaltiesRewardAssignmentsRewardGetResponseBody.md +1 -1
  206. data/docs/LoyaltiesTransactionsExportCreateRequestBody.md +8 -0
  207. data/docs/LoyaltiesTransactionsExportCreateRequestBodyParameters.md +10 -0
  208. data/docs/LoyaltiesTransactionsListResponseBody.md +12 -0
  209. data/docs/LoyaltiesUpdateCampaignRequestBody.md +1 -1
  210. data/docs/LoyaltiesUpdateCampaignResponseBody.md +1 -1
  211. data/docs/LoyaltyCampaign.md +1 -1
  212. data/docs/LoyaltyCardTransaction.md +1 -1
  213. data/docs/LoyaltyCardTransactionDetailsBalance.md +1 -0
  214. data/docs/LoyaltyMemberLoyaltyCard.md +5 -3
  215. data/docs/LoyaltyPointsBucket.md +1 -1
  216. data/docs/LoyaltyTiersExpirationAll.md +1 -1
  217. data/docs/ManagementApi.md +22 -22
  218. data/docs/ManagementProjectsStackingRules.md +14 -8
  219. data/docs/ManagementProjectsStackingRulesCreateRequestBody.md +14 -8
  220. data/docs/ManagementProjectsStackingRulesCreateResponseBody.md +14 -8
  221. data/docs/ManagementProjectsStackingRulesGetResponseBody.md +14 -8
  222. data/docs/ManagementProjectsStackingRulesUpdateRequestBody.md +14 -8
  223. data/docs/ManagementProjectsStackingRulesUpdateResponseBody.md +14 -8
  224. data/docs/ManagementProjectsUsersInviteCreateRequestBody.md +1 -1
  225. data/docs/ManagementProjectsUsersUpdateRoleRequestBody.md +1 -1
  226. data/docs/MetadataSchemasApi.md +5 -5
  227. data/docs/Order.md +1 -1
  228. data/docs/OrderCalculatedItem.md +1 -1
  229. data/docs/OrderItem.md +1 -1
  230. data/docs/OrdersApi.md +3 -3
  231. data/docs/OrdersCreateRequestBody.md +1 -1
  232. data/docs/OrdersImportCreateRequestBodyItem.md +2 -2
  233. data/docs/OrdersUpdateRequestBody.md +1 -1
  234. data/docs/ParametersFiltersListCampaignTransactions.md +10 -0
  235. data/docs/ProductCollectionsCreateRequestBody.md +1 -1
  236. data/docs/ProductsApi.md +22 -22
  237. data/docs/ProductsSkusCreateRequestBody.md +1 -1
  238. data/docs/ProductsSkusUpdateRequestBody.md +1 -1
  239. data/docs/PromotionTierCampaign.md +1 -1
  240. data/docs/PromotionsTiersCreateResponseBodyCampaign.md +1 -1
  241. data/docs/PromotionsTiersDisableResponseBodyCampaign.md +1 -1
  242. data/docs/PromotionsTiersEnableResponseBodyCampaign.md +1 -1
  243. data/docs/PromotionsTiersGetResponseBodyCampaign.md +1 -1
  244. data/docs/PromotionsTiersUpdateResponseBodyCampaign.md +1 -1
  245. data/docs/PublicationsApi.md +7 -7
  246. data/docs/QualificationsApi.md +1 -1
  247. data/docs/QualificationsCheckEligibilityRequestBody.md +2 -1
  248. data/docs/QualificationsCheckEligibilityRequestBodySession.md +8 -0
  249. data/docs/QualificationsOption.md +1 -1
  250. data/docs/QualificationsRedeemable.md +1 -1
  251. data/docs/QualificationsRedeemableBase.md +1 -1
  252. data/docs/RedeemableGift.md +3 -2
  253. data/docs/RedeemableLoyaltyCard.md +2 -2
  254. data/docs/RedeemableResult.md +1 -0
  255. data/docs/RedeemableVoucherGift.md +3 -2
  256. data/docs/RedeemableVoucherLoyaltyCard.md +5 -3
  257. data/docs/Redemption.md +1 -0
  258. data/docs/RedemptionEntry.md +1 -0
  259. data/docs/RedemptionEntryPromotionTierCampaign.md +1 -1
  260. data/docs/RedemptionEntryRelatedRedemptionsRollbacksItem.md +1 -0
  261. data/docs/RedemptionEntrySession.md +8 -0
  262. data/docs/RedemptionEntryVoucherGift.md +3 -2
  263. data/docs/RedemptionEntryVoucherLoyaltyCard.md +5 -3
  264. data/docs/RedemptionRelatedRedemptionsRollbacksItem.md +1 -0
  265. data/docs/RedemptionRewardResultParametersCampaign.md +1 -1
  266. data/docs/RedemptionRollback.md +1 -1
  267. data/docs/RedemptionSession.md +8 -0
  268. data/docs/RedemptionVoucherGift.md +3 -2
  269. data/docs/RedemptionVoucherLoyaltyCard.md +5 -3
  270. data/docs/RedemptionsApi.md +3 -3
  271. data/docs/RedemptionsGetResponseBody.md +1 -0
  272. data/docs/RedemptionsGetResponseBodyPromotionTierCampaign.md +1 -1
  273. data/docs/RedemptionsGetResponseBodyRelatedRedemptionsRollbacksItem.md +1 -0
  274. data/docs/RedemptionsGetResponseBodySession.md +8 -0
  275. data/docs/RedemptionsGetResponseBodyVoucherGift.md +3 -2
  276. data/docs/RedemptionsGetResponseBodyVoucherLoyaltyCard.md +5 -3
  277. data/docs/RedemptionsListResponseBodyRedemptionsItem.md +1 -0
  278. data/docs/RedemptionsListResponseBodyRedemptionsItemPromotionTierCampaign.md +1 -1
  279. data/docs/RedemptionsListResponseBodyRedemptionsItemRelatedRedemptionsRollbacksItem.md +1 -0
  280. data/docs/RedemptionsListResponseBodyRedemptionsItemSession.md +8 -0
  281. data/docs/RedemptionsListResponseBodyRedemptionsItemVoucherGift.md +3 -2
  282. data/docs/RedemptionsListResponseBodyRedemptionsItemVoucherLoyaltyCard.md +5 -3
  283. data/docs/RedemptionsRedeemRequestBodyOptions.md +1 -1
  284. data/docs/RedemptionsRedeemRequestBodyRedeemablesItemGift.md +1 -1
  285. data/docs/RedemptionsRollbackCreateResponseBody.md +1 -1
  286. data/docs/ReferralsApi.md +13 -13
  287. data/docs/Reward.md +1 -1
  288. data/docs/RewardsCreateRequestBody.md +1 -1
  289. data/docs/RewardsCreateRequestBodyParametersCampaign.md +1 -1
  290. data/docs/RewardsCreateResponseBody.md +1 -1
  291. data/docs/RewardsUpdateRequestBody.md +1 -1
  292. data/docs/RewardsUpdateRequestBodyParametersCampaign.md +1 -1
  293. data/docs/RewardsUpdateResponseBody.md +1 -1
  294. data/docs/SegmentsApi.md +2 -2
  295. data/docs/SegmentsCreateRequestBody.md +1 -1
  296. data/docs/SegmentsCreateResponseBody.md +4 -3
  297. data/docs/SegmentsGetResponseBody.md +4 -3
  298. data/docs/SimpleLoyaltyCard.md +5 -3
  299. data/docs/SimpleVoucherRedemption.md +1 -0
  300. data/docs/StackingRules.md +15 -11
  301. data/docs/TemplatesApi.md +7 -7
  302. data/docs/TemplatesCampaignsCampaignSetupCreateRequestBody.md +2 -2
  303. data/docs/TrashBinItem.md +1 -1
  304. data/docs/ValidationRule.md +1 -0
  305. data/docs/ValidationRulesApi.md +3 -3
  306. data/docs/ValidationRulesCreateRequestBody.md +1 -0
  307. data/docs/ValidationRulesCreateResponseBody.md +1 -0
  308. data/docs/ValidationRulesGetResponseBody.md +1 -0
  309. data/docs/ValidationRulesUpdateRequestBody.md +1 -0
  310. data/docs/ValidationRulesUpdateResponseBody.md +1 -0
  311. data/docs/ValidationsApi.md +1 -1
  312. data/docs/ValidationsRedeemableInapplicableResult.md +1 -0
  313. data/docs/ValidationsValidateRequestBodyOptions.md +1 -1
  314. data/docs/ValidationsValidateRequestBodyRedeemablesItemGift.md +1 -1
  315. data/docs/ValidationsValidateResponseBody.md +1 -0
  316. data/docs/ValidationsValidateResponseBodyRedeemablesItemResult.md +1 -0
  317. data/docs/ValidationsValidateResponseBodyRedeemablesItemResultDiscount.md +4 -4
  318. data/docs/ValidationsValidateResponseBodyRedeemablesItemResultGift.md +2 -1
  319. data/docs/ValidityHours.md +1 -1
  320. data/docs/VoucherBalance.md +1 -0
  321. data/docs/VoucherGift.md +3 -2
  322. data/docs/VoucherLoyaltyCard.md +5 -3
  323. data/docs/VoucherTransaction.md +1 -1
  324. data/docs/VoucherTransactionDetailsBalance.md +1 -0
  325. data/docs/VoucherTransactionsExportParameters.md +1 -1
  326. data/docs/VoucherTransactionsFilters.md +1 -1
  327. data/docs/VoucherWithCategoriesGift.md +3 -2
  328. data/docs/VoucherWithCategoriesLoyaltyCard.md +5 -3
  329. data/docs/VouchersApi.md +16 -14
  330. data/docs/VouchersBalanceUpdateRequestBody.md +1 -1
  331. data/docs/VouchersBalanceUpdateResponseBody.md +2 -2
  332. data/docs/VouchersCreateRequestBody.md +2 -2
  333. data/docs/VouchersCreateResponseBodyGift.md +3 -2
  334. data/docs/VouchersCreateResponseBodyLoyaltyCard.md +5 -3
  335. data/docs/VouchersCreateWithSpecificCodeRequestBody.md +2 -2
  336. data/docs/VouchersDisableResponseBodyGift.md +3 -2
  337. data/docs/VouchersDisableResponseBodyLoyaltyCard.md +5 -3
  338. data/docs/VouchersEnableResponseBodyGift.md +3 -2
  339. data/docs/VouchersEnableResponseBodyLoyaltyCard.md +5 -3
  340. data/docs/VouchersGetResponseBodyGift.md +3 -2
  341. data/docs/VouchersGetResponseBodyLoyaltyCard.md +5 -3
  342. data/docs/VouchersImportCreateItemRequestBody.md +1 -1
  343. data/docs/VouchersTransactionsExportCreateResponseBodyResult.md +1 -1
  344. data/docs/VouchersUpdateRequestBody.md +2 -2
  345. data/docs/VouchersUpdateResponseBodyGift.md +3 -2
  346. data/docs/VouchersUpdateResponseBodyLoyaltyCard.md +5 -3
  347. data/lib/VoucherifySdk/api/async_actions_api.rb +4 -4
  348. data/lib/VoucherifySdk/api/campaigns_api.rb +220 -18
  349. data/lib/VoucherifySdk/api/categories_api.rb +2 -2
  350. data/lib/VoucherifySdk/api/client_side_api.rb +4 -4
  351. data/lib/VoucherifySdk/api/customers_api.rb +14 -14
  352. data/lib/VoucherifySdk/api/exports_api.rb +6 -6
  353. data/lib/VoucherifySdk/api/loyalties_api.rb +277 -72
  354. data/lib/VoucherifySdk/api/management_api.rb +44 -44
  355. data/lib/VoucherifySdk/api/metadata_schemas_api.rb +6 -6
  356. data/lib/VoucherifySdk/api/orders_api.rb +6 -6
  357. data/lib/VoucherifySdk/api/products_api.rb +30 -30
  358. data/lib/VoucherifySdk/api/publications_api.rb +8 -8
  359. data/lib/VoucherifySdk/api/qualifications_api.rb +2 -2
  360. data/lib/VoucherifySdk/api/redemptions_api.rb +6 -6
  361. data/lib/VoucherifySdk/api/referrals_api.rb +14 -14
  362. data/lib/VoucherifySdk/api/segments_api.rb +4 -4
  363. data/lib/VoucherifySdk/api/templates_api.rb +14 -14
  364. data/lib/VoucherifySdk/api/validation_rules_api.rb +6 -6
  365. data/lib/VoucherifySdk/api/validations_api.rb +2 -2
  366. data/lib/VoucherifySdk/api/vouchers_api.rb +25 -22
  367. data/lib/VoucherifySdk/models/access_settings_campaign_assignments_list.rb +1 -1
  368. data/lib/VoucherifySdk/models/applicable_to.rb +192 -16
  369. data/lib/VoucherifySdk/models/applicable_to_order_item_units_item.rb +20 -5
  370. data/lib/VoucherifySdk/models/async_actions_list_response_body.rb +16 -5
  371. data/lib/VoucherifySdk/models/bundle.rb +267 -0
  372. data/lib/VoucherifySdk/models/bundle_identified_item.rb +296 -0
  373. data/lib/VoucherifySdk/models/bundle_missing_item.rb +274 -0
  374. data/lib/VoucherifySdk/models/campaign.rb +4 -4
  375. data/lib/VoucherifySdk/models/campaign_base.rb +4 -4
  376. data/lib/VoucherifySdk/models/campaign_loyalty_card_expiration_rules.rb +53 -10
  377. data/lib/VoucherifySdk/models/campaigns_create_request_body.rb +3 -3
  378. data/lib/VoucherifySdk/models/campaigns_create_response_body.rb +4 -4
  379. data/lib/VoucherifySdk/models/campaigns_get_response_body.rb +4 -4
  380. data/lib/VoucherifySdk/models/campaigns_import_voucher_item.rb +1 -1
  381. data/lib/VoucherifySdk/models/campaigns_summary_get_response_body.rb +673 -0
  382. data/lib/VoucherifySdk/models/campaigns_transactions_export_create_request_body.rb +209 -0
  383. data/lib/VoucherifySdk/models/campaigns_transactions_export_create_request_body_parameters.rb +256 -0
  384. data/lib/VoucherifySdk/models/campaigns_transactions_export_create_response_body.rb +334 -0
  385. data/lib/VoucherifySdk/models/campaigns_transactions_export_create_response_body_parameters.rb +256 -0
  386. data/lib/VoucherifySdk/models/campaigns_transactions_export_create_response_body_parameters_filters.rb +257 -0
  387. data/lib/VoucherifySdk/models/campaigns_transactions_export_create_response_body_parameters_filters_campaign_id.rb +209 -0
  388. data/lib/VoucherifySdk/models/campaigns_transactions_export_create_response_body_parameters_filters_campaign_id_conditions.rb +221 -0
  389. data/lib/VoucherifySdk/models/campaigns_transactions_export_create_response_body_result.rb +210 -0
  390. data/lib/VoucherifySdk/models/campaigns_transactions_list_response_body.rb +286 -0
  391. data/lib/VoucherifySdk/models/campaigns_update_request_body.rb +1 -1
  392. data/lib/VoucherifySdk/models/campaigns_update_response_body.rb +4 -4
  393. data/lib/VoucherifySdk/models/campaigns_vouchers_create_combined_response_body_gift.rb +14 -3
  394. data/lib/VoucherifySdk/models/campaigns_vouchers_create_combined_response_body_loyalty_card.rb +30 -8
  395. data/lib/VoucherifySdk/models/campaigns_vouchers_create_response_body_gift.rb +14 -3
  396. data/lib/VoucherifySdk/models/campaigns_vouchers_create_response_body_loyalty_card.rb +30 -8
  397. data/lib/VoucherifySdk/models/client_qualifications_check_eligibility_request_body.rb +12 -2
  398. data/lib/VoucherifySdk/models/client_qualifications_check_eligibility_request_body_session.rb +236 -0
  399. data/lib/VoucherifySdk/models/client_redemptions_redeem_request_body_options.rb +1 -1
  400. data/lib/VoucherifySdk/models/client_redemptions_redeem_request_body_redeemables_item_gift.rb +1 -1
  401. data/lib/VoucherifySdk/models/client_validations_validate_request_body.rb +1 -1
  402. data/lib/VoucherifySdk/models/client_validations_validate_request_body_options.rb +1 -1
  403. data/lib/VoucherifySdk/models/client_validations_validate_request_body_redeemables_item_gift.rb +1 -1
  404. data/lib/VoucherifySdk/models/client_validations_validate_response_body.rb +12 -1
  405. data/lib/VoucherifySdk/models/client_validations_validate_response_body_redeemables_item_result.rb +11 -1
  406. data/lib/VoucherifySdk/models/client_validations_validate_response_body_redeemables_item_result_discount.rb +5 -2
  407. data/lib/VoucherifySdk/models/client_validations_validate_response_body_redeemables_item_result_gift.rb +14 -3
  408. data/lib/VoucherifySdk/models/client_validations_validate_response_body_redeemables_item_result_loyalty_card.rb +1 -0
  409. data/lib/VoucherifySdk/models/create_publication_campaign.rb +3 -3
  410. data/lib/VoucherifySdk/models/customer_summary_orders.rb +4 -3
  411. data/lib/VoucherifySdk/models/customer_summary_redemptions_gift.rb +2 -2
  412. data/lib/VoucherifySdk/models/customer_with_summary_loyalty_referrals_assets.rb +18 -7
  413. data/lib/VoucherifySdk/models/customers_create_response_body_assets.rb +18 -7
  414. data/lib/VoucherifySdk/models/customers_get_response_body_assets.rb +18 -7
  415. data/lib/VoucherifySdk/models/customers_update_response_body_assets.rb +18 -7
  416. data/lib/VoucherifySdk/models/discount.rb +5 -2
  417. data/lib/VoucherifySdk/models/discount_unit_multiple_one_unit.rb +1 -1
  418. data/lib/VoucherifySdk/models/earning_rule.rb +10 -1
  419. data/lib/VoucherifySdk/models/earning_rule_expiration_rules.rb +313 -0
  420. data/lib/VoucherifySdk/models/earning_rule_loyalty.rb +12 -1
  421. data/lib/VoucherifySdk/models/earning_rule_loyalty_custom_event_metadata.rb +12 -1
  422. data/lib/VoucherifySdk/models/earning_rule_loyalty_customer_metadata.rb +12 -1
  423. data/lib/VoucherifySdk/models/earning_rule_loyalty_order_amount.rb +16 -5
  424. data/lib/VoucherifySdk/models/earning_rule_loyalty_order_items_amount.rb +31 -7
  425. data/lib/VoucherifySdk/models/earning_rule_loyalty_order_items_amount_applicable_to_item.rb +242 -0
  426. data/lib/VoucherifySdk/models/earning_rule_loyalty_order_items_quantity.rb +31 -7
  427. data/lib/VoucherifySdk/models/earning_rule_loyalty_order_items_quantity_applicable_to_item.rb +242 -0
  428. data/lib/VoucherifySdk/models/earning_rule_loyalty_order_items_subtotal_amount.rb +31 -7
  429. data/lib/VoucherifySdk/models/earning_rule_loyalty_order_items_subtotal_amount_applicable_to_item.rb +242 -0
  430. data/lib/VoucherifySdk/models/earning_rule_loyalty_order_metadata.rb +12 -1
  431. data/lib/VoucherifySdk/models/earning_rule_loyalty_order_total_amount.rb +16 -5
  432. data/lib/VoucherifySdk/models/export_campaign_transactions_filters.rb +248 -0
  433. data/lib/VoucherifySdk/models/export_parameters.rb +16 -5
  434. data/lib/VoucherifySdk/models/exports_create_request_body_parameters.rb +16 -5
  435. data/lib/VoucherifySdk/models/exports_create_response_body_parameters.rb +16 -5
  436. data/lib/VoucherifySdk/models/exports_get_response_body.rb +0 -1
  437. data/lib/VoucherifySdk/models/exports_get_response_body_parameters.rb +16 -5
  438. data/lib/VoucherifySdk/models/filter_conditions_date_time.rb +2 -2
  439. data/lib/VoucherifySdk/models/gift.rb +14 -3
  440. data/lib/VoucherifySdk/models/inapplicable_to.rb +192 -16
  441. data/lib/VoucherifySdk/models/inapplicable_to_order_item_units_item.rb +20 -5
  442. data/lib/VoucherifySdk/models/loyalties_create_campaign_request_body.rb +3 -3
  443. data/lib/VoucherifySdk/models/loyalties_create_campaign_response_body.rb +1 -1
  444. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_request_body_item.rb +22 -3
  445. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_request_body_item_loyalty.rb +12 -1
  446. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_request_body_item_loyalty_custom_event_metadata.rb +12 -1
  447. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_request_body_item_loyalty_customer_metadata.rb +12 -1
  448. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_request_body_item_loyalty_order_amount.rb +16 -5
  449. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_request_body_item_loyalty_order_items_amount.rb +31 -7
  450. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_request_body_item_loyalty_order_items_amount_applicable_to_item.rb +242 -0
  451. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_request_body_item_loyalty_order_items_quantity.rb +31 -7
  452. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_request_body_item_loyalty_order_items_quantity_applicable_to_item.rb +242 -0
  453. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_request_body_item_loyalty_order_items_subtotal_amount.rb +31 -7
  454. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_request_body_item_loyalty_order_metadata.rb +12 -1
  455. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_request_body_item_loyalty_order_total_amount.rb +16 -5
  456. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_request_body_item_order_items_subtotal_amount_applicable_to_item.rb +242 -0
  457. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_request_body_item_pending_points.rb +257 -0
  458. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_response_body.rb +10 -1
  459. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_response_body_loyalty.rb +12 -1
  460. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_response_body_loyalty_custom_event_metadata.rb +12 -1
  461. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_response_body_loyalty_customer_metadata.rb +12 -1
  462. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_response_body_loyalty_order_amount.rb +16 -5
  463. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_response_body_loyalty_order_items_amount.rb +31 -7
  464. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_response_body_loyalty_order_items_amount_applicable_to_item.rb +242 -0
  465. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_response_body_loyalty_order_items_quantity.rb +31 -7
  466. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_response_body_loyalty_order_items_quantity_applicable_to_item.rb +242 -0
  467. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_response_body_loyalty_order_items_subtotal_amount.rb +31 -7
  468. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_response_body_loyalty_order_metadata.rb +12 -1
  469. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_response_body_loyalty_order_total_amount.rb +16 -5
  470. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_response_body_order_items_subtotal_amount_applicable_to_item.rb +242 -0
  471. data/lib/VoucherifySdk/models/loyalties_earning_rules_disable_response_body.rb +10 -1
  472. data/lib/VoucherifySdk/models/loyalties_earning_rules_disable_response_body_loyalty.rb +12 -1
  473. data/lib/VoucherifySdk/models/loyalties_earning_rules_disable_response_body_loyalty_custom_event_metadata.rb +12 -1
  474. data/lib/VoucherifySdk/models/loyalties_earning_rules_disable_response_body_loyalty_customer_metadata.rb +12 -1
  475. data/lib/VoucherifySdk/models/loyalties_earning_rules_disable_response_body_loyalty_order_amount.rb +16 -5
  476. data/lib/VoucherifySdk/models/loyalties_earning_rules_disable_response_body_loyalty_order_items_amount.rb +31 -7
  477. data/lib/VoucherifySdk/models/loyalties_earning_rules_disable_response_body_loyalty_order_items_amount_applicable_to_item.rb +242 -0
  478. data/lib/VoucherifySdk/models/loyalties_earning_rules_disable_response_body_loyalty_order_items_quantity.rb +31 -7
  479. data/lib/VoucherifySdk/models/loyalties_earning_rules_disable_response_body_loyalty_order_items_quantity_applicable_to_item.rb +242 -0
  480. data/lib/VoucherifySdk/models/loyalties_earning_rules_disable_response_body_loyalty_order_items_subtotal_amount.rb +31 -7
  481. data/lib/VoucherifySdk/models/loyalties_earning_rules_disable_response_body_loyalty_order_metadata.rb +12 -1
  482. data/lib/VoucherifySdk/models/loyalties_earning_rules_disable_response_body_loyalty_order_total_amount.rb +16 -5
  483. data/lib/VoucherifySdk/models/loyalties_earning_rules_disable_response_body_order_items_subtotal_amount_applicable_to_item.rb +242 -0
  484. data/lib/VoucherifySdk/models/loyalties_earning_rules_enable_response_body.rb +10 -1
  485. data/lib/VoucherifySdk/models/loyalties_earning_rules_enable_response_body_loyalty.rb +12 -1
  486. data/lib/VoucherifySdk/models/loyalties_earning_rules_enable_response_body_loyalty_custom_event_metadata.rb +12 -1
  487. data/lib/VoucherifySdk/models/loyalties_earning_rules_enable_response_body_loyalty_customer_metadata.rb +12 -1
  488. data/lib/VoucherifySdk/models/loyalties_earning_rules_enable_response_body_loyalty_order_amount.rb +16 -5
  489. data/lib/VoucherifySdk/models/loyalties_earning_rules_enable_response_body_loyalty_order_items_amount.rb +31 -7
  490. data/lib/VoucherifySdk/models/loyalties_earning_rules_enable_response_body_loyalty_order_items_amount_applicable_to_item.rb +242 -0
  491. data/lib/VoucherifySdk/models/loyalties_earning_rules_enable_response_body_loyalty_order_items_quantity.rb +31 -7
  492. data/lib/VoucherifySdk/models/loyalties_earning_rules_enable_response_body_loyalty_order_items_quantity_applicable_to_item.rb +242 -0
  493. data/lib/VoucherifySdk/models/loyalties_earning_rules_enable_response_body_loyalty_order_items_subtotal_amount.rb +31 -7
  494. data/lib/VoucherifySdk/models/loyalties_earning_rules_enable_response_body_loyalty_order_metadata.rb +12 -1
  495. data/lib/VoucherifySdk/models/loyalties_earning_rules_enable_response_body_loyalty_order_total_amount.rb +16 -5
  496. data/lib/VoucherifySdk/models/loyalties_earning_rules_enable_response_body_order_items_subtotal_amount_applicable_to_item.rb +242 -0
  497. data/lib/VoucherifySdk/models/loyalties_earning_rules_get_response_body.rb +10 -1
  498. data/lib/VoucherifySdk/models/loyalties_earning_rules_get_response_body_loyalty.rb +12 -1
  499. data/lib/VoucherifySdk/models/loyalties_earning_rules_get_response_body_loyalty_custom_event_metadata.rb +12 -1
  500. data/lib/VoucherifySdk/models/loyalties_earning_rules_get_response_body_loyalty_customer_metadata.rb +12 -1
  501. data/lib/VoucherifySdk/models/loyalties_earning_rules_get_response_body_loyalty_order_amount.rb +16 -5
  502. data/lib/VoucherifySdk/models/loyalties_earning_rules_get_response_body_loyalty_order_items_amount.rb +31 -7
  503. data/lib/VoucherifySdk/models/loyalties_earning_rules_get_response_body_loyalty_order_items_amount_applicable_to_item.rb +242 -0
  504. data/lib/VoucherifySdk/models/loyalties_earning_rules_get_response_body_loyalty_order_items_quantity.rb +31 -7
  505. data/lib/VoucherifySdk/models/loyalties_earning_rules_get_response_body_loyalty_order_items_quantity_applicable_to_item.rb +242 -0
  506. data/lib/VoucherifySdk/models/loyalties_earning_rules_get_response_body_loyalty_order_items_subtotal_amount.rb +31 -7
  507. data/lib/VoucherifySdk/models/loyalties_earning_rules_get_response_body_loyalty_order_items_subtotal_amount_applicable_to_item.rb +242 -0
  508. data/lib/VoucherifySdk/models/loyalties_earning_rules_get_response_body_loyalty_order_metadata.rb +12 -1
  509. data/lib/VoucherifySdk/models/loyalties_earning_rules_get_response_body_loyalty_order_total_amount.rb +16 -5
  510. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_request_body.rb +22 -3
  511. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_request_body_loyalty.rb +12 -1
  512. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_request_body_loyalty_custom_event_metadata.rb +12 -1
  513. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_request_body_loyalty_customer_metadata.rb +12 -1
  514. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_request_body_loyalty_order_amount.rb +16 -5
  515. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_request_body_loyalty_order_items_amount.rb +31 -7
  516. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_request_body_loyalty_order_items_amount_applicable_to_item.rb +242 -0
  517. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_request_body_loyalty_order_items_quantity.rb +31 -7
  518. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_request_body_loyalty_order_items_quantity_applicable_to_item.rb +242 -0
  519. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_request_body_loyalty_order_items_subtotal_amount.rb +31 -7
  520. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_request_body_loyalty_order_metadata.rb +12 -1
  521. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_request_body_loyalty_order_total_amount.rb +16 -5
  522. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_request_body_order_items_subtotal_amount_applicable_to_item.rb +242 -0
  523. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_request_body_pending_points.rb +257 -0
  524. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_response_body.rb +10 -1
  525. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_response_body_loyalty.rb +12 -1
  526. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_response_body_loyalty_custom_event_metadata.rb +12 -1
  527. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_response_body_loyalty_customer_metadata.rb +12 -1
  528. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_response_body_loyalty_order_amount.rb +16 -5
  529. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_response_body_loyalty_order_items_amount.rb +31 -7
  530. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_response_body_loyalty_order_items_amount_applicable_to_item.rb +242 -0
  531. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_response_body_loyalty_order_items_quantity.rb +31 -7
  532. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_response_body_loyalty_order_items_quantity_applicable_to_item.rb +242 -0
  533. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_response_body_loyalty_order_items_subtotal_amount.rb +31 -7
  534. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_response_body_loyalty_order_metadata.rb +12 -1
  535. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_response_body_loyalty_order_total_amount.rb +16 -5
  536. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_response_body_order_items_subtotal_amount_applicable_to_item.rb +242 -0
  537. data/lib/VoucherifySdk/models/loyalties_get_campaign_response_body.rb +1 -1
  538. data/lib/VoucherifySdk/models/loyalties_members_create_response_body_loyalty_card.rb +30 -8
  539. data/lib/VoucherifySdk/models/loyalties_members_create_response_body_publish.rb +1 -1
  540. data/lib/VoucherifySdk/models/loyalties_members_get_response_body_loyalty_card.rb +30 -8
  541. data/lib/VoucherifySdk/models/loyalties_members_get_response_body_publish.rb +1 -1
  542. data/lib/VoucherifySdk/models/loyalties_members_pending_points_activate_response_body.rb +1 -1
  543. data/lib/VoucherifySdk/models/loyalties_members_pending_points_balance_request_body.rb +210 -0
  544. data/lib/VoucherifySdk/models/loyalties_members_pending_points_balance_response_body.rb +283 -0
  545. data/lib/VoucherifySdk/models/loyalties_members_pending_points_balance_response_body_related_object.rb +247 -0
  546. data/lib/VoucherifySdk/models/loyalties_members_points_expiration_list_response_body_data_item.rb +1 -1
  547. data/lib/VoucherifySdk/models/loyalties_members_redemption_redeem_request_body.rb +1 -1
  548. data/lib/VoucherifySdk/models/loyalties_members_redemption_redeem_response_body.rb +11 -1
  549. data/lib/VoucherifySdk/models/loyalties_members_redemption_redeem_response_body_related_redemptions_rollbacks_item.rb +38 -4
  550. data/lib/VoucherifySdk/models/loyalties_members_redemption_redeem_response_body_session.rb +210 -0
  551. data/lib/VoucherifySdk/models/loyalties_members_redemption_redeem_response_body_voucher_gift.rb +14 -3
  552. data/lib/VoucherifySdk/models/loyalties_members_redemption_redeem_response_body_voucher_loyalty_card.rb +30 -8
  553. data/lib/VoucherifySdk/models/loyalties_members_transfers_create_response_body_loyalty_card.rb +30 -8
  554. data/lib/VoucherifySdk/models/loyalties_points_expiration_export_create_request_body_parameters.rb +1 -1
  555. data/lib/VoucherifySdk/models/loyalties_reward_assignments_reward_get_response_body.rb +1 -1
  556. data/lib/VoucherifySdk/models/loyalties_transactions_export_create_request_body.rb +209 -0
  557. data/lib/VoucherifySdk/models/loyalties_transactions_export_create_request_body_parameters.rb +256 -0
  558. data/lib/VoucherifySdk/models/loyalties_transactions_list_response_body.rb +286 -0
  559. data/lib/VoucherifySdk/models/loyalties_update_campaign_request_body.rb +1 -1
  560. data/lib/VoucherifySdk/models/loyalties_update_campaign_response_body.rb +1 -1
  561. data/lib/VoucherifySdk/models/loyalty_campaign.rb +1 -1
  562. data/lib/VoucherifySdk/models/loyalty_card_transaction.rb +1 -1
  563. data/lib/VoucherifySdk/models/loyalty_card_transaction_details_balance.rb +12 -1
  564. data/lib/VoucherifySdk/models/loyalty_member_loyalty_card.rb +30 -8
  565. data/lib/VoucherifySdk/models/loyalty_member_publish.rb +1 -1
  566. data/lib/VoucherifySdk/models/loyalty_points_bucket.rb +1 -1
  567. data/lib/VoucherifySdk/models/loyalty_tiers_expiration_all.rb +1 -1
  568. data/lib/VoucherifySdk/models/management_projects_stacking_rules.rb +112 -9
  569. data/lib/VoucherifySdk/models/management_projects_stacking_rules_create_request_body.rb +116 -13
  570. data/lib/VoucherifySdk/models/management_projects_stacking_rules_create_response_body.rb +112 -9
  571. data/lib/VoucherifySdk/models/management_projects_stacking_rules_get_response_body.rb +112 -9
  572. data/lib/VoucherifySdk/models/management_projects_stacking_rules_update_request_body.rb +116 -13
  573. data/lib/VoucherifySdk/models/management_projects_stacking_rules_update_response_body.rb +112 -9
  574. data/lib/VoucherifySdk/models/management_projects_users_invite_create_request_body.rb +1 -1
  575. data/lib/VoucherifySdk/models/management_projects_users_update_role_request_body.rb +1 -1
  576. data/lib/VoucherifySdk/models/order.rb +1 -1
  577. data/lib/VoucherifySdk/models/order_calculated_item.rb +1 -1
  578. data/lib/VoucherifySdk/models/order_item.rb +1 -1
  579. data/lib/VoucherifySdk/models/orders_create_request_body.rb +1 -1
  580. data/lib/VoucherifySdk/models/orders_import_create_request_body_item.rb +15 -15
  581. data/lib/VoucherifySdk/models/orders_update_request_body.rb +1 -1
  582. data/lib/VoucherifySdk/models/parameter_filters_list_campaigns_campaign_status.rb +2 -1
  583. data/lib/VoucherifySdk/models/parameter_filters_list_campaigns_campaign_status_conditions.rb +1 -0
  584. data/lib/VoucherifySdk/models/parameter_filters_list_campaigns_category_ids.rb +1 -1
  585. data/lib/VoucherifySdk/models/parameter_filters_list_campaigns_is_referral_code.rb +1 -1
  586. data/lib/VoucherifySdk/models/parameters_filters_list_campaign_transactions.rb +247 -0
  587. data/lib/VoucherifySdk/models/product_collections_create_request_body.rb +2 -4
  588. data/lib/VoucherifySdk/models/products_skus_create_request_body.rb +1 -1
  589. data/lib/VoucherifySdk/models/products_skus_create_response_body.rb +1 -1
  590. data/lib/VoucherifySdk/models/products_skus_list_response_body.rb +1 -1
  591. data/lib/VoucherifySdk/models/products_skus_update_request_body.rb +1 -1
  592. data/lib/VoucherifySdk/models/promotion_tier_campaign.rb +1 -1
  593. data/lib/VoucherifySdk/models/promotions_tiers_create_response_body_campaign.rb +1 -1
  594. data/lib/VoucherifySdk/models/promotions_tiers_disable_response_body_campaign.rb +1 -1
  595. data/lib/VoucherifySdk/models/promotions_tiers_enable_response_body_campaign.rb +1 -1
  596. data/lib/VoucherifySdk/models/promotions_tiers_get_response_body_campaign.rb +1 -1
  597. data/lib/VoucherifySdk/models/promotions_tiers_update_response_body_campaign.rb +1 -1
  598. data/lib/VoucherifySdk/models/qualifications_check_eligibility_request_body.rb +12 -2
  599. data/lib/VoucherifySdk/models/qualifications_check_eligibility_request_body_session.rb +236 -0
  600. data/lib/VoucherifySdk/models/qualifications_option.rb +1 -1
  601. data/lib/VoucherifySdk/models/qualifications_option_filters_resource_type_conditions.rb +1 -1
  602. data/lib/VoucherifySdk/models/qualifications_redeemable.rb +1 -1
  603. data/lib/VoucherifySdk/models/qualifications_redeemable_base.rb +1 -1
  604. data/lib/VoucherifySdk/models/redeemable_gift.rb +18 -7
  605. data/lib/VoucherifySdk/models/redeemable_loyalty_card.rb +2 -2
  606. data/lib/VoucherifySdk/models/redeemable_result.rb +10 -1
  607. data/lib/VoucherifySdk/models/redeemable_voucher_gift.rb +14 -3
  608. data/lib/VoucherifySdk/models/redeemable_voucher_loyalty_card.rb +30 -8
  609. data/lib/VoucherifySdk/models/redeemable_voucher_publish.rb +1 -1
  610. data/lib/VoucherifySdk/models/redemption.rb +11 -1
  611. data/lib/VoucherifySdk/models/redemption_entry.rb +11 -1
  612. data/lib/VoucherifySdk/models/redemption_entry_promotion_tier_campaign.rb +1 -1
  613. data/lib/VoucherifySdk/models/redemption_entry_related_redemptions_rollbacks_item.rb +38 -4
  614. data/lib/VoucherifySdk/models/redemption_entry_session.rb +210 -0
  615. data/lib/VoucherifySdk/models/redemption_entry_voucher_gift.rb +14 -3
  616. data/lib/VoucherifySdk/models/redemption_entry_voucher_loyalty_card.rb +30 -8
  617. data/lib/VoucherifySdk/models/redemption_related_redemptions_rollbacks_item.rb +38 -4
  618. data/lib/VoucherifySdk/models/redemption_reward_result_parameters_campaign.rb +1 -1
  619. data/lib/VoucherifySdk/models/redemption_rollback.rb +15 -15
  620. data/lib/VoucherifySdk/models/redemption_session.rb +210 -0
  621. data/lib/VoucherifySdk/models/redemption_voucher_gift.rb +14 -3
  622. data/lib/VoucherifySdk/models/redemption_voucher_loyalty_card.rb +30 -8
  623. data/lib/VoucherifySdk/models/redemptions_get_response_body.rb +11 -1
  624. data/lib/VoucherifySdk/models/redemptions_get_response_body_promotion_tier_campaign.rb +1 -1
  625. data/lib/VoucherifySdk/models/redemptions_get_response_body_related_redemptions_rollbacks_item.rb +38 -4
  626. data/lib/VoucherifySdk/models/redemptions_get_response_body_session.rb +210 -0
  627. data/lib/VoucherifySdk/models/redemptions_get_response_body_voucher_gift.rb +14 -3
  628. data/lib/VoucherifySdk/models/redemptions_get_response_body_voucher_loyalty_card.rb +30 -8
  629. data/lib/VoucherifySdk/models/redemptions_list_response_body_redemptions_item.rb +11 -1
  630. data/lib/VoucherifySdk/models/redemptions_list_response_body_redemptions_item_promotion_tier_campaign.rb +1 -1
  631. data/lib/VoucherifySdk/models/redemptions_list_response_body_redemptions_item_related_redemptions.rb +0 -1
  632. data/lib/VoucherifySdk/models/redemptions_list_response_body_redemptions_item_related_redemptions_rollbacks_item.rb +38 -4
  633. data/lib/VoucherifySdk/models/redemptions_list_response_body_redemptions_item_session.rb +210 -0
  634. data/lib/VoucherifySdk/models/redemptions_list_response_body_redemptions_item_voucher_gift.rb +14 -3
  635. data/lib/VoucherifySdk/models/redemptions_list_response_body_redemptions_item_voucher_loyalty_card.rb +30 -8
  636. data/lib/VoucherifySdk/models/redemptions_redeem_request_body_options.rb +1 -1
  637. data/lib/VoucherifySdk/models/redemptions_redeem_request_body_redeemables_item_gift.rb +1 -1
  638. data/lib/VoucherifySdk/models/redemptions_rollback_create_response_body.rb +15 -15
  639. data/lib/VoucherifySdk/models/reward.rb +1 -1
  640. data/lib/VoucherifySdk/models/rewards_create_request_body.rb +1 -1
  641. data/lib/VoucherifySdk/models/rewards_create_request_body_parameters_campaign.rb +1 -1
  642. data/lib/VoucherifySdk/models/rewards_create_response_body.rb +1 -1
  643. data/lib/VoucherifySdk/models/rewards_update_request_body.rb +1 -1
  644. data/lib/VoucherifySdk/models/rewards_update_request_body_parameters_campaign.rb +1 -1
  645. data/lib/VoucherifySdk/models/rewards_update_response_body.rb +1 -1
  646. data/lib/VoucherifySdk/models/segments_create_request_body.rb +2 -2
  647. data/lib/VoucherifySdk/models/segments_create_response_body.rb +31 -20
  648. data/lib/VoucherifySdk/models/segments_get_response_body.rb +32 -21
  649. data/lib/VoucherifySdk/models/simple_loyalty_card.rb +30 -8
  650. data/lib/VoucherifySdk/models/simple_voucher_redemption.rb +16 -5
  651. data/lib/VoucherifySdk/models/stacking_rules.rb +72 -20
  652. data/lib/VoucherifySdk/models/templates_campaigns_campaign_setup_create_request_body.rb +3 -3
  653. data/lib/VoucherifySdk/models/trash_bin_item.rb +1 -1
  654. data/lib/VoucherifySdk/models/validation_rule.rb +11 -1
  655. data/lib/VoucherifySdk/models/validation_rules_create_request_body.rb +11 -1
  656. data/lib/VoucherifySdk/models/validation_rules_create_response_body.rb +11 -1
  657. data/lib/VoucherifySdk/models/validation_rules_get_response_body.rb +11 -1
  658. data/lib/VoucherifySdk/models/validation_rules_update_request_body.rb +11 -1
  659. data/lib/VoucherifySdk/models/validation_rules_update_response_body.rb +11 -1
  660. data/lib/VoucherifySdk/models/validations_redeemable_inapplicable_result.rb +14 -5
  661. data/lib/VoucherifySdk/models/validations_validate_request_body.rb +1 -1
  662. data/lib/VoucherifySdk/models/validations_validate_request_body_options.rb +1 -1
  663. data/lib/VoucherifySdk/models/validations_validate_request_body_redeemables_item_gift.rb +1 -1
  664. data/lib/VoucherifySdk/models/validations_validate_response_body.rb +12 -1
  665. data/lib/VoucherifySdk/models/validations_validate_response_body_redeemables_item_result.rb +11 -1
  666. data/lib/VoucherifySdk/models/validations_validate_response_body_redeemables_item_result_discount.rb +5 -2
  667. data/lib/VoucherifySdk/models/validations_validate_response_body_redeemables_item_result_gift.rb +14 -3
  668. data/lib/VoucherifySdk/models/validations_validate_response_body_redeemables_item_result_loyalty_card.rb +1 -0
  669. data/lib/VoucherifySdk/models/validity_hours.rb +1 -1
  670. data/lib/VoucherifySdk/models/validity_hours_daily_item.rb +1 -1
  671. data/lib/VoucherifySdk/models/voucher_balance.rb +12 -1
  672. data/lib/VoucherifySdk/models/voucher_gift.rb +14 -3
  673. data/lib/VoucherifySdk/models/voucher_loyalty_card.rb +30 -8
  674. data/lib/VoucherifySdk/models/voucher_transaction.rb +1 -1
  675. data/lib/VoucherifySdk/models/voucher_transaction_details_balance.rb +12 -1
  676. data/lib/VoucherifySdk/models/voucher_transactions_export_parameters.rb +1 -1
  677. data/lib/VoucherifySdk/models/voucher_transactions_filters.rb +1 -1
  678. data/lib/VoucherifySdk/models/voucher_with_categories_gift.rb +14 -3
  679. data/lib/VoucherifySdk/models/voucher_with_categories_loyalty_card.rb +30 -8
  680. data/lib/VoucherifySdk/models/vouchers_balance_update_request_body.rb +1 -1
  681. data/lib/VoucherifySdk/models/vouchers_balance_update_response_body.rb +2 -2
  682. data/lib/VoucherifySdk/models/vouchers_create_request_body.rb +2 -2
  683. data/lib/VoucherifySdk/models/vouchers_create_response_body_gift.rb +14 -3
  684. data/lib/VoucherifySdk/models/vouchers_create_response_body_loyalty_card.rb +30 -8
  685. data/lib/VoucherifySdk/models/vouchers_create_with_specific_code_request_body.rb +2 -2
  686. data/lib/VoucherifySdk/models/vouchers_disable_response_body_gift.rb +14 -3
  687. data/lib/VoucherifySdk/models/vouchers_disable_response_body_loyalty_card.rb +30 -8
  688. data/lib/VoucherifySdk/models/vouchers_enable_response_body_gift.rb +14 -3
  689. data/lib/VoucherifySdk/models/vouchers_enable_response_body_loyalty_card.rb +30 -8
  690. data/lib/VoucherifySdk/models/vouchers_get_response_body_gift.rb +14 -3
  691. data/lib/VoucherifySdk/models/vouchers_get_response_body_loyalty_card.rb +30 -8
  692. data/lib/VoucherifySdk/models/vouchers_import_create_item_request_body.rb +1 -1
  693. data/lib/VoucherifySdk/models/vouchers_transactions_export_create_response_body_result.rb +1 -1
  694. data/lib/VoucherifySdk/models/vouchers_update_request_body.rb +2 -2
  695. data/lib/VoucherifySdk/models/vouchers_update_response_body_gift.rb +14 -3
  696. data/lib/VoucherifySdk/models/vouchers_update_response_body_loyalty_card.rb +30 -8
  697. data/lib/VoucherifySdk/version.rb +1 -1
  698. data/lib/VoucherifySdk.rb +55 -0
  699. metadata +147 -33
@@ -22,10 +22,10 @@ module VoucherifySdk
22
22
  # An optional field to keep any extra textual information about the campaign such as a campaign description and details.
23
23
  attr_accessor :description
24
24
 
25
- # Defines whether the campaign can be updated with new vouchers after campaign creation or if the campaign consists of standalone vouchers. - `AUTO_UPDATE`: the campaign is dynamic, i.e. vouchers will generate based on set criteria - `STATIC`: vouchers need to be manually published
25
+ # Defines whether the campaign can be updated with new vouchers after campaign creation or if the campaign consists of generic (standalone) vouchers. - `AUTO_UPDATE`: the campaign is dynamic, i.e. vouchers will generate based on set criteria - `STATIC`: vouchers need to be manually published - `STANDALONE`: the campaign is a generic (standalone) one with a single voucher for public use (only for discount and gift card campaigns)
26
26
  attr_accessor :type
27
27
 
28
- # If this value is set to `true`, customers will be able to join the campaign only once.
28
+ # If this value is set to `true`, customers will be able to join the campaign only once. For loyalty campaigns, it's forced to `true`, even if `join_once: false` is passed in the request.
29
29
  attr_accessor :join_once
30
30
 
31
31
  # Indicates whether customers will be able to auto-join a loyalty campaign if any earning rule is fulfilled.
@@ -256,7 +256,7 @@ module VoucherifySdk
256
256
  # @return true if the model is valid
257
257
  def valid?
258
258
  warn '[DEPRECATED] the `valid?` method is obsolete'
259
- type_validator = EnumAttributeValidator.new('String', ["AUTO_UPDATE", "STATIC"])
259
+ type_validator = EnumAttributeValidator.new('String', ["AUTO_UPDATE", "STATIC", "STANDALONE"])
260
260
  return false unless type_validator.valid?(@type)
261
261
  true
262
262
  end
@@ -34,7 +34,7 @@ module VoucherifySdk
34
34
  # Name of the resouce moved to the bin. It is the name of the campaign, product or SKU, or the voucher code.
35
35
  attr_accessor :resource_name
36
36
 
37
- # Unique identifier of the parent resource. For a voucher, it is a campaign ID, except for standalone vouchers. For an SKU, it is the product ID. It returns `null` for campaigns and base products.
37
+ # Unique identifier of the parent resource. For a voucher, it is a campaign ID, except for generic (standalone) vouchers. For an SKU, it is the product ID. It returns `null` for campaigns and base products.
38
38
  attr_accessor :resource_parent_id
39
39
 
40
40
  # The type of the object represented by JSON. It is equal to the `resource_type`.
@@ -21,6 +21,9 @@ module VoucherifySdk
21
21
  # Contains all the rule definitions for the validation rule. It is a set of key value pairs representing the rules and logic between the rules. The keys are numbered consecutively beginning from `1`. The values are objects containing the rule conditions.
22
22
  attr_accessor :rules
23
23
 
24
+ # Contains all the definitions for the bundle rules. It is a set of key value pairs representing the rules and logic between them. The keys are numbered consecutively beginning from `1`. The values are objects containing the rule conditions. While updating with the PUT method, you can pass `\"bundle_rules\": null` to delete the configuration; in the response, an empty object is then returned.
25
+ attr_accessor :bundle_rules
26
+
24
27
  attr_accessor :error
25
28
 
26
29
  attr_accessor :applicable_to
@@ -73,6 +76,7 @@ module VoucherifySdk
73
76
  {
74
77
  :'name' => :'name',
75
78
  :'rules' => :'rules',
79
+ :'bundle_rules' => :'bundle_rules',
76
80
  :'error' => :'error',
77
81
  :'applicable_to' => :'applicable_to',
78
82
  :'type' => :'type',
@@ -95,6 +99,7 @@ module VoucherifySdk
95
99
  {
96
100
  :'name' => :'String',
97
101
  :'rules' => :'Object',
102
+ :'bundle_rules' => :'Object',
98
103
  :'error' => :'ValidationRuleError',
99
104
  :'applicable_to' => :'ValidationRuleApplicableTo',
100
105
  :'type' => :'String',
@@ -139,6 +144,10 @@ module VoucherifySdk
139
144
  self.rules = attributes[:'rules']
140
145
  end
141
146
 
147
+ if attributes.key?(:'bundle_rules')
148
+ self.bundle_rules = attributes[:'bundle_rules']
149
+ end
150
+
142
151
  if attributes.key?(:'error')
143
152
  self.error = attributes[:'error']
144
153
  end
@@ -208,6 +217,7 @@ module VoucherifySdk
208
217
  self.class == o.class &&
209
218
  name == o.name &&
210
219
  rules == o.rules &&
220
+ bundle_rules == o.bundle_rules &&
211
221
  error == o.error &&
212
222
  applicable_to == o.applicable_to &&
213
223
  type == o.type &&
@@ -228,7 +238,7 @@ module VoucherifySdk
228
238
  # Calculates hash code according to all attributes.
229
239
  # @return [Integer] Hash code
230
240
  def hash
231
- [name, rules, error, applicable_to, type, context_type, id, created_at, updated_at, assignments_count, object].hash
241
+ [name, rules, bundle_rules, error, applicable_to, type, context_type, id, created_at, updated_at, assignments_count, object].hash
232
242
  end
233
243
 
234
244
  # Builds the object from hash
@@ -22,6 +22,9 @@ module VoucherifySdk
22
22
  # Contains all the rule definitions for the validation rule. It is a set of key value pairs representing the rules and logic between the rules. The keys are numbered consecutively beginning from `1`. The values are objects containing the rule conditions.
23
23
  attr_accessor :rules
24
24
 
25
+ # Contains all the definitions for the bundle rules. It is a set of key value pairs representing the rules and logic between them. The keys are numbered consecutively beginning from `1`. The values are objects containing the rule conditions. While updating with the PUT method, you can pass `\"bundle_rules\": null` to delete the configuration; in the response, an empty object is then returned.
26
+ attr_accessor :bundle_rules
27
+
25
28
  attr_accessor :error
26
29
 
27
30
  attr_accessor :applicable_to
@@ -59,6 +62,7 @@ module VoucherifySdk
59
62
  {
60
63
  :'name' => :'name',
61
64
  :'rules' => :'rules',
65
+ :'bundle_rules' => :'bundle_rules',
62
66
  :'error' => :'error',
63
67
  :'applicable_to' => :'applicable_to',
64
68
  :'type' => :'type',
@@ -76,6 +80,7 @@ module VoucherifySdk
76
80
  {
77
81
  :'name' => :'String',
78
82
  :'rules' => :'Object',
83
+ :'bundle_rules' => :'Object',
79
84
  :'error' => :'ValidationRulesCreateRequestBodyError',
80
85
  :'applicable_to' => :'ValidationRulesCreateRequestBodyApplicableTo',
81
86
  :'type' => :'String',
@@ -110,6 +115,10 @@ module VoucherifySdk
110
115
  self.rules = attributes[:'rules']
111
116
  end
112
117
 
118
+ if attributes.key?(:'bundle_rules')
119
+ self.bundle_rules = attributes[:'bundle_rules']
120
+ end
121
+
113
122
  if attributes.key?(:'error')
114
123
  self.error = attributes[:'error']
115
124
  end
@@ -157,6 +166,7 @@ module VoucherifySdk
157
166
  self.class == o.class &&
158
167
  name == o.name &&
159
168
  rules == o.rules &&
169
+ bundle_rules == o.bundle_rules &&
160
170
  error == o.error &&
161
171
  applicable_to == o.applicable_to &&
162
172
  type == o.type &&
@@ -172,7 +182,7 @@ module VoucherifySdk
172
182
  # Calculates hash code according to all attributes.
173
183
  # @return [Integer] Hash code
174
184
  def hash
175
- [name, rules, error, applicable_to, type, context_type].hash
185
+ [name, rules, bundle_rules, error, applicable_to, type, context_type].hash
176
186
  end
177
187
 
178
188
  # Builds the object from hash
@@ -22,6 +22,9 @@ module VoucherifySdk
22
22
  # Contains all the rule definitions for the validation rule. It is a set of key value pairs representing the rules and logic between the rules. The keys are numbered consecutively beginning from `1`. The values are objects containing the rule conditions.
23
23
  attr_accessor :rules
24
24
 
25
+ # Contains all the definitions for the bundle rules. It is a set of key value pairs representing the rules and logic between them. The keys are numbered consecutively beginning from `1`. The values are objects containing the rule conditions. While updating with the PUT method, you can pass `\"bundle_rules\": null` to delete the configuration; in the response, an empty object is then returned.
26
+ attr_accessor :bundle_rules
27
+
25
28
  attr_accessor :error
26
29
 
27
30
  attr_accessor :applicable_to
@@ -74,6 +77,7 @@ module VoucherifySdk
74
77
  {
75
78
  :'name' => :'name',
76
79
  :'rules' => :'rules',
80
+ :'bundle_rules' => :'bundle_rules',
77
81
  :'error' => :'error',
78
82
  :'applicable_to' => :'applicable_to',
79
83
  :'type' => :'type',
@@ -96,6 +100,7 @@ module VoucherifySdk
96
100
  {
97
101
  :'name' => :'String',
98
102
  :'rules' => :'Object',
103
+ :'bundle_rules' => :'Object',
99
104
  :'error' => :'ValidationRulesCreateResponseBodyError',
100
105
  :'applicable_to' => :'ValidationRulesCreateResponseBodyApplicableTo',
101
106
  :'type' => :'String',
@@ -140,6 +145,10 @@ module VoucherifySdk
140
145
  self.rules = attributes[:'rules']
141
146
  end
142
147
 
148
+ if attributes.key?(:'bundle_rules')
149
+ self.bundle_rules = attributes[:'bundle_rules']
150
+ end
151
+
143
152
  if attributes.key?(:'error')
144
153
  self.error = attributes[:'error']
145
154
  end
@@ -209,6 +218,7 @@ module VoucherifySdk
209
218
  self.class == o.class &&
210
219
  name == o.name &&
211
220
  rules == o.rules &&
221
+ bundle_rules == o.bundle_rules &&
212
222
  error == o.error &&
213
223
  applicable_to == o.applicable_to &&
214
224
  type == o.type &&
@@ -229,7 +239,7 @@ module VoucherifySdk
229
239
  # Calculates hash code according to all attributes.
230
240
  # @return [Integer] Hash code
231
241
  def hash
232
- [name, rules, error, applicable_to, type, context_type, id, created_at, updated_at, assignments_count, object].hash
242
+ [name, rules, bundle_rules, error, applicable_to, type, context_type, id, created_at, updated_at, assignments_count, object].hash
233
243
  end
234
244
 
235
245
  # Builds the object from hash
@@ -22,6 +22,9 @@ module VoucherifySdk
22
22
  # Contains all the rule definitions for the validation rule. It is a set of key value pairs representing the rules and logic between the rules. The keys are numbered consecutively beginning from `1`. The values are objects containing the rule conditions.
23
23
  attr_accessor :rules
24
24
 
25
+ # Contains all the definitions for the bundle rules. It is a set of key value pairs representing the rules and logic between them. The keys are numbered consecutively beginning from `1`. The values are objects containing the rule conditions. While updating with the PUT method, you can pass `\"bundle_rules\": null` to delete the configuration; in the response, an empty object is then returned.
26
+ attr_accessor :bundle_rules
27
+
25
28
  attr_accessor :error
26
29
 
27
30
  attr_accessor :applicable_to
@@ -74,6 +77,7 @@ module VoucherifySdk
74
77
  {
75
78
  :'name' => :'name',
76
79
  :'rules' => :'rules',
80
+ :'bundle_rules' => :'bundle_rules',
77
81
  :'error' => :'error',
78
82
  :'applicable_to' => :'applicable_to',
79
83
  :'type' => :'type',
@@ -96,6 +100,7 @@ module VoucherifySdk
96
100
  {
97
101
  :'name' => :'String',
98
102
  :'rules' => :'Object',
103
+ :'bundle_rules' => :'Object',
99
104
  :'error' => :'ValidationRulesGetResponseBodyError',
100
105
  :'applicable_to' => :'ValidationRulesGetResponseBodyApplicableTo',
101
106
  :'type' => :'String',
@@ -140,6 +145,10 @@ module VoucherifySdk
140
145
  self.rules = attributes[:'rules']
141
146
  end
142
147
 
148
+ if attributes.key?(:'bundle_rules')
149
+ self.bundle_rules = attributes[:'bundle_rules']
150
+ end
151
+
143
152
  if attributes.key?(:'error')
144
153
  self.error = attributes[:'error']
145
154
  end
@@ -209,6 +218,7 @@ module VoucherifySdk
209
218
  self.class == o.class &&
210
219
  name == o.name &&
211
220
  rules == o.rules &&
221
+ bundle_rules == o.bundle_rules &&
212
222
  error == o.error &&
213
223
  applicable_to == o.applicable_to &&
214
224
  type == o.type &&
@@ -229,7 +239,7 @@ module VoucherifySdk
229
239
  # Calculates hash code according to all attributes.
230
240
  # @return [Integer] Hash code
231
241
  def hash
232
- [name, rules, error, applicable_to, type, context_type, id, created_at, updated_at, assignments_count, object].hash
242
+ [name, rules, bundle_rules, error, applicable_to, type, context_type, id, created_at, updated_at, assignments_count, object].hash
233
243
  end
234
244
 
235
245
  # Builds the object from hash
@@ -22,6 +22,9 @@ module VoucherifySdk
22
22
  # Contains all the rule definitions for the validation rule. It is a set of key value pairs representing the rules and logic between the rules. The keys are numbered consecutively beginning from `1`. The values are objects containing the rule conditions.
23
23
  attr_accessor :rules
24
24
 
25
+ # Contains all the definitions for the bundle rules. It is a set of key value pairs representing the rules and logic between them. The keys are numbered consecutively beginning from `1`. The values are objects containing the rule conditions. While updating with the PUT method, you can pass `\"bundle_rules\": null` to delete the configuration; in the response, an empty object is then returned.
26
+ attr_accessor :bundle_rules
27
+
25
28
  attr_accessor :error
26
29
 
27
30
  attr_accessor :applicable_to
@@ -59,6 +62,7 @@ module VoucherifySdk
59
62
  {
60
63
  :'name' => :'name',
61
64
  :'rules' => :'rules',
65
+ :'bundle_rules' => :'bundle_rules',
62
66
  :'error' => :'error',
63
67
  :'applicable_to' => :'applicable_to',
64
68
  :'type' => :'type',
@@ -76,6 +80,7 @@ module VoucherifySdk
76
80
  {
77
81
  :'name' => :'String',
78
82
  :'rules' => :'Object',
83
+ :'bundle_rules' => :'Object',
79
84
  :'error' => :'ValidationRulesUpdateRequestBodyError',
80
85
  :'applicable_to' => :'ValidationRulesUpdateRequestBodyApplicableTo',
81
86
  :'type' => :'String',
@@ -110,6 +115,10 @@ module VoucherifySdk
110
115
  self.rules = attributes[:'rules']
111
116
  end
112
117
 
118
+ if attributes.key?(:'bundle_rules')
119
+ self.bundle_rules = attributes[:'bundle_rules']
120
+ end
121
+
113
122
  if attributes.key?(:'error')
114
123
  self.error = attributes[:'error']
115
124
  end
@@ -157,6 +166,7 @@ module VoucherifySdk
157
166
  self.class == o.class &&
158
167
  name == o.name &&
159
168
  rules == o.rules &&
169
+ bundle_rules == o.bundle_rules &&
160
170
  error == o.error &&
161
171
  applicable_to == o.applicable_to &&
162
172
  type == o.type &&
@@ -172,7 +182,7 @@ module VoucherifySdk
172
182
  # Calculates hash code according to all attributes.
173
183
  # @return [Integer] Hash code
174
184
  def hash
175
- [name, rules, error, applicable_to, type, context_type].hash
185
+ [name, rules, bundle_rules, error, applicable_to, type, context_type].hash
176
186
  end
177
187
 
178
188
  # Builds the object from hash
@@ -22,6 +22,9 @@ module VoucherifySdk
22
22
  # Contains all the rule definitions for the validation rule. It is a set of key value pairs representing the rules and logic between the rules. The keys are numbered consecutively beginning from `1`. The values are objects containing the rule conditions.
23
23
  attr_accessor :rules
24
24
 
25
+ # Contains all the definitions for the bundle rules. It is a set of key value pairs representing the rules and logic between them. The keys are numbered consecutively beginning from `1`. The values are objects containing the rule conditions. While updating with the PUT method, you can pass `\"bundle_rules\": null` to delete the configuration; in the response, an empty object is then returned.
26
+ attr_accessor :bundle_rules
27
+
25
28
  attr_accessor :error
26
29
 
27
30
  attr_accessor :applicable_to
@@ -74,6 +77,7 @@ module VoucherifySdk
74
77
  {
75
78
  :'name' => :'name',
76
79
  :'rules' => :'rules',
80
+ :'bundle_rules' => :'bundle_rules',
77
81
  :'error' => :'error',
78
82
  :'applicable_to' => :'applicable_to',
79
83
  :'type' => :'type',
@@ -96,6 +100,7 @@ module VoucherifySdk
96
100
  {
97
101
  :'name' => :'String',
98
102
  :'rules' => :'Object',
103
+ :'bundle_rules' => :'Object',
99
104
  :'error' => :'ValidationRulesUpdateResponseBodyError',
100
105
  :'applicable_to' => :'ValidationRulesUpdateResponseBodyApplicableTo',
101
106
  :'type' => :'String',
@@ -140,6 +145,10 @@ module VoucherifySdk
140
145
  self.rules = attributes[:'rules']
141
146
  end
142
147
 
148
+ if attributes.key?(:'bundle_rules')
149
+ self.bundle_rules = attributes[:'bundle_rules']
150
+ end
151
+
143
152
  if attributes.key?(:'error')
144
153
  self.error = attributes[:'error']
145
154
  end
@@ -209,6 +218,7 @@ module VoucherifySdk
209
218
  self.class == o.class &&
210
219
  name == o.name &&
211
220
  rules == o.rules &&
221
+ bundle_rules == o.bundle_rules &&
212
222
  error == o.error &&
213
223
  applicable_to == o.applicable_to &&
214
224
  type == o.type &&
@@ -229,7 +239,7 @@ module VoucherifySdk
229
239
  # Calculates hash code according to all attributes.
230
240
  # @return [Integer] Hash code
231
241
  def hash
232
- [name, rules, error, applicable_to, type, context_type, id, created_at, updated_at, assignments_count, object].hash
242
+ [name, rules, bundle_rules, error, applicable_to, type, context_type, id, created_at, updated_at, assignments_count, object].hash
233
243
  end
234
244
 
235
245
  # Builds the object from hash
@@ -20,11 +20,14 @@ module VoucherifySdk
20
20
 
21
21
  attr_accessor :details
22
22
 
23
+ attr_accessor :bundle
24
+
23
25
  # Attribute mapping from ruby-style variable name to JSON key.
24
26
  def self.attribute_map
25
27
  {
26
28
  :'error' => :'error',
27
- :'details' => :'details'
29
+ :'details' => :'details',
30
+ :'bundle' => :'bundle'
28
31
  }
29
32
  end
30
33
 
@@ -37,14 +40,15 @@ module VoucherifySdk
37
40
  def self.openapi_types
38
41
  {
39
42
  :'error' => :'Error',
40
- :'details' => :'ValidationsRedeemableInapplicableResultDetails'
43
+ :'details' => :'ValidationsRedeemableInapplicableResultDetails',
44
+ :'bundle' => :'Bundle'
41
45
  }
42
46
  end
43
47
 
44
48
  # List of attributes with nullable: true
45
49
  def self.openapi_nullable
46
50
  Set.new([
47
- :'details'
51
+ :'details',
48
52
  ])
49
53
  end
50
54
 
@@ -63,6 +67,10 @@ module VoucherifySdk
63
67
  if attributes.key?(:'details')
64
68
  self.details = attributes[:'details']
65
69
  end
70
+
71
+ if attributes.key?(:'bundle')
72
+ self.bundle = attributes[:'bundle']
73
+ end
66
74
  end
67
75
 
68
76
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -86,7 +94,8 @@ module VoucherifySdk
86
94
  return true if self.equal?(o)
87
95
  self.class == o.class &&
88
96
  error == o.error &&
89
- details == o.details
97
+ details == o.details &&
98
+ bundle == o.bundle
90
99
  end
91
100
 
92
101
  # @see the `==` method
@@ -98,7 +107,7 @@ module VoucherifySdk
98
107
  # Calculates hash code according to all attributes.
99
108
  # @return [Integer] Hash code
100
109
  def hash
101
- [error, details].hash
110
+ [error, details, bundle].hash
102
111
  end
103
112
 
104
113
  # Builds the object from hash
@@ -14,7 +14,7 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module VoucherifySdk
17
- # Response body schema for **POST** `v1/validations`.
17
+ # Request body schema for **POST** `v1/validations`.
18
18
  class ValidationsValidateRequestBody
19
19
  attr_accessor :options
20
20
 
@@ -16,7 +16,7 @@ require 'time'
16
16
  module VoucherifySdk
17
17
  # Configure parameters returned in the response.
18
18
  class ValidationsValidateRequestBodyOptions
19
- # The expand array lets you configure the parameters included in the response. Depending on the strings included in the array, the response will contain different details. | **Expand Option** | **Response Body** | |:---|:---| | [\"order\"] | - Same response as fallback response (without an options object).<br>- Order data with calculated discounts are listed in each child redeemable object.<br>- Metadata not included for each discount type. | | [\"redeemable\"] | Expands redeemable objects by including `metadata` for each discount type. | | [\"order\", \"redeemable\"] | - Order data with calculated discounts are listed in each child redeemable object.<br>- Includes `metadata` for each discount type. | | [\"category\"] | - Returns an expanded `categories` object, showing details about the category. |
19
+ # The expand array lets you configure the parameters included in the response. Depending on the strings included in the array, the response will contain different details. | **Expand Option** | **Response Body** | |:---|:---| | [\"order\"] | - Same response as fallback response (without an options object).<br />- Order data with calculated discounts are listed in each child redeemable object.<br />- Metadata not included for each discount type. | | [\"redeemable\"] | Expands redeemable objects by including `metadata` for each discount type. | | [\"order\", \"redeemable\"] | - Order data with calculated discounts are listed in each child redeemable object.<br />- Includes `metadata` for each discount type. | | [\"category\"] | - Returns an expanded `categories` object, showing details about the category. |
20
20
  attr_accessor :expand
21
21
 
22
22
  class EnumAttributeValidator
@@ -16,7 +16,7 @@ require 'time'
16
16
  module VoucherifySdk
17
17
  # Contains information on the number of gift card credits that the customer wants to apply to the order.
18
18
  class ValidationsValidateRequestBodyRedeemablesItemGift
19
- # The number of credits that the user wants to use from the gift card to fulfill the order. The value of credits cannot be higher than the current balance on the gift card. Value is multiplied by 100 to precisely represent 2 decimal places. For example `10000 cents` for `$100.00`.
19
+ # The number of credits that the user wants to use from the gift card to fulfill the order. The value of credits cannot be higher than the current balance on the gift card. The value is multiplied by 100 to represent 2 decimal places. For example `10000 cents` for `$100.00`.
20
20
  attr_accessor :credits
21
21
 
22
22
  # Attribute mapping from ruby-style variable name to JSON key.
@@ -16,6 +16,9 @@ require 'time'
16
16
  module VoucherifySdk
17
17
  # Response body schema for **POST** `v1/validations`.
18
18
  class ValidationsValidateResponseBody
19
+ # Unique identifier of the validation, assigned by Voucherify.
20
+ attr_accessor :id
21
+
19
22
  # The result of the validation. It takes all of the redeemables into account and returns a `false` if at least one redeemable is inapplicable. Returns `true` if all redeemables are applicable.
20
23
  attr_accessor :valid
21
24
 
@@ -39,6 +42,7 @@ module VoucherifySdk
39
42
  # Attribute mapping from ruby-style variable name to JSON key.
40
43
  def self.attribute_map
41
44
  {
45
+ :'id' => :'id',
42
46
  :'valid' => :'valid',
43
47
  :'redeemables' => :'redeemables',
44
48
  :'skipped_redeemables' => :'skipped_redeemables',
@@ -58,6 +62,7 @@ module VoucherifySdk
58
62
  # Attribute type mapping.
59
63
  def self.openapi_types
60
64
  {
65
+ :'id' => :'String',
61
66
  :'valid' => :'Boolean',
62
67
  :'redeemables' => :'Array<ValidationsValidateResponseBodyRedeemablesItem>',
63
68
  :'skipped_redeemables' => :'Array<ValidationsRedeemableSkipped>',
@@ -72,6 +77,7 @@ module VoucherifySdk
72
77
  # List of attributes with nullable: true
73
78
  def self.openapi_nullable
74
79
  Set.new([
80
+ :'id',
75
81
  :'valid',
76
82
  :'redeemables',
77
83
  :'skipped_redeemables',
@@ -88,6 +94,10 @@ module VoucherifySdk
88
94
  h[k.to_sym] = v
89
95
  }
90
96
 
97
+ if attributes.key?(:'id')
98
+ self.id = attributes[:'id']
99
+ end
100
+
91
101
  if attributes.key?(:'valid')
92
102
  self.valid = attributes[:'valid']
93
103
  end
@@ -154,6 +164,7 @@ module VoucherifySdk
154
164
  def ==(o)
155
165
  return true if self.equal?(o)
156
166
  self.class == o.class &&
167
+ id == o.id &&
157
168
  valid == o.valid &&
158
169
  redeemables == o.redeemables &&
159
170
  skipped_redeemables == o.skipped_redeemables &&
@@ -173,7 +184,7 @@ module VoucherifySdk
173
184
  # Calculates hash code according to all attributes.
174
185
  # @return [Integer] Hash code
175
186
  def hash
176
- [valid, redeemables, skipped_redeemables, inapplicable_redeemables, order, tracking_id, session, stacking_rules].hash
187
+ [id, valid, redeemables, skipped_redeemables, inapplicable_redeemables, order, tracking_id, session, stacking_rules].hash
177
188
  end
178
189
 
179
190
  # Builds the object from hash
@@ -17,6 +17,8 @@ module VoucherifySdk
17
17
  class ValidationsValidateResponseBodyRedeemablesItemResult
18
18
  attr_accessor :discount
19
19
 
20
+ attr_accessor :bundle
21
+
20
22
  attr_accessor :gift
21
23
 
22
24
  attr_accessor :loyalty_card
@@ -29,6 +31,7 @@ module VoucherifySdk
29
31
  def self.attribute_map
30
32
  {
31
33
  :'discount' => :'discount',
34
+ :'bundle' => :'bundle',
32
35
  :'gift' => :'gift',
33
36
  :'loyalty_card' => :'loyalty_card',
34
37
  :'error' => :'error',
@@ -45,6 +48,7 @@ module VoucherifySdk
45
48
  def self.openapi_types
46
49
  {
47
50
  :'discount' => :'ValidationsValidateResponseBodyRedeemablesItemResultDiscount',
51
+ :'bundle' => :'Bundle',
48
52
  :'gift' => :'ValidationsValidateResponseBodyRedeemablesItemResultGift',
49
53
  :'loyalty_card' => :'ValidationsValidateResponseBodyRedeemablesItemResultLoyaltyCard',
50
54
  :'error' => :'Error',
@@ -56,6 +60,7 @@ module VoucherifySdk
56
60
  def self.openapi_nullable
57
61
  Set.new([
58
62
  :'gift',
63
+ :'loyalty_card',
59
64
  ])
60
65
  end
61
66
 
@@ -71,6 +76,10 @@ module VoucherifySdk
71
76
  self.discount = attributes[:'discount']
72
77
  end
73
78
 
79
+ if attributes.key?(:'bundle')
80
+ self.bundle = attributes[:'bundle']
81
+ end
82
+
74
83
  if attributes.key?(:'gift')
75
84
  self.gift = attributes[:'gift']
76
85
  end
@@ -109,6 +118,7 @@ module VoucherifySdk
109
118
  return true if self.equal?(o)
110
119
  self.class == o.class &&
111
120
  discount == o.discount &&
121
+ bundle == o.bundle &&
112
122
  gift == o.gift &&
113
123
  loyalty_card == o.loyalty_card &&
114
124
  error == o.error &&
@@ -124,7 +134,7 @@ module VoucherifySdk
124
134
  # Calculates hash code according to all attributes.
125
135
  # @return [Integer] Hash code
126
136
  def hash
127
- [discount, gift, loyalty_card, error, details].hash
137
+ [discount, bundle, gift, loyalty_card, error, details].hash
128
138
  end
129
139
 
130
140
  # Builds the object from hash
@@ -20,6 +20,7 @@ module VoucherifySdk
20
20
  # Amount taken off the subtotal of a price. Value is multiplied by 100 to precisely represent 2 decimal places. For example, a $10 discount is written as 1000.
21
21
  attr_accessor :amount_off
22
22
 
23
+ # Formula used to dynamically calculate the discount.
23
24
  attr_accessor :amount_off_formula
24
25
 
25
26
  # Maximum discount amount per order.
@@ -33,7 +34,7 @@ module VoucherifySdk
33
34
  # Number of units to be granted a full value discount.
34
35
  attr_accessor :unit_off
35
36
 
36
- # Formula used to calculate the number of units.
37
+ # Formula used to dynamically calculate the number of units.
37
38
  attr_accessor :unit_off_formula
38
39
 
39
40
  # The product deemed as free, chosen from product inventory (e.g. time, items).
@@ -48,6 +49,7 @@ module VoucherifySdk
48
49
  # The percent discount that the customer will receive.
49
50
  attr_accessor :percent_off
50
51
 
52
+ # Formula used to dynamically calculate the discount.
51
53
  attr_accessor :percent_off_formula
52
54
 
53
55
  # Upper limit allowed to be applied as a discount. Value is multiplied by 100 to precisely represent 2 decimal places. For example, a $6 maximum discount is written as 600.
@@ -56,6 +58,7 @@ module VoucherifySdk
56
58
  # Sets a fixed value for an order total or the item price. The value is multiplied by 100 to precisely represent 2 decimal places. For example, a $10 discount is written as 1000. If the fixed amount is calculated by the formula, i.e. the `fixed_amount_formula` parameter is present in the fixed amount definition, this value becomes the **fallback value**. As a result, if the formula cannot be calculated due to missing metadata, for example, this value will be used as the fixed value.
57
59
  attr_accessor :fixed_amount
58
60
 
61
+ # Formula used to dynamically calculate the discount.
59
62
  attr_accessor :fixed_amount_formula
60
63
 
61
64
  class EnumAttributeValidator
@@ -243,7 +246,7 @@ module VoucherifySdk
243
246
  warn '[DEPRECATED] the `valid?` method is obsolete'
244
247
  type_validator = EnumAttributeValidator.new('String', ["AMOUNT", "UNIT", "PERCENT", "FIXED"])
245
248
  return false unless type_validator.valid?(@type)
246
- effect_validator = EnumAttributeValidator.new('String', ["APPLY_TO_ORDER", "APPLY_TO_ITEMS", "APPLY_TO_ITEMS_PROPORTIONALLY", "APPLY_TO_ITEMS_PROPORTIONALLY_BY_QUANTITY", "APPLY_TO_ITEMS_BY_QUANTITY", "ADD_MISSING_ITEMS", "ADD_NEW_ITEMS", "ADD_MANY_ITEMS"])
249
+ effect_validator = EnumAttributeValidator.new('String', ["APPLY_TO_ORDER", "APPLY_TO_ITEMS", "APPLY_TO_ITEMS_PROPORTIONALLY", "APPLY_TO_ITEMS_PROPORTIONALLY_BY_QUANTITY", "APPLY_TO_ITEMS_BY_QUANTITY", "ADD_MISSING_ITEMS", "ADD_NEW_ITEMS", "ADD_MANY_ITEMS", "ADD_SAME_ITEMS"])
247
250
  return false unless effect_validator.valid?(@effect)
248
251
  true
249
252
  end