voucherify 8.0.2 → 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 (799) hide show
  1. checksums.yaml +4 -4
  2. data/Dockerfile +1 -1
  3. data/ENDPOINTS-COVERAGE.md +123 -106
  4. data/Gemfile.lock +20 -16
  5. data/README.md +260 -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/12_validation_rules_spec.rb +1 -15
  16. data/__tests__/spec/13_management_spec.rb +110 -0
  17. data/__tests__/spec/14_additional_properties_spec.rb +28 -0
  18. data/__tests__/spec/support/get_snapshot_without_uniq_keys.rb +1 -1
  19. data/docs/AccessSettings.md +9 -0
  20. data/docs/AccessSettingsAssign.md +10 -0
  21. data/docs/AccessSettingsUnassign.md +10 -0
  22. data/docs/ApplicableTo.md +21 -4
  23. data/docs/ApplicableToOrderItemUnitsItem.md +10 -0
  24. data/docs/ApplicationDetailsItem.md +14 -0
  25. data/docs/AreaStoreCampaignAssignment.md +1 -0
  26. data/docs/AsyncActionsApi.md +2 -2
  27. data/docs/AsyncActionsListResponseBody.md +1 -0
  28. data/docs/BinApi.md +4 -4
  29. data/docs/Bundle.md +11 -0
  30. data/docs/BundleIdentifiedItem.md +11 -0
  31. data/docs/BundleMissingItem.md +10 -0
  32. data/docs/Campaign.md +5 -5
  33. data/docs/CampaignBase.md +5 -4
  34. data/docs/CampaignLoyaltyCardExpirationRules.md +6 -4
  35. data/docs/CampaignsApi.md +209 -12
  36. data/docs/CampaignsCreateRequestBody.md +3 -2
  37. data/docs/CampaignsCreateResponseBody.md +5 -5
  38. data/docs/CampaignsGetResponseBody.md +5 -5
  39. data/docs/CampaignsImportVoucherItem.md +1 -1
  40. data/docs/CampaignsSummaryGetResponseBody.md +48 -0
  41. data/docs/CampaignsTransactionsExportCreateRequestBody.md +8 -0
  42. data/docs/CampaignsTransactionsExportCreateRequestBodyParameters.md +10 -0
  43. data/docs/CampaignsTransactionsExportCreateResponseBody.md +16 -0
  44. data/docs/CampaignsTransactionsExportCreateResponseBodyParameters.md +10 -0
  45. data/docs/CampaignsTransactionsExportCreateResponseBodyParametersFilters.md +11 -0
  46. data/docs/CampaignsTransactionsExportCreateResponseBodyParametersFiltersCampaignId.md +8 -0
  47. data/docs/CampaignsTransactionsExportCreateResponseBodyParametersFiltersCampaignIdConditions.md +8 -0
  48. data/docs/CampaignsTransactionsExportCreateResponseBodyResult.md +8 -0
  49. data/docs/CampaignsTransactionsListResponseBody.md +12 -0
  50. data/docs/CampaignsUpdateRequestBody.md +2 -1
  51. data/docs/CampaignsUpdateResponseBody.md +5 -5
  52. data/docs/CampaignsVouchersCreateCombinedResponseBodyGift.md +3 -2
  53. data/docs/CampaignsVouchersCreateCombinedResponseBodyLoyaltyCard.md +5 -2
  54. data/docs/CampaignsVouchersCreateResponseBodyGift.md +3 -2
  55. data/docs/CampaignsVouchersCreateResponseBodyLoyaltyCard.md +5 -2
  56. data/docs/CategoriesApi.md +1 -1
  57. data/docs/ClientQualificationsCheckEligibilityRequestBody.md +2 -1
  58. data/docs/ClientQualificationsCheckEligibilityRequestBodySession.md +8 -0
  59. data/docs/ClientRedemptionsRedeemRequestBodyOptions.md +1 -1
  60. data/docs/ClientRedemptionsRedeemRequestBodyRedeemablesItemGift.md +1 -1
  61. data/docs/ClientSideApi.md +2 -2
  62. data/docs/ClientValidationsValidateRequestBodyOptions.md +1 -1
  63. data/docs/ClientValidationsValidateRequestBodyRedeemablesItemGift.md +1 -1
  64. data/docs/ClientValidationsValidateResponseBody.md +1 -0
  65. data/docs/ClientValidationsValidateResponseBodyRedeemablesItemResult.md +1 -0
  66. data/docs/ClientValidationsValidateResponseBodyRedeemablesItemResultDiscount.md +4 -4
  67. data/docs/ClientValidationsValidateResponseBodyRedeemablesItemResultGift.md +2 -1
  68. data/docs/CustomerLoyalty.md +1 -1
  69. data/docs/CustomerSummaryOrders.md +3 -3
  70. data/docs/CustomerSummaryRedemptionsGift.md +2 -2
  71. data/docs/CustomerWithSummaryLoyaltyReferralsAssets.md +2 -1
  72. data/docs/CustomersApi.md +10 -10
  73. data/docs/CustomersCreateResponseBodyAssets.md +2 -1
  74. data/docs/CustomersGetResponseBodyAssets.md +2 -1
  75. data/docs/CustomersUpdateResponseBodyAssets.md +2 -1
  76. data/docs/Discount.md +4 -4
  77. data/docs/DiscountUnitMultipleOneUnit.md +1 -1
  78. data/docs/EarningRule.md +2 -0
  79. data/docs/EarningRuleExpirationRules.md +13 -0
  80. data/docs/EarningRuleLoyalty.md +1 -0
  81. data/docs/EarningRuleLoyaltyCustomEventMetadata.md +1 -0
  82. data/docs/EarningRuleLoyaltyCustomerMetadata.md +1 -0
  83. data/docs/EarningRuleLoyaltyOrderAmount.md +1 -0
  84. data/docs/EarningRuleLoyaltyOrderItemsAmount.md +4 -2
  85. data/docs/EarningRuleLoyaltyOrderItemsAmountApplicableToItem.md +9 -0
  86. data/docs/EarningRuleLoyaltyOrderItemsQuantity.md +4 -2
  87. data/docs/EarningRuleLoyaltyOrderItemsQuantityApplicableToItem.md +9 -0
  88. data/docs/EarningRuleLoyaltyOrderItemsSubtotalAmount.md +4 -2
  89. data/docs/EarningRuleLoyaltyOrderItemsSubtotalAmountApplicableToItem.md +9 -0
  90. data/docs/EarningRuleLoyaltyOrderMetadata.md +1 -0
  91. data/docs/EarningRuleLoyaltyOrderTotalAmount.md +1 -0
  92. data/docs/EarningRulePendingPoints.md +9 -0
  93. data/docs/EventSource.md +10 -0
  94. data/docs/EventSourceApiKey.md +9 -0
  95. data/docs/EventSourceUser.md +8 -0
  96. data/docs/ExportCampaignTransactionsFilters.md +10 -0
  97. data/docs/ExportParameters.md +1 -0
  98. data/docs/ExportsApi.md +3 -3
  99. data/docs/ExportsCreateRequestBodyParameters.md +1 -0
  100. data/docs/ExportsCreateResponseBodyParameters.md +1 -0
  101. data/docs/ExportsGetResponseBodyParameters.md +1 -0
  102. data/docs/Gift.md +3 -2
  103. data/docs/InapplicableTo.md +21 -4
  104. data/docs/InapplicableToOrderItemUnitsItem.md +10 -0
  105. data/docs/LoyaltiesApi.md +590 -69
  106. data/docs/LoyaltiesCreateCampaignRequestBody.md +3 -2
  107. data/docs/LoyaltiesCreateCampaignResponseBody.md +1 -1
  108. data/docs/LoyaltiesEarningRulesCreateRequestBodyItem.md +4 -2
  109. data/docs/LoyaltiesEarningRulesCreateRequestBodyItemLoyalty.md +1 -0
  110. data/docs/LoyaltiesEarningRulesCreateRequestBodyItemLoyaltyCustomEventMetadata.md +1 -0
  111. data/docs/LoyaltiesEarningRulesCreateRequestBodyItemLoyaltyCustomerMetadata.md +1 -0
  112. data/docs/LoyaltiesEarningRulesCreateRequestBodyItemLoyaltyOrderAmount.md +1 -0
  113. data/docs/LoyaltiesEarningRulesCreateRequestBodyItemLoyaltyOrderItemsAmount.md +4 -2
  114. data/docs/LoyaltiesEarningRulesCreateRequestBodyItemLoyaltyOrderItemsAmountApplicableToItem.md +9 -0
  115. data/docs/LoyaltiesEarningRulesCreateRequestBodyItemLoyaltyOrderItemsQuantity.md +4 -2
  116. data/docs/LoyaltiesEarningRulesCreateRequestBodyItemLoyaltyOrderItemsQuantityApplicableToItem.md +9 -0
  117. data/docs/LoyaltiesEarningRulesCreateRequestBodyItemLoyaltyOrderItemsSubtotalAmount.md +4 -2
  118. data/docs/LoyaltiesEarningRulesCreateRequestBodyItemLoyaltyOrderMetadata.md +1 -0
  119. data/docs/LoyaltiesEarningRulesCreateRequestBodyItemLoyaltyOrderTotalAmount.md +1 -0
  120. data/docs/LoyaltiesEarningRulesCreateRequestBodyItemOrderItemsSubtotalAmountApplicableToItem.md +9 -0
  121. data/docs/LoyaltiesEarningRulesCreateRequestBodyItemPendingPoints.md +9 -0
  122. data/docs/LoyaltiesEarningRulesCreateResponseBody.md +2 -0
  123. data/docs/LoyaltiesEarningRulesCreateResponseBodyLoyalty.md +1 -0
  124. data/docs/LoyaltiesEarningRulesCreateResponseBodyLoyaltyCustomEventMetadata.md +1 -0
  125. data/docs/LoyaltiesEarningRulesCreateResponseBodyLoyaltyCustomerMetadata.md +1 -0
  126. data/docs/LoyaltiesEarningRulesCreateResponseBodyLoyaltyOrderAmount.md +1 -0
  127. data/docs/LoyaltiesEarningRulesCreateResponseBodyLoyaltyOrderItemsAmount.md +4 -2
  128. data/docs/LoyaltiesEarningRulesCreateResponseBodyLoyaltyOrderItemsAmountApplicableToItem.md +9 -0
  129. data/docs/LoyaltiesEarningRulesCreateResponseBodyLoyaltyOrderItemsQuantity.md +4 -2
  130. data/docs/LoyaltiesEarningRulesCreateResponseBodyLoyaltyOrderItemsQuantityApplicableToItem.md +9 -0
  131. data/docs/LoyaltiesEarningRulesCreateResponseBodyLoyaltyOrderItemsSubtotalAmount.md +4 -2
  132. data/docs/LoyaltiesEarningRulesCreateResponseBodyLoyaltyOrderMetadata.md +1 -0
  133. data/docs/LoyaltiesEarningRulesCreateResponseBodyLoyaltyOrderTotalAmount.md +1 -0
  134. data/docs/LoyaltiesEarningRulesCreateResponseBodyOrderItemsSubtotalAmountApplicableToItem.md +9 -0
  135. data/docs/LoyaltiesEarningRulesCreateResponseBodyPendingPoints.md +9 -0
  136. data/docs/LoyaltiesEarningRulesDisableResponseBody.md +2 -0
  137. data/docs/LoyaltiesEarningRulesDisableResponseBodyLoyalty.md +1 -0
  138. data/docs/LoyaltiesEarningRulesDisableResponseBodyLoyaltyCustomEventMetadata.md +1 -0
  139. data/docs/LoyaltiesEarningRulesDisableResponseBodyLoyaltyCustomerMetadata.md +1 -0
  140. data/docs/LoyaltiesEarningRulesDisableResponseBodyLoyaltyOrderAmount.md +1 -0
  141. data/docs/LoyaltiesEarningRulesDisableResponseBodyLoyaltyOrderItemsAmount.md +4 -2
  142. data/docs/LoyaltiesEarningRulesDisableResponseBodyLoyaltyOrderItemsAmountApplicableToItem.md +9 -0
  143. data/docs/LoyaltiesEarningRulesDisableResponseBodyLoyaltyOrderItemsQuantity.md +4 -2
  144. data/docs/LoyaltiesEarningRulesDisableResponseBodyLoyaltyOrderItemsQuantityApplicableToItem.md +9 -0
  145. data/docs/LoyaltiesEarningRulesDisableResponseBodyLoyaltyOrderItemsSubtotalAmount.md +4 -2
  146. data/docs/LoyaltiesEarningRulesDisableResponseBodyLoyaltyOrderMetadata.md +1 -0
  147. data/docs/LoyaltiesEarningRulesDisableResponseBodyLoyaltyOrderTotalAmount.md +1 -0
  148. data/docs/LoyaltiesEarningRulesDisableResponseBodyOrderItemsSubtotalAmountApplicableToItem.md +9 -0
  149. data/docs/LoyaltiesEarningRulesDisableResponseBodyPendingPoints.md +9 -0
  150. data/docs/LoyaltiesEarningRulesEnableResponseBody.md +2 -0
  151. data/docs/LoyaltiesEarningRulesEnableResponseBodyLoyalty.md +1 -0
  152. data/docs/LoyaltiesEarningRulesEnableResponseBodyLoyaltyCustomEventMetadata.md +1 -0
  153. data/docs/LoyaltiesEarningRulesEnableResponseBodyLoyaltyCustomerMetadata.md +1 -0
  154. data/docs/LoyaltiesEarningRulesEnableResponseBodyLoyaltyOrderAmount.md +1 -0
  155. data/docs/LoyaltiesEarningRulesEnableResponseBodyLoyaltyOrderItemsAmount.md +4 -2
  156. data/docs/LoyaltiesEarningRulesEnableResponseBodyLoyaltyOrderItemsAmountApplicableToItem.md +9 -0
  157. data/docs/LoyaltiesEarningRulesEnableResponseBodyLoyaltyOrderItemsQuantity.md +4 -2
  158. data/docs/LoyaltiesEarningRulesEnableResponseBodyLoyaltyOrderItemsQuantityApplicableToItem.md +9 -0
  159. data/docs/LoyaltiesEarningRulesEnableResponseBodyLoyaltyOrderItemsSubtotalAmount.md +4 -2
  160. data/docs/LoyaltiesEarningRulesEnableResponseBodyLoyaltyOrderMetadata.md +1 -0
  161. data/docs/LoyaltiesEarningRulesEnableResponseBodyLoyaltyOrderTotalAmount.md +1 -0
  162. data/docs/LoyaltiesEarningRulesEnableResponseBodyOrderItemsSubtotalAmountApplicableToItem.md +9 -0
  163. data/docs/LoyaltiesEarningRulesEnableResponseBodyPendingPoints.md +9 -0
  164. data/docs/LoyaltiesEarningRulesGetResponseBody.md +2 -0
  165. data/docs/LoyaltiesEarningRulesGetResponseBodyLoyalty.md +1 -0
  166. data/docs/LoyaltiesEarningRulesGetResponseBodyLoyaltyCustomEventMetadata.md +1 -0
  167. data/docs/LoyaltiesEarningRulesGetResponseBodyLoyaltyCustomerMetadata.md +1 -0
  168. data/docs/LoyaltiesEarningRulesGetResponseBodyLoyaltyOrderAmount.md +1 -0
  169. data/docs/LoyaltiesEarningRulesGetResponseBodyLoyaltyOrderItemsAmount.md +4 -2
  170. data/docs/LoyaltiesEarningRulesGetResponseBodyLoyaltyOrderItemsAmountApplicableToItem.md +9 -0
  171. data/docs/LoyaltiesEarningRulesGetResponseBodyLoyaltyOrderItemsQuantity.md +4 -2
  172. data/docs/LoyaltiesEarningRulesGetResponseBodyLoyaltyOrderItemsQuantityApplicableToItem.md +9 -0
  173. data/docs/LoyaltiesEarningRulesGetResponseBodyLoyaltyOrderItemsSubtotalAmount.md +4 -2
  174. data/docs/LoyaltiesEarningRulesGetResponseBodyLoyaltyOrderItemsSubtotalAmountApplicableToItem.md +9 -0
  175. data/docs/LoyaltiesEarningRulesGetResponseBodyLoyaltyOrderMetadata.md +1 -0
  176. data/docs/LoyaltiesEarningRulesGetResponseBodyLoyaltyOrderTotalAmount.md +1 -0
  177. data/docs/LoyaltiesEarningRulesGetResponseBodyPendingPoints.md +9 -0
  178. data/docs/LoyaltiesEarningRulesUpdateRequestBody.md +4 -2
  179. data/docs/LoyaltiesEarningRulesUpdateRequestBodyLoyalty.md +1 -0
  180. data/docs/LoyaltiesEarningRulesUpdateRequestBodyLoyaltyCustomEventMetadata.md +1 -0
  181. data/docs/LoyaltiesEarningRulesUpdateRequestBodyLoyaltyCustomerMetadata.md +1 -0
  182. data/docs/LoyaltiesEarningRulesUpdateRequestBodyLoyaltyOrderAmount.md +1 -0
  183. data/docs/LoyaltiesEarningRulesUpdateRequestBodyLoyaltyOrderItemsAmount.md +4 -2
  184. data/docs/LoyaltiesEarningRulesUpdateRequestBodyLoyaltyOrderItemsAmountApplicableToItem.md +9 -0
  185. data/docs/LoyaltiesEarningRulesUpdateRequestBodyLoyaltyOrderItemsQuantity.md +4 -2
  186. data/docs/LoyaltiesEarningRulesUpdateRequestBodyLoyaltyOrderItemsQuantityApplicableToItem.md +9 -0
  187. data/docs/LoyaltiesEarningRulesUpdateRequestBodyLoyaltyOrderItemsSubtotalAmount.md +4 -2
  188. data/docs/LoyaltiesEarningRulesUpdateRequestBodyLoyaltyOrderMetadata.md +1 -0
  189. data/docs/LoyaltiesEarningRulesUpdateRequestBodyLoyaltyOrderTotalAmount.md +1 -0
  190. data/docs/LoyaltiesEarningRulesUpdateRequestBodyOrderItemsSubtotalAmountApplicableToItem.md +9 -0
  191. data/docs/LoyaltiesEarningRulesUpdateRequestBodyPendingPoints.md +9 -0
  192. data/docs/LoyaltiesEarningRulesUpdateResponseBody.md +2 -0
  193. data/docs/LoyaltiesEarningRulesUpdateResponseBodyLoyalty.md +1 -0
  194. data/docs/LoyaltiesEarningRulesUpdateResponseBodyLoyaltyCustomEventMetadata.md +1 -0
  195. data/docs/LoyaltiesEarningRulesUpdateResponseBodyLoyaltyCustomerMetadata.md +1 -0
  196. data/docs/LoyaltiesEarningRulesUpdateResponseBodyLoyaltyOrderAmount.md +1 -0
  197. data/docs/LoyaltiesEarningRulesUpdateResponseBodyLoyaltyOrderItemsAmount.md +4 -2
  198. data/docs/LoyaltiesEarningRulesUpdateResponseBodyLoyaltyOrderItemsAmountApplicableToItem.md +9 -0
  199. data/docs/LoyaltiesEarningRulesUpdateResponseBodyLoyaltyOrderItemsQuantity.md +4 -2
  200. data/docs/LoyaltiesEarningRulesUpdateResponseBodyLoyaltyOrderItemsQuantityApplicableToItem.md +9 -0
  201. data/docs/LoyaltiesEarningRulesUpdateResponseBodyLoyaltyOrderItemsSubtotalAmount.md +4 -2
  202. data/docs/LoyaltiesEarningRulesUpdateResponseBodyLoyaltyOrderMetadata.md +1 -0
  203. data/docs/LoyaltiesEarningRulesUpdateResponseBodyLoyaltyOrderTotalAmount.md +1 -0
  204. data/docs/LoyaltiesEarningRulesUpdateResponseBodyOrderItemsSubtotalAmountApplicableToItem.md +9 -0
  205. data/docs/LoyaltiesEarningRulesUpdateResponseBodyPendingPoints.md +9 -0
  206. data/docs/LoyaltiesGetCampaignResponseBody.md +1 -1
  207. data/docs/LoyaltiesMembersCreateResponseBodyLoyaltyCard.md +5 -2
  208. data/docs/LoyaltiesMembersGetResponseBodyLoyaltyCard.md +5 -2
  209. data/docs/LoyaltiesMembersPendingPointsActivateResponseBody.md +14 -0
  210. data/docs/LoyaltiesMembersPendingPointsActivateResponseBodyRelatedObject.md +9 -0
  211. data/docs/LoyaltiesMembersPendingPointsBalanceRequestBody.md +8 -0
  212. data/docs/LoyaltiesMembersPendingPointsBalanceResponseBody.md +12 -0
  213. data/docs/LoyaltiesMembersPendingPointsBalanceResponseBodyRelatedObject.md +9 -0
  214. data/docs/LoyaltiesMembersPendingPointsListResponseBody.md +12 -0
  215. data/docs/LoyaltiesMembersPointsExpirationListResponseBodyDataItem.md +1 -1
  216. data/docs/LoyaltiesMembersRedemptionRedeemRequestBody.md +1 -1
  217. data/docs/LoyaltiesMembersRedemptionRedeemResponseBody.md +1 -0
  218. data/docs/LoyaltiesMembersRedemptionRedeemResponseBodyRelatedRedemptionsRollbacksItem.md +1 -0
  219. data/docs/LoyaltiesMembersRedemptionRedeemResponseBodySession.md +8 -0
  220. data/docs/LoyaltiesMembersRedemptionRedeemResponseBodyVoucherGift.md +3 -2
  221. data/docs/LoyaltiesMembersRedemptionRedeemResponseBodyVoucherLoyaltyCard.md +5 -2
  222. data/docs/LoyaltiesMembersTransfersCreateResponseBodyLoyaltyCard.md +5 -2
  223. data/docs/LoyaltiesPendingPointsListResponseBody.md +12 -0
  224. data/docs/LoyaltiesPointsExpirationExportCreateRequestBodyParameters.md +1 -1
  225. data/docs/LoyaltiesRewardAssignmentsRewardGetResponseBody.md +1 -1
  226. data/docs/LoyaltiesTransactionsExportCreateRequestBody.md +8 -0
  227. data/docs/LoyaltiesTransactionsExportCreateRequestBodyParameters.md +10 -0
  228. data/docs/LoyaltiesTransactionsListResponseBody.md +12 -0
  229. data/docs/LoyaltiesUpdateCampaignRequestBody.md +2 -1
  230. data/docs/LoyaltiesUpdateCampaignResponseBody.md +1 -1
  231. data/docs/LoyaltyCampaign.md +1 -1
  232. data/docs/LoyaltyCardTransaction.md +1 -1
  233. data/docs/LoyaltyCardTransactionDetails.md +2 -0
  234. data/docs/LoyaltyCardTransactionDetailsBalance.md +1 -0
  235. data/docs/LoyaltyCardTransactionDetailsEarningRule.md +1 -1
  236. data/docs/LoyaltyCardTransactionDetailsHolderLoyaltyTier.md +9 -0
  237. data/docs/LoyaltyCardTransactionDetailsLoyaltyTier.md +2 -2
  238. data/docs/LoyaltyMemberLoyaltyCard.md +5 -2
  239. data/docs/LoyaltyPendingPoints.md +17 -0
  240. data/docs/LoyaltyPendingPointsDetails.md +12 -0
  241. data/docs/LoyaltyPendingPointsDetailsEarningRule.md +9 -0
  242. data/docs/LoyaltyPendingPointsDetailsEarningRuleSource.md +8 -0
  243. data/docs/LoyaltyPendingPointsDetailsEvent.md +14 -0
  244. data/docs/LoyaltyPendingPointsDetailsHolderLoyaltyTier.md +9 -0
  245. data/docs/LoyaltyPendingPointsDetailsLoyaltyTier.md +9 -0
  246. data/docs/LoyaltyPendingPointsDetailsOrder.md +9 -0
  247. data/docs/LoyaltyPointsBucket.md +1 -1
  248. data/docs/LoyaltyTierExpiration.md +1 -1
  249. data/docs/LoyaltyTiersExpirationAll.md +1 -1
  250. data/docs/ManagementApi.md +22 -22
  251. data/docs/ManagementProjectsStackingRules.md +14 -8
  252. data/docs/ManagementProjectsStackingRulesCreateRequestBody.md +14 -8
  253. data/docs/ManagementProjectsStackingRulesCreateResponseBody.md +14 -8
  254. data/docs/ManagementProjectsStackingRulesGetResponseBody.md +14 -8
  255. data/docs/ManagementProjectsStackingRulesUpdateRequestBody.md +14 -8
  256. data/docs/ManagementProjectsStackingRulesUpdateResponseBody.md +14 -8
  257. data/docs/ManagementProjectsUsersInviteCreateRequestBody.md +1 -1
  258. data/docs/ManagementProjectsUsersUpdateRoleRequestBody.md +1 -1
  259. data/docs/MetadataSchemasApi.md +5 -5
  260. data/docs/Order.md +3 -3
  261. data/docs/OrderCalculated.md +11 -11
  262. data/docs/OrderCalculatedItem.md +2 -1
  263. data/docs/OrderItem.md +1 -1
  264. data/docs/OrderRedemptionsEntry.md +1 -1
  265. data/docs/OrdersApi.md +3 -3
  266. data/docs/OrdersCreateRequestBody.md +3 -3
  267. data/docs/OrdersCreateResponseBody.md +11 -11
  268. data/docs/OrdersGetResponseBody.md +11 -11
  269. data/docs/OrdersImportCreateRequestBodyItem.md +4 -4
  270. data/docs/OrdersUpdateRequestBody.md +3 -3
  271. data/docs/OrdersUpdateResponseBody.md +11 -11
  272. data/docs/ParameterOrderListPendingPoints.md +7 -0
  273. data/docs/ParametersFiltersListCampaignTransactions.md +10 -0
  274. data/docs/ProductCollectionsCreateRequestBody.md +1 -1
  275. data/docs/ProductsApi.md +22 -22
  276. data/docs/ProductsSkusCreateRequestBody.md +1 -1
  277. data/docs/ProductsSkusUpdateRequestBody.md +1 -1
  278. data/docs/PromotionTierCampaign.md +1 -1
  279. data/docs/PromotionsTiersCreateResponseBodyCampaign.md +1 -1
  280. data/docs/PromotionsTiersDisableResponseBodyCampaign.md +1 -1
  281. data/docs/PromotionsTiersEnableResponseBodyCampaign.md +1 -1
  282. data/docs/PromotionsTiersGetResponseBodyCampaign.md +1 -1
  283. data/docs/PromotionsTiersUpdateResponseBodyCampaign.md +1 -1
  284. data/docs/PublicationsApi.md +7 -7
  285. data/docs/QualificationsApi.md +1 -1
  286. data/docs/QualificationsCheckEligibilityRequestBody.md +2 -1
  287. data/docs/QualificationsCheckEligibilityRequestBodySession.md +8 -0
  288. data/docs/QualificationsOption.md +1 -1
  289. data/docs/QualificationsRedeemable.md +1 -1
  290. data/docs/QualificationsRedeemableBase.md +1 -1
  291. data/docs/RedeemableGift.md +3 -2
  292. data/docs/RedeemableLoyaltyCard.md +2 -2
  293. data/docs/RedeemableResult.md +1 -0
  294. data/docs/RedeemableVoucherGift.md +3 -2
  295. data/docs/RedeemableVoucherLoyaltyCard.md +5 -2
  296. data/docs/Redemption.md +1 -0
  297. data/docs/RedemptionEntry.md +1 -0
  298. data/docs/RedemptionEntryOrder.md +11 -11
  299. data/docs/RedemptionEntryPromotionTierCampaign.md +1 -1
  300. data/docs/RedemptionEntryRelatedRedemptionsRollbacksItem.md +1 -0
  301. data/docs/RedemptionEntrySession.md +8 -0
  302. data/docs/RedemptionEntryVoucherGift.md +3 -2
  303. data/docs/RedemptionEntryVoucherLoyaltyCard.md +5 -2
  304. data/docs/RedemptionRelatedRedemptionsRollbacksItem.md +1 -0
  305. data/docs/RedemptionRewardResultParametersCampaign.md +1 -1
  306. data/docs/RedemptionRollback.md +1 -1
  307. data/docs/RedemptionSession.md +8 -0
  308. data/docs/RedemptionVoucherGift.md +3 -2
  309. data/docs/RedemptionVoucherLoyaltyCard.md +5 -2
  310. data/docs/RedemptionsApi.md +3 -3
  311. data/docs/RedemptionsGetResponseBody.md +1 -0
  312. data/docs/RedemptionsGetResponseBodyOrder.md +11 -11
  313. data/docs/RedemptionsGetResponseBodyPromotionTierCampaign.md +1 -1
  314. data/docs/RedemptionsGetResponseBodyRelatedRedemptionsRollbacksItem.md +1 -0
  315. data/docs/RedemptionsGetResponseBodySession.md +8 -0
  316. data/docs/RedemptionsGetResponseBodyVoucherGift.md +3 -2
  317. data/docs/RedemptionsGetResponseBodyVoucherLoyaltyCard.md +5 -2
  318. data/docs/RedemptionsListResponseBodyRedemptionsItem.md +1 -0
  319. data/docs/RedemptionsListResponseBodyRedemptionsItemOrder.md +11 -11
  320. data/docs/RedemptionsListResponseBodyRedemptionsItemPromotionTierCampaign.md +1 -1
  321. data/docs/RedemptionsListResponseBodyRedemptionsItemRelatedRedemptionsRollbacksItem.md +1 -0
  322. data/docs/RedemptionsListResponseBodyRedemptionsItemSession.md +8 -0
  323. data/docs/RedemptionsListResponseBodyRedemptionsItemVoucherGift.md +3 -2
  324. data/docs/RedemptionsListResponseBodyRedemptionsItemVoucherLoyaltyCard.md +5 -2
  325. data/docs/RedemptionsRedeemRequestBodyOptions.md +1 -1
  326. data/docs/RedemptionsRedeemRequestBodyRedeemablesItemGift.md +1 -1
  327. data/docs/RedemptionsRollbackCreateResponseBody.md +1 -1
  328. data/docs/ReferralsApi.md +13 -13
  329. data/docs/Reward.md +1 -1
  330. data/docs/RewardsCreateRequestBody.md +1 -1
  331. data/docs/RewardsCreateRequestBodyParametersCampaign.md +1 -1
  332. data/docs/RewardsCreateResponseBody.md +1 -1
  333. data/docs/RewardsUpdateRequestBody.md +1 -1
  334. data/docs/RewardsUpdateRequestBodyParametersCampaign.md +1 -1
  335. data/docs/RewardsUpdateResponseBody.md +1 -1
  336. data/docs/SegmentsApi.md +2 -2
  337. data/docs/SegmentsCreateRequestBody.md +1 -1
  338. data/docs/SegmentsCreateResponseBody.md +4 -3
  339. data/docs/SegmentsGetResponseBody.md +4 -3
  340. data/docs/SimpleLoyaltyCard.md +5 -2
  341. data/docs/SimpleVoucherRedemption.md +1 -0
  342. data/docs/StackingRules.md +15 -11
  343. data/docs/TemplatesApi.md +7 -7
  344. data/docs/TemplatesCampaignsCampaignSetupCreateRequestBody.md +3 -2
  345. data/docs/TrashBinItem.md +1 -1
  346. data/docs/ValidationRule.md +1 -0
  347. data/docs/ValidationRulesApi.md +3 -3
  348. data/docs/ValidationRulesCreateRequestBody.md +1 -0
  349. data/docs/ValidationRulesCreateResponseBody.md +1 -0
  350. data/docs/ValidationRulesGetResponseBody.md +1 -0
  351. data/docs/ValidationRulesUpdateRequestBody.md +1 -0
  352. data/docs/ValidationRulesUpdateResponseBody.md +1 -0
  353. data/docs/ValidationsApi.md +1 -1
  354. data/docs/ValidationsRedeemableInapplicableResult.md +1 -0
  355. data/docs/ValidationsValidateRequestBodyOptions.md +1 -1
  356. data/docs/ValidationsValidateRequestBodyRedeemablesItemGift.md +1 -1
  357. data/docs/ValidationsValidateResponseBody.md +1 -0
  358. data/docs/ValidationsValidateResponseBodyRedeemablesItemResult.md +1 -0
  359. data/docs/ValidationsValidateResponseBodyRedeemablesItemResultDiscount.md +4 -4
  360. data/docs/ValidationsValidateResponseBodyRedeemablesItemResultGift.md +2 -1
  361. data/docs/ValidityHours.md +1 -1
  362. data/docs/VoucherBalance.md +1 -0
  363. data/docs/VoucherGift.md +3 -2
  364. data/docs/VoucherLoyaltyCard.md +5 -2
  365. data/docs/VoucherTransaction.md +1 -1
  366. data/docs/VoucherTransactionDetails.md +2 -0
  367. data/docs/VoucherTransactionDetailsBalance.md +1 -0
  368. data/docs/VoucherTransactionDetailsCustomEvent.md +2 -2
  369. data/docs/VoucherTransactionDetailsEarningRule.md +1 -1
  370. data/docs/VoucherTransactionDetailsEventSchema.md +2 -2
  371. data/docs/VoucherTransactionDetailsHolderLoyaltyTier.md +9 -0
  372. data/docs/VoucherTransactionDetailsLoyaltyTier.md +2 -2
  373. data/docs/VoucherTransactionDetailsRollback.md +1 -1
  374. data/docs/VoucherTransactionDetailsSegment.md +2 -2
  375. data/docs/VoucherTransactionsExportParameters.md +1 -1
  376. data/docs/VoucherTransactionsFilters.md +1 -1
  377. data/docs/VoucherWithCategoriesGift.md +3 -2
  378. data/docs/VoucherWithCategoriesLoyaltyCard.md +5 -2
  379. data/docs/VouchersApi.md +16 -14
  380. data/docs/VouchersBalanceUpdateRequestBody.md +1 -1
  381. data/docs/VouchersBalanceUpdateResponseBody.md +2 -2
  382. data/docs/VouchersCreateRequestBody.md +2 -2
  383. data/docs/VouchersCreateResponseBodyGift.md +3 -2
  384. data/docs/VouchersCreateResponseBodyLoyaltyCard.md +5 -2
  385. data/docs/VouchersCreateWithSpecificCodeRequestBody.md +2 -2
  386. data/docs/VouchersDisableResponseBodyGift.md +3 -2
  387. data/docs/VouchersDisableResponseBodyLoyaltyCard.md +5 -2
  388. data/docs/VouchersEnableResponseBodyGift.md +3 -2
  389. data/docs/VouchersEnableResponseBodyLoyaltyCard.md +5 -2
  390. data/docs/VouchersGetResponseBodyGift.md +3 -2
  391. data/docs/VouchersGetResponseBodyLoyaltyCard.md +5 -2
  392. data/docs/VouchersImportCreateItemRequestBody.md +1 -1
  393. data/docs/VouchersTransactionsExportCreateResponseBodyResult.md +1 -1
  394. data/docs/VouchersUpdateRequestBody.md +2 -2
  395. data/docs/VouchersUpdateResponseBodyGift.md +3 -2
  396. data/docs/VouchersUpdateResponseBodyLoyaltyCard.md +5 -2
  397. data/lib/VoucherifySdk/api/async_actions_api.rb +4 -4
  398. data/lib/VoucherifySdk/api/bin_api.rb +4 -4
  399. data/lib/VoucherifySdk/api/campaigns_api.rb +220 -18
  400. data/lib/VoucherifySdk/api/categories_api.rb +2 -2
  401. data/lib/VoucherifySdk/api/client_side_api.rb +4 -4
  402. data/lib/VoucherifySdk/api/customers_api.rb +14 -14
  403. data/lib/VoucherifySdk/api/exports_api.rb +6 -6
  404. data/lib/VoucherifySdk/api/loyalties_api.rb +599 -68
  405. data/lib/VoucherifySdk/api/management_api.rb +44 -44
  406. data/lib/VoucherifySdk/api/metadata_schemas_api.rb +6 -6
  407. data/lib/VoucherifySdk/api/orders_api.rb +6 -6
  408. data/lib/VoucherifySdk/api/products_api.rb +30 -30
  409. data/lib/VoucherifySdk/api/publications_api.rb +8 -8
  410. data/lib/VoucherifySdk/api/qualifications_api.rb +2 -2
  411. data/lib/VoucherifySdk/api/redemptions_api.rb +6 -6
  412. data/lib/VoucherifySdk/api/referrals_api.rb +14 -14
  413. data/lib/VoucherifySdk/api/segments_api.rb +4 -4
  414. data/lib/VoucherifySdk/api/templates_api.rb +14 -14
  415. data/lib/VoucherifySdk/api/validation_rules_api.rb +6 -6
  416. data/lib/VoucherifySdk/api/validations_api.rb +2 -2
  417. data/lib/VoucherifySdk/api/vouchers_api.rb +25 -22
  418. data/lib/VoucherifySdk/models/access_settings.rb +219 -0
  419. data/lib/VoucherifySdk/models/access_settings_assign.rb +238 -0
  420. data/lib/VoucherifySdk/models/access_settings_campaign_assignments_list.rb +1 -1
  421. data/lib/VoucherifySdk/models/access_settings_unassign.rb +238 -0
  422. data/lib/VoucherifySdk/models/applicable_to.rb +207 -18
  423. data/lib/VoucherifySdk/models/applicable_to_order_item_units_item.rb +235 -0
  424. data/lib/VoucherifySdk/models/application_details_item.rb +284 -0
  425. data/lib/VoucherifySdk/models/area_store_campaign_assignment.rb +12 -1
  426. data/lib/VoucherifySdk/models/async_actions_list_response_body.rb +16 -5
  427. data/lib/VoucherifySdk/models/bundle.rb +267 -0
  428. data/lib/VoucherifySdk/models/bundle_identified_item.rb +296 -0
  429. data/lib/VoucherifySdk/models/bundle_missing_item.rb +274 -0
  430. data/lib/VoucherifySdk/models/campaign.rb +17 -17
  431. data/lib/VoucherifySdk/models/campaign_base.rb +17 -8
  432. data/lib/VoucherifySdk/models/campaign_loyalty_card_expiration_rules.rb +53 -10
  433. data/lib/VoucherifySdk/models/campaigns_create_request_body.rb +13 -4
  434. data/lib/VoucherifySdk/models/campaigns_create_response_body.rb +17 -17
  435. data/lib/VoucherifySdk/models/campaigns_get_response_body.rb +17 -17
  436. data/lib/VoucherifySdk/models/campaigns_import_voucher_item.rb +1 -1
  437. data/lib/VoucherifySdk/models/campaigns_summary_get_response_body.rb +673 -0
  438. data/lib/VoucherifySdk/models/campaigns_transactions_export_create_request_body.rb +209 -0
  439. data/lib/VoucherifySdk/models/campaigns_transactions_export_create_request_body_parameters.rb +256 -0
  440. data/lib/VoucherifySdk/models/campaigns_transactions_export_create_response_body.rb +334 -0
  441. data/lib/VoucherifySdk/models/campaigns_transactions_export_create_response_body_parameters.rb +256 -0
  442. data/lib/VoucherifySdk/models/campaigns_transactions_export_create_response_body_parameters_filters.rb +257 -0
  443. data/lib/VoucherifySdk/models/campaigns_transactions_export_create_response_body_parameters_filters_campaign_id.rb +209 -0
  444. data/lib/VoucherifySdk/models/campaigns_transactions_export_create_response_body_parameters_filters_campaign_id_conditions.rb +221 -0
  445. data/lib/VoucherifySdk/models/campaigns_transactions_export_create_response_body_result.rb +210 -0
  446. data/lib/VoucherifySdk/models/campaigns_transactions_list_response_body.rb +286 -0
  447. data/lib/VoucherifySdk/models/campaigns_update_request_body.rb +11 -2
  448. data/lib/VoucherifySdk/models/campaigns_update_response_body.rb +17 -17
  449. data/lib/VoucherifySdk/models/campaigns_vouchers_create_combined_response_body_gift.rb +14 -3
  450. data/lib/VoucherifySdk/models/campaigns_vouchers_create_combined_response_body_loyalty_card.rb +40 -7
  451. data/lib/VoucherifySdk/models/campaigns_vouchers_create_response_body_gift.rb +14 -3
  452. data/lib/VoucherifySdk/models/campaigns_vouchers_create_response_body_loyalty_card.rb +40 -7
  453. data/lib/VoucherifySdk/models/client_qualifications_check_eligibility_request_body.rb +12 -2
  454. data/lib/VoucherifySdk/models/client_qualifications_check_eligibility_request_body_session.rb +236 -0
  455. data/lib/VoucherifySdk/models/client_redemptions_redeem_request_body_options.rb +1 -1
  456. data/lib/VoucherifySdk/models/client_redemptions_redeem_request_body_redeemables_item_gift.rb +1 -1
  457. data/lib/VoucherifySdk/models/client_validations_validate_request_body.rb +1 -1
  458. data/lib/VoucherifySdk/models/client_validations_validate_request_body_options.rb +1 -1
  459. data/lib/VoucherifySdk/models/client_validations_validate_request_body_redeemables_item_gift.rb +1 -1
  460. data/lib/VoucherifySdk/models/client_validations_validate_response_body.rb +12 -1
  461. data/lib/VoucherifySdk/models/client_validations_validate_response_body_redeemables_item_result.rb +11 -1
  462. data/lib/VoucherifySdk/models/client_validations_validate_response_body_redeemables_item_result_discount.rb +5 -1
  463. data/lib/VoucherifySdk/models/client_validations_validate_response_body_redeemables_item_result_gift.rb +14 -3
  464. data/lib/VoucherifySdk/models/client_validations_validate_response_body_redeemables_item_result_loyalty_card.rb +1 -0
  465. data/lib/VoucherifySdk/models/create_publication_campaign.rb +3 -3
  466. data/lib/VoucherifySdk/models/customer_loyalty.rb +1 -1
  467. data/lib/VoucherifySdk/models/customer_summary_orders.rb +4 -3
  468. data/lib/VoucherifySdk/models/customer_summary_redemptions_gift.rb +2 -2
  469. data/lib/VoucherifySdk/models/customer_with_summary_loyalty_referrals_assets.rb +18 -7
  470. data/lib/VoucherifySdk/models/customers_create_response_body_assets.rb +18 -7
  471. data/lib/VoucherifySdk/models/customers_get_response_body_assets.rb +18 -7
  472. data/lib/VoucherifySdk/models/customers_update_response_body_assets.rb +18 -7
  473. data/lib/VoucherifySdk/models/discount.rb +5 -1
  474. data/lib/VoucherifySdk/models/discount_unit_multiple_one_unit.rb +1 -0
  475. data/lib/VoucherifySdk/models/earning_rule.rb +20 -1
  476. data/lib/VoucherifySdk/models/earning_rule_expiration_rules.rb +313 -0
  477. data/lib/VoucherifySdk/models/earning_rule_loyalty.rb +12 -1
  478. data/lib/VoucherifySdk/models/earning_rule_loyalty_custom_event_metadata.rb +12 -1
  479. data/lib/VoucherifySdk/models/earning_rule_loyalty_customer_metadata.rb +12 -1
  480. data/lib/VoucherifySdk/models/earning_rule_loyalty_order_amount.rb +16 -5
  481. data/lib/VoucherifySdk/models/earning_rule_loyalty_order_items_amount.rb +31 -7
  482. data/lib/VoucherifySdk/models/earning_rule_loyalty_order_items_amount_applicable_to_item.rb +242 -0
  483. data/lib/VoucherifySdk/models/earning_rule_loyalty_order_items_quantity.rb +31 -7
  484. data/lib/VoucherifySdk/models/earning_rule_loyalty_order_items_quantity_applicable_to_item.rb +242 -0
  485. data/lib/VoucherifySdk/models/earning_rule_loyalty_order_items_subtotal_amount.rb +31 -7
  486. data/lib/VoucherifySdk/models/earning_rule_loyalty_order_items_subtotal_amount_applicable_to_item.rb +242 -0
  487. data/lib/VoucherifySdk/models/earning_rule_loyalty_order_metadata.rb +12 -1
  488. data/lib/VoucherifySdk/models/earning_rule_loyalty_order_total_amount.rb +16 -5
  489. data/lib/VoucherifySdk/models/earning_rule_pending_points.rb +257 -0
  490. data/lib/VoucherifySdk/models/event_source.rb +254 -0
  491. data/lib/VoucherifySdk/models/event_source_api_key.rb +221 -0
  492. data/lib/VoucherifySdk/models/event_source_user.rb +210 -0
  493. data/lib/VoucherifySdk/models/export_campaign_transactions_filters.rb +248 -0
  494. data/lib/VoucherifySdk/models/export_parameters.rb +16 -5
  495. data/lib/VoucherifySdk/models/exports_create_request_body_parameters.rb +16 -5
  496. data/lib/VoucherifySdk/models/exports_create_response_body_parameters.rb +16 -5
  497. data/lib/VoucherifySdk/models/exports_get_response_body.rb +0 -1
  498. data/lib/VoucherifySdk/models/exports_get_response_body_parameters.rb +16 -5
  499. data/lib/VoucherifySdk/models/filter_conditions_date_time.rb +2 -2
  500. data/lib/VoucherifySdk/models/gift.rb +14 -3
  501. data/lib/VoucherifySdk/models/inapplicable_to.rb +207 -18
  502. data/lib/VoucherifySdk/models/inapplicable_to_order_item_units_item.rb +235 -0
  503. data/lib/VoucherifySdk/models/loyalties_create_campaign_request_body.rb +13 -4
  504. data/lib/VoucherifySdk/models/loyalties_create_campaign_response_body.rb +1 -1
  505. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_request_body_item.rb +22 -3
  506. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_request_body_item_loyalty.rb +12 -1
  507. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_request_body_item_loyalty_custom_event_metadata.rb +12 -1
  508. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_request_body_item_loyalty_customer_metadata.rb +12 -1
  509. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_request_body_item_loyalty_order_amount.rb +16 -5
  510. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_request_body_item_loyalty_order_items_amount.rb +31 -7
  511. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_request_body_item_loyalty_order_items_amount_applicable_to_item.rb +242 -0
  512. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_request_body_item_loyalty_order_items_quantity.rb +31 -7
  513. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_request_body_item_loyalty_order_items_quantity_applicable_to_item.rb +242 -0
  514. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_request_body_item_loyalty_order_items_subtotal_amount.rb +31 -7
  515. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_request_body_item_loyalty_order_metadata.rb +12 -1
  516. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_request_body_item_loyalty_order_total_amount.rb +16 -5
  517. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_request_body_item_order_items_subtotal_amount_applicable_to_item.rb +242 -0
  518. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_request_body_item_pending_points.rb +257 -0
  519. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_response_body.rb +20 -1
  520. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_response_body_loyalty.rb +12 -1
  521. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_response_body_loyalty_custom_event_metadata.rb +12 -1
  522. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_response_body_loyalty_customer_metadata.rb +12 -1
  523. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_response_body_loyalty_order_amount.rb +16 -5
  524. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_response_body_loyalty_order_items_amount.rb +31 -7
  525. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_response_body_loyalty_order_items_amount_applicable_to_item.rb +242 -0
  526. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_response_body_loyalty_order_items_quantity.rb +31 -7
  527. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_response_body_loyalty_order_items_quantity_applicable_to_item.rb +242 -0
  528. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_response_body_loyalty_order_items_subtotal_amount.rb +31 -7
  529. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_response_body_loyalty_order_metadata.rb +12 -1
  530. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_response_body_loyalty_order_total_amount.rb +16 -5
  531. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_response_body_order_items_subtotal_amount_applicable_to_item.rb +242 -0
  532. data/lib/VoucherifySdk/models/loyalties_earning_rules_create_response_body_pending_points.rb +257 -0
  533. data/lib/VoucherifySdk/models/loyalties_earning_rules_disable_response_body.rb +20 -1
  534. data/lib/VoucherifySdk/models/loyalties_earning_rules_disable_response_body_loyalty.rb +12 -1
  535. data/lib/VoucherifySdk/models/loyalties_earning_rules_disable_response_body_loyalty_custom_event_metadata.rb +12 -1
  536. data/lib/VoucherifySdk/models/loyalties_earning_rules_disable_response_body_loyalty_customer_metadata.rb +12 -1
  537. data/lib/VoucherifySdk/models/loyalties_earning_rules_disable_response_body_loyalty_order_amount.rb +16 -5
  538. data/lib/VoucherifySdk/models/loyalties_earning_rules_disable_response_body_loyalty_order_items_amount.rb +31 -7
  539. data/lib/VoucherifySdk/models/loyalties_earning_rules_disable_response_body_loyalty_order_items_amount_applicable_to_item.rb +242 -0
  540. data/lib/VoucherifySdk/models/loyalties_earning_rules_disable_response_body_loyalty_order_items_quantity.rb +31 -7
  541. data/lib/VoucherifySdk/models/loyalties_earning_rules_disable_response_body_loyalty_order_items_quantity_applicable_to_item.rb +242 -0
  542. data/lib/VoucherifySdk/models/loyalties_earning_rules_disable_response_body_loyalty_order_items_subtotal_amount.rb +31 -7
  543. data/lib/VoucherifySdk/models/loyalties_earning_rules_disable_response_body_loyalty_order_metadata.rb +12 -1
  544. data/lib/VoucherifySdk/models/loyalties_earning_rules_disable_response_body_loyalty_order_total_amount.rb +16 -5
  545. data/lib/VoucherifySdk/models/loyalties_earning_rules_disable_response_body_order_items_subtotal_amount_applicable_to_item.rb +242 -0
  546. data/lib/VoucherifySdk/models/loyalties_earning_rules_disable_response_body_pending_points.rb +257 -0
  547. data/lib/VoucherifySdk/models/loyalties_earning_rules_enable_response_body.rb +20 -1
  548. data/lib/VoucherifySdk/models/loyalties_earning_rules_enable_response_body_loyalty.rb +12 -1
  549. data/lib/VoucherifySdk/models/loyalties_earning_rules_enable_response_body_loyalty_custom_event_metadata.rb +12 -1
  550. data/lib/VoucherifySdk/models/loyalties_earning_rules_enable_response_body_loyalty_customer_metadata.rb +12 -1
  551. data/lib/VoucherifySdk/models/loyalties_earning_rules_enable_response_body_loyalty_order_amount.rb +16 -5
  552. data/lib/VoucherifySdk/models/loyalties_earning_rules_enable_response_body_loyalty_order_items_amount.rb +31 -7
  553. data/lib/VoucherifySdk/models/loyalties_earning_rules_enable_response_body_loyalty_order_items_amount_applicable_to_item.rb +242 -0
  554. data/lib/VoucherifySdk/models/loyalties_earning_rules_enable_response_body_loyalty_order_items_quantity.rb +31 -7
  555. data/lib/VoucherifySdk/models/loyalties_earning_rules_enable_response_body_loyalty_order_items_quantity_applicable_to_item.rb +242 -0
  556. data/lib/VoucherifySdk/models/loyalties_earning_rules_enable_response_body_loyalty_order_items_subtotal_amount.rb +31 -7
  557. data/lib/VoucherifySdk/models/loyalties_earning_rules_enable_response_body_loyalty_order_metadata.rb +12 -1
  558. data/lib/VoucherifySdk/models/loyalties_earning_rules_enable_response_body_loyalty_order_total_amount.rb +16 -5
  559. data/lib/VoucherifySdk/models/loyalties_earning_rules_enable_response_body_order_items_subtotal_amount_applicable_to_item.rb +242 -0
  560. data/lib/VoucherifySdk/models/loyalties_earning_rules_enable_response_body_pending_points.rb +257 -0
  561. data/lib/VoucherifySdk/models/loyalties_earning_rules_get_response_body.rb +20 -1
  562. data/lib/VoucherifySdk/models/loyalties_earning_rules_get_response_body_loyalty.rb +12 -1
  563. data/lib/VoucherifySdk/models/loyalties_earning_rules_get_response_body_loyalty_custom_event_metadata.rb +12 -1
  564. data/lib/VoucherifySdk/models/loyalties_earning_rules_get_response_body_loyalty_customer_metadata.rb +12 -1
  565. data/lib/VoucherifySdk/models/loyalties_earning_rules_get_response_body_loyalty_order_amount.rb +16 -5
  566. data/lib/VoucherifySdk/models/loyalties_earning_rules_get_response_body_loyalty_order_items_amount.rb +31 -7
  567. data/lib/VoucherifySdk/models/loyalties_earning_rules_get_response_body_loyalty_order_items_amount_applicable_to_item.rb +242 -0
  568. data/lib/VoucherifySdk/models/loyalties_earning_rules_get_response_body_loyalty_order_items_quantity.rb +31 -7
  569. data/lib/VoucherifySdk/models/loyalties_earning_rules_get_response_body_loyalty_order_items_quantity_applicable_to_item.rb +242 -0
  570. data/lib/VoucherifySdk/models/loyalties_earning_rules_get_response_body_loyalty_order_items_subtotal_amount.rb +31 -7
  571. data/lib/VoucherifySdk/models/loyalties_earning_rules_get_response_body_loyalty_order_items_subtotal_amount_applicable_to_item.rb +242 -0
  572. data/lib/VoucherifySdk/models/loyalties_earning_rules_get_response_body_loyalty_order_metadata.rb +12 -1
  573. data/lib/VoucherifySdk/models/loyalties_earning_rules_get_response_body_loyalty_order_total_amount.rb +16 -5
  574. data/lib/VoucherifySdk/models/loyalties_earning_rules_get_response_body_pending_points.rb +257 -0
  575. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_request_body.rb +22 -3
  576. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_request_body_loyalty.rb +12 -1
  577. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_request_body_loyalty_custom_event_metadata.rb +12 -1
  578. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_request_body_loyalty_customer_metadata.rb +12 -1
  579. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_request_body_loyalty_order_amount.rb +16 -5
  580. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_request_body_loyalty_order_items_amount.rb +31 -7
  581. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_request_body_loyalty_order_items_amount_applicable_to_item.rb +242 -0
  582. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_request_body_loyalty_order_items_quantity.rb +31 -7
  583. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_request_body_loyalty_order_items_quantity_applicable_to_item.rb +242 -0
  584. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_request_body_loyalty_order_items_subtotal_amount.rb +31 -7
  585. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_request_body_loyalty_order_metadata.rb +12 -1
  586. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_request_body_loyalty_order_total_amount.rb +16 -5
  587. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_request_body_order_items_subtotal_amount_applicable_to_item.rb +242 -0
  588. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_request_body_pending_points.rb +257 -0
  589. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_response_body.rb +20 -1
  590. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_response_body_loyalty.rb +12 -1
  591. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_response_body_loyalty_custom_event_metadata.rb +12 -1
  592. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_response_body_loyalty_customer_metadata.rb +12 -1
  593. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_response_body_loyalty_order_amount.rb +16 -5
  594. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_response_body_loyalty_order_items_amount.rb +31 -7
  595. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_response_body_loyalty_order_items_amount_applicable_to_item.rb +242 -0
  596. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_response_body_loyalty_order_items_quantity.rb +31 -7
  597. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_response_body_loyalty_order_items_quantity_applicable_to_item.rb +242 -0
  598. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_response_body_loyalty_order_items_subtotal_amount.rb +31 -7
  599. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_response_body_loyalty_order_metadata.rb +12 -1
  600. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_response_body_loyalty_order_total_amount.rb +16 -5
  601. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_response_body_order_items_subtotal_amount_applicable_to_item.rb +242 -0
  602. data/lib/VoucherifySdk/models/loyalties_earning_rules_update_response_body_pending_points.rb +257 -0
  603. data/lib/VoucherifySdk/models/loyalties_get_campaign_response_body.rb +1 -1
  604. data/lib/VoucherifySdk/models/loyalties_members_create_response_body_loyalty_card.rb +40 -7
  605. data/lib/VoucherifySdk/models/loyalties_members_create_response_body_publish.rb +1 -1
  606. data/lib/VoucherifySdk/models/loyalties_members_get_response_body_loyalty_card.rb +40 -7
  607. data/lib/VoucherifySdk/models/loyalties_members_get_response_body_publish.rb +1 -1
  608. data/lib/VoucherifySdk/models/loyalties_members_pending_points_activate_response_body.rb +309 -0
  609. data/lib/VoucherifySdk/models/loyalties_members_pending_points_activate_response_body_related_object.rb +247 -0
  610. data/lib/VoucherifySdk/models/loyalties_members_pending_points_balance_request_body.rb +210 -0
  611. data/lib/VoucherifySdk/models/loyalties_members_pending_points_balance_response_body.rb +283 -0
  612. data/lib/VoucherifySdk/models/loyalties_members_pending_points_balance_response_body_related_object.rb +247 -0
  613. data/lib/VoucherifySdk/models/loyalties_members_pending_points_list_response_body.rb +286 -0
  614. data/lib/VoucherifySdk/models/loyalties_members_points_expiration_list_response_body_data_item.rb +1 -1
  615. data/lib/VoucherifySdk/models/loyalties_members_redemption_redeem_request_body.rb +1 -1
  616. data/lib/VoucherifySdk/models/loyalties_members_redemption_redeem_response_body.rb +11 -1
  617. data/lib/VoucherifySdk/models/loyalties_members_redemption_redeem_response_body_related_redemptions_rollbacks_item.rb +38 -4
  618. data/lib/VoucherifySdk/models/loyalties_members_redemption_redeem_response_body_session.rb +210 -0
  619. data/lib/VoucherifySdk/models/loyalties_members_redemption_redeem_response_body_voucher_gift.rb +14 -3
  620. data/lib/VoucherifySdk/models/loyalties_members_redemption_redeem_response_body_voucher_loyalty_card.rb +40 -7
  621. data/lib/VoucherifySdk/models/loyalties_members_transfers_create_response_body_loyalty_card.rb +40 -7
  622. data/lib/VoucherifySdk/models/loyalties_pending_points_list_response_body.rb +286 -0
  623. data/lib/VoucherifySdk/models/loyalties_points_expiration_export_create_request_body_parameters.rb +1 -1
  624. data/lib/VoucherifySdk/models/loyalties_reward_assignments_reward_get_response_body.rb +1 -1
  625. data/lib/VoucherifySdk/models/loyalties_transactions_export_create_request_body.rb +209 -0
  626. data/lib/VoucherifySdk/models/loyalties_transactions_export_create_request_body_parameters.rb +256 -0
  627. data/lib/VoucherifySdk/models/loyalties_transactions_list_response_body.rb +286 -0
  628. data/lib/VoucherifySdk/models/loyalties_update_campaign_request_body.rb +11 -2
  629. data/lib/VoucherifySdk/models/loyalties_update_campaign_response_body.rb +1 -1
  630. data/lib/VoucherifySdk/models/loyalty_campaign.rb +1 -1
  631. data/lib/VoucherifySdk/models/loyalty_card_transaction.rb +1 -1
  632. data/lib/VoucherifySdk/models/loyalty_card_transaction_details.rb +20 -1
  633. data/lib/VoucherifySdk/models/loyalty_card_transaction_details_balance.rb +12 -1
  634. data/lib/VoucherifySdk/models/loyalty_card_transaction_details_earning_rule.rb +1 -1
  635. data/lib/VoucherifySdk/models/loyalty_card_transaction_details_holder_loyalty_tier.rb +221 -0
  636. data/lib/VoucherifySdk/models/loyalty_card_transaction_details_loyalty_tier.rb +3 -1
  637. data/lib/VoucherifySdk/models/loyalty_card_transactions_type.rb +2 -1
  638. data/lib/VoucherifySdk/models/loyalty_member_loyalty_card.rb +40 -7
  639. data/lib/VoucherifySdk/models/loyalty_member_publish.rb +1 -1
  640. data/lib/VoucherifySdk/models/loyalty_pending_points.rb +314 -0
  641. data/lib/VoucherifySdk/models/loyalty_pending_points_details.rb +249 -0
  642. data/lib/VoucherifySdk/models/loyalty_pending_points_details_earning_rule.rb +220 -0
  643. data/lib/VoucherifySdk/models/loyalty_pending_points_details_earning_rule_source.rb +210 -0
  644. data/lib/VoucherifySdk/models/loyalty_pending_points_details_event.rb +302 -0
  645. data/lib/VoucherifySdk/models/loyalty_pending_points_details_holder_loyalty_tier.rb +221 -0
  646. data/lib/VoucherifySdk/models/loyalty_pending_points_details_loyalty_tier.rb +221 -0
  647. data/lib/VoucherifySdk/models/loyalty_pending_points_details_order.rb +221 -0
  648. data/lib/VoucherifySdk/models/loyalty_points_bucket.rb +1 -1
  649. data/lib/VoucherifySdk/models/loyalty_tier_expiration.rb +1 -1
  650. data/lib/VoucherifySdk/models/loyalty_tiers_expiration_all.rb +1 -1
  651. data/lib/VoucherifySdk/models/management_projects_stacking_rules.rb +112 -9
  652. data/lib/VoucherifySdk/models/management_projects_stacking_rules_create_request_body.rb +116 -13
  653. data/lib/VoucherifySdk/models/management_projects_stacking_rules_create_response_body.rb +112 -9
  654. data/lib/VoucherifySdk/models/management_projects_stacking_rules_get_response_body.rb +112 -9
  655. data/lib/VoucherifySdk/models/management_projects_stacking_rules_update_request_body.rb +116 -13
  656. data/lib/VoucherifySdk/models/management_projects_stacking_rules_update_response_body.rb +112 -9
  657. data/lib/VoucherifySdk/models/management_projects_users_invite_create_request_body.rb +1 -1
  658. data/lib/VoucherifySdk/models/management_projects_users_update_role_request_body.rb +1 -1
  659. data/lib/VoucherifySdk/models/order.rb +3 -3
  660. data/lib/VoucherifySdk/models/order_calculated.rb +28 -28
  661. data/lib/VoucherifySdk/models/order_calculated_item.rb +18 -6
  662. data/lib/VoucherifySdk/models/order_item.rb +1 -1
  663. data/lib/VoucherifySdk/models/order_redemptions_entry.rb +1 -1
  664. data/lib/VoucherifySdk/models/orders_create_request_body.rb +3 -3
  665. data/lib/VoucherifySdk/models/orders_create_response_body.rb +28 -28
  666. data/lib/VoucherifySdk/models/orders_get_response_body.rb +28 -28
  667. data/lib/VoucherifySdk/models/orders_import_create_request_body_item.rb +17 -17
  668. data/lib/VoucherifySdk/models/orders_update_request_body.rb +3 -3
  669. data/lib/VoucherifySdk/models/orders_update_response_body.rb +28 -28
  670. data/lib/VoucherifySdk/models/parameter_filters_list_campaigns_campaign_status.rb +2 -1
  671. data/lib/VoucherifySdk/models/parameter_filters_list_campaigns_campaign_status_conditions.rb +1 -0
  672. data/lib/VoucherifySdk/models/parameter_filters_list_campaigns_category_ids.rb +1 -1
  673. data/lib/VoucherifySdk/models/parameter_filters_list_campaigns_is_referral_code.rb +1 -1
  674. data/lib/VoucherifySdk/models/parameter_order_list_pending_points.rb +40 -0
  675. data/lib/VoucherifySdk/models/parameters_filters_list_campaign_transactions.rb +247 -0
  676. data/lib/VoucherifySdk/models/product_collections_create_request_body.rb +2 -4
  677. data/lib/VoucherifySdk/models/products_skus_create_request_body.rb +1 -1
  678. data/lib/VoucherifySdk/models/products_skus_create_response_body.rb +1 -1
  679. data/lib/VoucherifySdk/models/products_skus_list_response_body.rb +1 -1
  680. data/lib/VoucherifySdk/models/products_skus_update_request_body.rb +1 -1
  681. data/lib/VoucherifySdk/models/promotion_tier_campaign.rb +1 -1
  682. data/lib/VoucherifySdk/models/promotions_tiers_create_response_body_campaign.rb +1 -1
  683. data/lib/VoucherifySdk/models/promotions_tiers_disable_response_body_campaign.rb +1 -1
  684. data/lib/VoucherifySdk/models/promotions_tiers_enable_response_body_campaign.rb +1 -1
  685. data/lib/VoucherifySdk/models/promotions_tiers_get_response_body_campaign.rb +1 -1
  686. data/lib/VoucherifySdk/models/promotions_tiers_update_response_body_campaign.rb +1 -1
  687. data/lib/VoucherifySdk/models/qualifications_check_eligibility_request_body.rb +12 -2
  688. data/lib/VoucherifySdk/models/qualifications_check_eligibility_request_body_session.rb +236 -0
  689. data/lib/VoucherifySdk/models/qualifications_option.rb +4 -4
  690. data/lib/VoucherifySdk/models/qualifications_option_filters_resource_type_conditions.rb +1 -1
  691. data/lib/VoucherifySdk/models/qualifications_redeemable.rb +1 -1
  692. data/lib/VoucherifySdk/models/qualifications_redeemable_base.rb +1 -1
  693. data/lib/VoucherifySdk/models/redeemable_gift.rb +18 -7
  694. data/lib/VoucherifySdk/models/redeemable_loyalty_card.rb +2 -2
  695. data/lib/VoucherifySdk/models/redeemable_result.rb +10 -1
  696. data/lib/VoucherifySdk/models/redeemable_voucher_gift.rb +14 -3
  697. data/lib/VoucherifySdk/models/redeemable_voucher_loyalty_card.rb +40 -7
  698. data/lib/VoucherifySdk/models/redeemable_voucher_publish.rb +1 -1
  699. data/lib/VoucherifySdk/models/redemption.rb +11 -1
  700. data/lib/VoucherifySdk/models/redemption_entry.rb +11 -1
  701. data/lib/VoucherifySdk/models/redemption_entry_order.rb +28 -28
  702. data/lib/VoucherifySdk/models/redemption_entry_promotion_tier_campaign.rb +1 -1
  703. data/lib/VoucherifySdk/models/redemption_entry_related_redemptions_rollbacks_item.rb +38 -4
  704. data/lib/VoucherifySdk/models/redemption_entry_session.rb +210 -0
  705. data/lib/VoucherifySdk/models/redemption_entry_voucher_gift.rb +14 -3
  706. data/lib/VoucherifySdk/models/redemption_entry_voucher_loyalty_card.rb +40 -7
  707. data/lib/VoucherifySdk/models/redemption_related_redemptions_rollbacks_item.rb +38 -4
  708. data/lib/VoucherifySdk/models/redemption_reward_result_parameters_campaign.rb +1 -1
  709. data/lib/VoucherifySdk/models/redemption_rollback.rb +15 -15
  710. data/lib/VoucherifySdk/models/redemption_session.rb +210 -0
  711. data/lib/VoucherifySdk/models/redemption_voucher_gift.rb +14 -3
  712. data/lib/VoucherifySdk/models/redemption_voucher_loyalty_card.rb +40 -7
  713. data/lib/VoucherifySdk/models/redemptions_get_response_body.rb +11 -1
  714. data/lib/VoucherifySdk/models/redemptions_get_response_body_order.rb +28 -28
  715. data/lib/VoucherifySdk/models/redemptions_get_response_body_promotion_tier_campaign.rb +1 -1
  716. data/lib/VoucherifySdk/models/redemptions_get_response_body_related_redemptions_rollbacks_item.rb +38 -4
  717. data/lib/VoucherifySdk/models/redemptions_get_response_body_session.rb +210 -0
  718. data/lib/VoucherifySdk/models/redemptions_get_response_body_voucher_gift.rb +14 -3
  719. data/lib/VoucherifySdk/models/redemptions_get_response_body_voucher_loyalty_card.rb +40 -7
  720. data/lib/VoucherifySdk/models/redemptions_list_response_body_redemptions_item.rb +11 -1
  721. data/lib/VoucherifySdk/models/redemptions_list_response_body_redemptions_item_order.rb +27 -28
  722. data/lib/VoucherifySdk/models/redemptions_list_response_body_redemptions_item_promotion_tier_campaign.rb +1 -1
  723. data/lib/VoucherifySdk/models/redemptions_list_response_body_redemptions_item_related_redemptions.rb +0 -1
  724. data/lib/VoucherifySdk/models/redemptions_list_response_body_redemptions_item_related_redemptions_rollbacks_item.rb +38 -4
  725. data/lib/VoucherifySdk/models/redemptions_list_response_body_redemptions_item_session.rb +210 -0
  726. data/lib/VoucherifySdk/models/redemptions_list_response_body_redemptions_item_voucher_gift.rb +14 -3
  727. data/lib/VoucherifySdk/models/redemptions_list_response_body_redemptions_item_voucher_loyalty_card.rb +40 -7
  728. data/lib/VoucherifySdk/models/redemptions_redeem_request_body_options.rb +1 -1
  729. data/lib/VoucherifySdk/models/redemptions_redeem_request_body_redeemables_item_gift.rb +1 -1
  730. data/lib/VoucherifySdk/models/redemptions_rollback_create_response_body.rb +15 -15
  731. data/lib/VoucherifySdk/models/reward.rb +1 -1
  732. data/lib/VoucherifySdk/models/rewards_create_request_body.rb +1 -1
  733. data/lib/VoucherifySdk/models/rewards_create_request_body_parameters_campaign.rb +1 -1
  734. data/lib/VoucherifySdk/models/rewards_create_response_body.rb +1 -1
  735. data/lib/VoucherifySdk/models/rewards_update_request_body.rb +1 -1
  736. data/lib/VoucherifySdk/models/rewards_update_request_body_parameters_campaign.rb +1 -1
  737. data/lib/VoucherifySdk/models/rewards_update_response_body.rb +1 -1
  738. data/lib/VoucherifySdk/models/segments_create_request_body.rb +2 -2
  739. data/lib/VoucherifySdk/models/segments_create_response_body.rb +31 -20
  740. data/lib/VoucherifySdk/models/segments_get_response_body.rb +32 -21
  741. data/lib/VoucherifySdk/models/simple_loyalty_card.rb +40 -7
  742. data/lib/VoucherifySdk/models/simple_voucher_redemption.rb +16 -5
  743. data/lib/VoucherifySdk/models/stacking_rules.rb +72 -20
  744. data/lib/VoucherifySdk/models/templates_campaigns_campaign_setup_create_request_body.rb +13 -4
  745. data/lib/VoucherifySdk/models/trash_bin_item.rb +1 -1
  746. data/lib/VoucherifySdk/models/validation_rule.rb +11 -1
  747. data/lib/VoucherifySdk/models/validation_rules_create_request_body.rb +11 -1
  748. data/lib/VoucherifySdk/models/validation_rules_create_response_body.rb +11 -1
  749. data/lib/VoucherifySdk/models/validation_rules_get_response_body.rb +11 -1
  750. data/lib/VoucherifySdk/models/validation_rules_update_request_body.rb +11 -1
  751. data/lib/VoucherifySdk/models/validation_rules_update_response_body.rb +11 -1
  752. data/lib/VoucherifySdk/models/validations_redeemable_inapplicable_result.rb +14 -5
  753. data/lib/VoucherifySdk/models/validations_validate_request_body.rb +1 -1
  754. data/lib/VoucherifySdk/models/validations_validate_request_body_options.rb +1 -1
  755. data/lib/VoucherifySdk/models/validations_validate_request_body_redeemables_item_gift.rb +1 -1
  756. data/lib/VoucherifySdk/models/validations_validate_response_body.rb +12 -1
  757. data/lib/VoucherifySdk/models/validations_validate_response_body_redeemables_item_result.rb +11 -1
  758. data/lib/VoucherifySdk/models/validations_validate_response_body_redeemables_item_result_discount.rb +5 -1
  759. data/lib/VoucherifySdk/models/validations_validate_response_body_redeemables_item_result_gift.rb +14 -3
  760. data/lib/VoucherifySdk/models/validations_validate_response_body_redeemables_item_result_loyalty_card.rb +1 -0
  761. data/lib/VoucherifySdk/models/validity_hours.rb +1 -1
  762. data/lib/VoucherifySdk/models/validity_hours_daily_item.rb +1 -1
  763. data/lib/VoucherifySdk/models/voucher_balance.rb +12 -1
  764. data/lib/VoucherifySdk/models/voucher_gift.rb +14 -3
  765. data/lib/VoucherifySdk/models/voucher_loyalty_card.rb +40 -7
  766. data/lib/VoucherifySdk/models/voucher_transaction.rb +2 -2
  767. data/lib/VoucherifySdk/models/voucher_transaction_details.rb +20 -1
  768. data/lib/VoucherifySdk/models/voucher_transaction_details_balance.rb +12 -1
  769. data/lib/VoucherifySdk/models/voucher_transaction_details_custom_event.rb +2 -2
  770. data/lib/VoucherifySdk/models/voucher_transaction_details_earning_rule.rb +1 -1
  771. data/lib/VoucherifySdk/models/voucher_transaction_details_event_schema.rb +2 -2
  772. data/lib/VoucherifySdk/models/voucher_transaction_details_holder_loyalty_tier.rb +221 -0
  773. data/lib/VoucherifySdk/models/voucher_transaction_details_loyalty_tier.rb +3 -1
  774. data/lib/VoucherifySdk/models/voucher_transaction_details_rollback.rb +1 -1
  775. data/lib/VoucherifySdk/models/voucher_transaction_details_segment.rb +2 -0
  776. data/lib/VoucherifySdk/models/voucher_transactions_export_parameters.rb +1 -1
  777. data/lib/VoucherifySdk/models/voucher_transactions_filters.rb +1 -1
  778. data/lib/VoucherifySdk/models/voucher_with_categories_gift.rb +14 -3
  779. data/lib/VoucherifySdk/models/voucher_with_categories_loyalty_card.rb +40 -7
  780. data/lib/VoucherifySdk/models/vouchers_balance_update_request_body.rb +1 -1
  781. data/lib/VoucherifySdk/models/vouchers_balance_update_response_body.rb +2 -2
  782. data/lib/VoucherifySdk/models/vouchers_create_request_body.rb +2 -2
  783. data/lib/VoucherifySdk/models/vouchers_create_response_body_gift.rb +14 -3
  784. data/lib/VoucherifySdk/models/vouchers_create_response_body_loyalty_card.rb +40 -7
  785. data/lib/VoucherifySdk/models/vouchers_create_with_specific_code_request_body.rb +2 -2
  786. data/lib/VoucherifySdk/models/vouchers_disable_response_body_gift.rb +14 -3
  787. data/lib/VoucherifySdk/models/vouchers_disable_response_body_loyalty_card.rb +40 -7
  788. data/lib/VoucherifySdk/models/vouchers_enable_response_body_gift.rb +14 -3
  789. data/lib/VoucherifySdk/models/vouchers_enable_response_body_loyalty_card.rb +40 -7
  790. data/lib/VoucherifySdk/models/vouchers_get_response_body_gift.rb +14 -3
  791. data/lib/VoucherifySdk/models/vouchers_get_response_body_loyalty_card.rb +40 -7
  792. data/lib/VoucherifySdk/models/vouchers_import_create_item_request_body.rb +1 -1
  793. data/lib/VoucherifySdk/models/vouchers_transactions_export_create_response_body_result.rb +1 -1
  794. data/lib/VoucherifySdk/models/vouchers_update_request_body.rb +2 -2
  795. data/lib/VoucherifySdk/models/vouchers_update_response_body_gift.rb +14 -3
  796. data/lib/VoucherifySdk/models/vouchers_update_response_body_loyalty_card.rb +40 -7
  797. data/lib/VoucherifySdk/version.rb +1 -1
  798. data/lib/VoucherifySdk.rb +85 -0
  799. metadata +210 -36
@@ -88,7 +88,7 @@ module VoucherifySdk
88
88
  end
89
89
 
90
90
  # Add Vouchers to Campaign
91
- # This method gives the possibility to push new vouchers to an existing campaign. New vouchers will inherit properties from the campaign profile. However, it is possible to overwrite some of them in the request body. If you provide an optional code_config parameter with a voucher code configuration, then it will be used to generate new voucher codes. Otherwise, the voucher code configuration from the campaign will be used. This API request starts a process that affects Voucherify data in bulk. In case of small jobs (like bulk update) the request is put into a queue and processed once every other bulk request placed in the queue prior to this request is finished. However, when the job takes a longer time (like vouchers generation) then it is processed in small portions in a round-robin fashion. When there is a list of vouchers generation scheduled, then they will all have the IN_PROGRESS status shortly. This way, small jobs added just after scheduling big jobs of the same type will be processed in a short time window. The result will return the async ID. You can verify the status of your request via this API request.
91
+ # This method gives the possibility to push new vouchers to an existing campaign. New vouchers will inherit properties from the campaign profile. However, it is possible to overwrite some of them in the request body. If you provide an optional code_config parameter with a voucher code configuration, then it will be used to generate new voucher codes. Otherwise, the voucher code configuration from the campaign will be used. This API request starts a process that affects Voucherify data in bulk. In case of small jobs (like bulk update) the request is put into a queue and processed once every other bulk request placed in the queue prior to this request is finished. However, when the job takes a longer time (like vouchers generation) then it is processed in small portions in a round-robin fashion. When there is a list of vouchers generation scheduled, then they will all have the IN_PROGRESS status shortly. This way, small jobs added just after scheduling big jobs of the same type will be processed in a short time window. The result will return the async ID. You can verify the status of your request via this [API request](/api-reference/async-actions/get-async-action).
92
92
  # @param campaign_id [String] The campaign ID or name of the campaign to which voucher(s) will be added. You can either pass the campaign ID, which was assigned by Voucherify, or the name of the campaign as the path parameter value.
93
93
  # @param [Hash] opts the optional parameters
94
94
  # @option opts [Integer] :vouchers_count Number of vouchers that should be added.
@@ -100,7 +100,7 @@ module VoucherifySdk
100
100
  end
101
101
 
102
102
  # Add Vouchers to Campaign
103
- # This method gives the possibility to push new vouchers to an existing campaign. New vouchers will inherit properties from the campaign profile. However, it is possible to overwrite some of them in the request body. If you provide an optional code_config parameter with a voucher code configuration, then it will be used to generate new voucher codes. Otherwise, the voucher code configuration from the campaign will be used. This API request starts a process that affects Voucherify data in bulk. In case of small jobs (like bulk update) the request is put into a queue and processed once every other bulk request placed in the queue prior to this request is finished. However, when the job takes a longer time (like vouchers generation) then it is processed in small portions in a round-robin fashion. When there is a list of vouchers generation scheduled, then they will all have the IN_PROGRESS status shortly. This way, small jobs added just after scheduling big jobs of the same type will be processed in a short time window. The result will return the async ID. You can verify the status of your request via this API request.
103
+ # This method gives the possibility to push new vouchers to an existing campaign. New vouchers will inherit properties from the campaign profile. However, it is possible to overwrite some of them in the request body. If you provide an optional code_config parameter with a voucher code configuration, then it will be used to generate new voucher codes. Otherwise, the voucher code configuration from the campaign will be used. This API request starts a process that affects Voucherify data in bulk. In case of small jobs (like bulk update) the request is put into a queue and processed once every other bulk request placed in the queue prior to this request is finished. However, when the job takes a longer time (like vouchers generation) then it is processed in small portions in a round-robin fashion. When there is a list of vouchers generation scheduled, then they will all have the IN_PROGRESS status shortly. This way, small jobs added just after scheduling big jobs of the same type will be processed in a short time window. The result will return the async ID. You can verify the status of your request via this [API request](/api-reference/async-actions/get-async-action).
104
104
  # @param campaign_id [String] The campaign ID or name of the campaign to which voucher(s) will be added. You can either pass the campaign ID, which was assigned by Voucherify, or the name of the campaign as the path parameter value.
105
105
  # @param [Hash] opts the optional parameters
106
106
  # @option opts [Integer] :vouchers_count Number of vouchers that should be added.
@@ -157,7 +157,7 @@ module VoucherifySdk
157
157
  end
158
158
 
159
159
  # Create Campaign
160
- # Method to create a batch of vouchers aggregated in one campaign. You can choose a variety of voucher types and define a unique pattern for generating codes. 📘 Global uniqueness All campaign codes are unique across the whole project. Voucherify will not allow you to generate 2 campaigns with the same coupon code. 🚧 Code generation status This is an asynchronous action; you cant read or modify a newly created campaign until the code generation is completed. See the creation_status field in the campaign object description. 🚧 Standalone Vouchers and Campaigns In version [v20241004](https://support.voucherify.io/article/23-whats-new-in-voucherify#v20241004), standalone vouchers created through the Voucherify dashboard create a campaign for that voucher. However, you cannot create a standalone discount or gift voucher campaign with the type: STANDALONE through the API. Voucherify developers work on adding that feature. Follow the [Voucherify Release Notes](https://support.voucherify.io/article/23-whats-new-in-voucherify#v20241004) for more details about released features.
160
+ # Method to create a batch of vouchers aggregated in one campaign. You can choose a variety of voucher types and define a unique pattern for generating codes. 📘 Global uniqueness All campaign codes are unique across the whole project. Voucherify will not allow you to generate 2 campaigns with the same coupon code. 🚧 Code generation status This is an asynchronous action; you cant read or modify a newly created campaign until the code generation is completed. See the creation_status field in the [campaign object](/api-reference/campaigns/campaign-object) description.
161
161
  # @param [Hash] opts the optional parameters
162
162
  # @option opts [CampaignsCreateRequestBody] :campaigns_create_request_body Specify the details of the campaign that you would like to create.
163
163
  # @return [CampaignsCreateResponseBody]
@@ -167,7 +167,7 @@ module VoucherifySdk
167
167
  end
168
168
 
169
169
  # Create Campaign
170
- # Method to create a batch of vouchers aggregated in one campaign. You can choose a variety of voucher types and define a unique pattern for generating codes. 📘 Global uniqueness All campaign codes are unique across the whole project. Voucherify will not allow you to generate 2 campaigns with the same coupon code. 🚧 Code generation status This is an asynchronous action; you cant read or modify a newly created campaign until the code generation is completed. See the creation_status field in the campaign object description. 🚧 Standalone Vouchers and Campaigns In version [v20241004](https://support.voucherify.io/article/23-whats-new-in-voucherify#v20241004), standalone vouchers created through the Voucherify dashboard create a campaign for that voucher. However, you cannot create a standalone discount or gift voucher campaign with the type: STANDALONE through the API. Voucherify developers work on adding that feature. Follow the [Voucherify Release Notes](https://support.voucherify.io/article/23-whats-new-in-voucherify#v20241004) for more details about released features.
170
+ # Method to create a batch of vouchers aggregated in one campaign. You can choose a variety of voucher types and define a unique pattern for generating codes. 📘 Global uniqueness All campaign codes are unique across the whole project. Voucherify will not allow you to generate 2 campaigns with the same coupon code. 🚧 Code generation status This is an asynchronous action; you cant read or modify a newly created campaign until the code generation is completed. See the creation_status field in the [campaign object](/api-reference/campaigns/campaign-object) description.
171
171
  # @param [Hash] opts the optional parameters
172
172
  # @option opts [CampaignsCreateRequestBody] :campaigns_create_request_body Specify the details of the campaign that you would like to create.
173
173
  # @return [Array<(CampaignsCreateResponseBody, Integer, Hash)>] CampaignsCreateResponseBody data, response status code and response headers
@@ -221,7 +221,7 @@ module VoucherifySdk
221
221
  end
222
222
 
223
223
  # Delete Campaign
224
- # Deletes a campaign and all related vouchers. This action cannot be undone. Also, this method immediately removes any redemptions on the voucher. If the force parameter is set to false or not set at all, the campaign and all related vouchers will be moved to the bin. This API request starts a process that affects Voucherify data in bulk. In case of small jobs (like bulk update) the request is put into a queue and processed once every other bulk request placed in the queue prior to this request is finished. However, when the job takes a longer time (like vouchers generation) then it is processed in small portions in a round-robin fashion. When there is a list of vouchers generation scheduled, then they will all have the IN_PROGRESS status shortly. This way, small jobs added just after scheduling big jobs of the same type will be processed in a short time window. The result will return the async ID. You can verify the status of your request via this API request.
224
+ # Deletes a campaign and all related vouchers. This action cannot be undone. Also, this method immediately removes any redemptions on the voucher. If the force parameter is set to false or not set at all, the campaign and all related vouchers will be moved to [the bin](/api-reference/bin/list-bin-entries). This API request starts a process that affects Voucherify data in bulk. In case of small jobs (like bulk update) the request is put into a queue and processed once every other bulk request placed in the queue prior to this request is finished. However, when the job takes a longer time (like vouchers generation) then it is processed in small portions in a round-robin fashion. When there is a list of vouchers generation scheduled, then they will all have the IN_PROGRESS status shortly. This way, small jobs added just after scheduling big jobs of the same type will be processed in a short time window. The result will return the async ID. You can verify the status of your request via this [API request](/api-reference/async-actions/get-async-action).
225
225
  # @param campaign_id [String] You can either pass the campaign ID, which was assigned by Voucherify, or the name of the campaign as the path parameter value.
226
226
  # @param [Hash] opts the optional parameters
227
227
  # @option opts [Boolean] :force If this flag is set to true, the campaign and related vouchers will be removed permanently. If it is set to false or not set at all, the campaign and related vouchers will be moved to the bin. Going forward, the user will be able to create the next campaign with exactly the same name.
@@ -232,7 +232,7 @@ module VoucherifySdk
232
232
  end
233
233
 
234
234
  # Delete Campaign
235
- # Deletes a campaign and all related vouchers. This action cannot be undone. Also, this method immediately removes any redemptions on the voucher. If the force parameter is set to false or not set at all, the campaign and all related vouchers will be moved to the bin. This API request starts a process that affects Voucherify data in bulk. In case of small jobs (like bulk update) the request is put into a queue and processed once every other bulk request placed in the queue prior to this request is finished. However, when the job takes a longer time (like vouchers generation) then it is processed in small portions in a round-robin fashion. When there is a list of vouchers generation scheduled, then they will all have the IN_PROGRESS status shortly. This way, small jobs added just after scheduling big jobs of the same type will be processed in a short time window. The result will return the async ID. You can verify the status of your request via this API request.
235
+ # Deletes a campaign and all related vouchers. This action cannot be undone. Also, this method immediately removes any redemptions on the voucher. If the force parameter is set to false or not set at all, the campaign and all related vouchers will be moved to [the bin](/api-reference/bin/list-bin-entries). This API request starts a process that affects Voucherify data in bulk. In case of small jobs (like bulk update) the request is put into a queue and processed once every other bulk request placed in the queue prior to this request is finished. However, when the job takes a longer time (like vouchers generation) then it is processed in small portions in a round-robin fashion. When there is a list of vouchers generation scheduled, then they will all have the IN_PROGRESS status shortly. This way, small jobs added just after scheduling big jobs of the same type will be processed in a short time window. The result will return the async ID. You can verify the status of your request via this [API request](/api-reference/async-actions/get-async-action).
236
236
  # @param campaign_id [String] You can either pass the campaign ID, which was assigned by Voucherify, or the name of the campaign as the path parameter value.
237
237
  # @param [Hash] opts the optional parameters
238
238
  # @option opts [Boolean] :force If this flag is set to true, the campaign and related vouchers will be removed permanently. If it is set to false or not set at all, the campaign and related vouchers will be moved to the bin. Going forward, the user will be able to create the next campaign with exactly the same name.
@@ -400,6 +400,72 @@ module VoucherifySdk
400
400
  return data, status_code, headers
401
401
  end
402
402
 
403
+ # Export Campaign Transactions
404
+ # Export transactions is an asynchronous process that generates a CSV file with the data about credit movements on all gift cards or point movements on all loyalty cards in a given campaign. To export transactions: 1. In the export request, use parameters to select which fields will be exported, in what order, and which data will be filtered. 2. Use the returned id to track the export status with the [GET Export](/api-reference/exports/get-export) method. 3. In the GET Export method, when the returned status field has the DONE value, the export file has been generated. 4. Use the URL in the result property to download the file. You must be logged to your Voucherify account on a given cluster in the browser to be able to download the file. An export request will almost always result in a single file being generated by the system. However, when the data volume is large, the system may split the results into multiple files. An example export file can look as follows: 👍 Export Loyalty Campaign Transactions For loyalty campaigns, this method works in the same way the [POST Export Loyalty Campaign Transactions](/api-reference/loyalties/export-loyalty-campaign-transactions) does.
405
+ # @param campaign_id [String] You can either pass the campaign ID, which was assigned by Voucherify, or the name of the campaign as the path parameter value.
406
+ # @param [Hash] opts the optional parameters
407
+ # @option opts [CampaignsTransactionsExportCreateRequestBody] :campaigns_transactions_export_create_request_body Specify the parameters for the transaction export.
408
+ # @return [CampaignsTransactionsExportCreateResponseBody]
409
+ def export_campaign_transactions(campaign_id, opts = {})
410
+ data, _status_code, _headers = export_campaign_transactions_with_http_info(campaign_id, opts)
411
+ data
412
+ end
413
+
414
+ # Export Campaign Transactions
415
+ # Export transactions is an asynchronous process that generates a CSV file with the data about credit movements on all gift cards or point movements on all loyalty cards in a given campaign. To export transactions: 1. In the export request, use parameters to select which fields will be exported, in what order, and which data will be filtered. 2. Use the returned id to track the export status with the [GET Export](/api-reference/exports/get-export) method. 3. In the GET Export method, when the returned status field has the DONE value, the export file has been generated. 4. Use the URL in the result property to download the file. You must be logged to your Voucherify account on a given cluster in the browser to be able to download the file. An export request will almost always result in a single file being generated by the system. However, when the data volume is large, the system may split the results into multiple files. An example export file can look as follows: 👍 Export Loyalty Campaign Transactions For loyalty campaigns, this method works in the same way the [POST Export Loyalty Campaign Transactions](/api-reference/loyalties/export-loyalty-campaign-transactions) does.
416
+ # @param campaign_id [String] You can either pass the campaign ID, which was assigned by Voucherify, or the name of the campaign as the path parameter value.
417
+ # @param [Hash] opts the optional parameters
418
+ # @option opts [CampaignsTransactionsExportCreateRequestBody] :campaigns_transactions_export_create_request_body Specify the parameters for the transaction export.
419
+ # @return [Array<(CampaignsTransactionsExportCreateResponseBody, Integer, Hash)>] CampaignsTransactionsExportCreateResponseBody data, response status code and response headers
420
+ private def export_campaign_transactions_with_http_info(campaign_id, opts = {})
421
+ if @api_client.config.debugging
422
+ @api_client.config.logger.debug 'Calling API: CampaignsApi.export_campaign_transactions ...'
423
+ end
424
+ # resource path
425
+ local_var_path = '/v1/campaigns/{campaignId}/transactions/export'.sub('{' + 'campaignId' + '}', CGI.escape(campaign_id.to_s))
426
+
427
+ # query parameters
428
+ query_params = opts[:query_params] || {}
429
+
430
+ # header parameters
431
+ header_params = opts[:header_params] || {}
432
+ # HTTP header 'Accept' (if needed)
433
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
434
+ # HTTP header 'Content-Type'
435
+ content_type = @api_client.select_header_content_type(['application/json'])
436
+ if !content_type.nil?
437
+ header_params['Content-Type'] = content_type
438
+ end
439
+
440
+ # form parameters
441
+ form_params = opts[:form_params] || {}
442
+
443
+ # http body (model)
444
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'campaigns_transactions_export_create_request_body'])
445
+
446
+ # return_type
447
+ return_type = opts[:debug_return_type] || 'CampaignsTransactionsExportCreateResponseBody'
448
+
449
+ # auth_names
450
+ auth_names = opts[:debug_auth_names] || ['X-App-Id', 'X-App-Token']
451
+
452
+ new_options = opts.merge(
453
+ :operation => :"CampaignsApi.export_campaign_transactions",
454
+ :header_params => header_params,
455
+ :query_params => query_params,
456
+ :form_params => form_params,
457
+ :body => post_body,
458
+ :auth_names => auth_names,
459
+ :return_type => return_type
460
+ )
461
+
462
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
463
+ if @api_client.config.debugging
464
+ @api_client.config.logger.debug "API called: CampaignsApi#export_campaign_transactions\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
465
+ end
466
+ return data, status_code, headers
467
+ end
468
+
403
469
  # Get Campaign
404
470
  # Retrieves the campaign with the given campaign ID or campaign name.
405
471
  # @param campaign_id [String] You can either pass the campaign ID, which was assigned by Voucherify, or the name of the campaign as the path parameter value.
@@ -459,11 +525,76 @@ module VoucherifySdk
459
525
  return data, status_code, headers
460
526
  end
461
527
 
528
+ # Get Campaign Summary
529
+ # Returns data for campaign analytics, covering validations, redemptions, publications, and other details specific to a given campaign type. Use start_date and end_date to narrow down the data to specific periods. 🚧 Campaigns created before 17 June 2025 This endpoint returns analytics data for campaigns that were created after 17 June 2025. Older campaigns return empty data.
530
+ # @param campaign_id [String] You can either pass the campaign ID, which was assigned by Voucherify, or the name of the campaign as the path parameter value.
531
+ # @param [Hash] opts the optional parameters
532
+ # @option opts [Date] :start_date Timestamp representing the date which results must begin on. Represented in ISO 8601 format.
533
+ # @option opts [Date] :end_date Timestamp representing the date which results must end on. Represented in ISO 8601 format.
534
+ # @return [CampaignsSummaryGetResponseBody]
535
+ def get_campaign_summary(campaign_id, opts = {})
536
+ data, _status_code, _headers = get_campaign_summary_with_http_info(campaign_id, opts)
537
+ data
538
+ end
539
+
540
+ # Get Campaign Summary
541
+ # Returns data for campaign analytics, covering validations, redemptions, publications, and other details specific to a given campaign type. Use start_date and end_date to narrow down the data to specific periods. 🚧 Campaigns created before 17 June 2025 This endpoint returns analytics data for campaigns that were created after 17 June 2025. Older campaigns return empty data.
542
+ # @param campaign_id [String] You can either pass the campaign ID, which was assigned by Voucherify, or the name of the campaign as the path parameter value.
543
+ # @param [Hash] opts the optional parameters
544
+ # @option opts [Date] :start_date Timestamp representing the date which results must begin on. Represented in ISO 8601 format.
545
+ # @option opts [Date] :end_date Timestamp representing the date which results must end on. Represented in ISO 8601 format.
546
+ # @return [Array<(CampaignsSummaryGetResponseBody, Integer, Hash)>] CampaignsSummaryGetResponseBody data, response status code and response headers
547
+ private def get_campaign_summary_with_http_info(campaign_id, opts = {})
548
+ if @api_client.config.debugging
549
+ @api_client.config.logger.debug 'Calling API: CampaignsApi.get_campaign_summary ...'
550
+ end
551
+ # resource path
552
+ local_var_path = '/v1/campaigns/{campaignId}/summary'.sub('{' + 'campaignId' + '}', CGI.escape(campaign_id.to_s))
553
+
554
+ # query parameters
555
+ query_params = opts[:query_params] || {}
556
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
557
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
558
+
559
+ # header parameters
560
+ header_params = opts[:header_params] || {}
561
+ # HTTP header 'Accept' (if needed)
562
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
563
+
564
+ # form parameters
565
+ form_params = opts[:form_params] || {}
566
+
567
+ # http body (model)
568
+ post_body = opts[:debug_body]
569
+
570
+ # return_type
571
+ return_type = opts[:debug_return_type] || 'CampaignsSummaryGetResponseBody'
572
+
573
+ # auth_names
574
+ auth_names = opts[:debug_auth_names] || ['X-App-Id', 'X-App-Token']
575
+
576
+ new_options = opts.merge(
577
+ :operation => :"CampaignsApi.get_campaign_summary",
578
+ :header_params => header_params,
579
+ :query_params => query_params,
580
+ :form_params => form_params,
581
+ :body => post_body,
582
+ :auth_names => auth_names,
583
+ :return_type => return_type
584
+ )
585
+
586
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
587
+ if @api_client.config.debugging
588
+ @api_client.config.logger.debug "API called: CampaignsApi#get_campaign_summary\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
589
+ end
590
+ return data, status_code, headers
591
+ end
592
+
462
593
  # Import Vouchers to Campaign
463
- # Imports vouchers to an **existing** campaign. This API request starts a process that affects Voucherify data in bulk. In case of small jobs (like bulk update) the request is put into a queue and processed once every other bulk request placed in the queue prior to this request is finished. However, when the job takes a longer time (like vouchers generation) then it is processed in small portions in a round-robin fashion. When there is a list of vouchers generation scheduled, then they will all have the IN_PROGRESS status shortly. This way, small jobs added just after scheduling big jobs of the same type will be processed in a short time window. The result will return the async ID. You can verify the status of your request via this API request.
594
+ # Imports vouchers to an **existing** campaign. This API request starts a process that affects Voucherify data in bulk. In case of small jobs (like bulk update) the request is put into a queue and processed once every other bulk request placed in the queue prior to this request is finished. However, when the job takes a longer time (like vouchers generation) then it is processed in small portions in a round-robin fashion. When there is a list of vouchers generation scheduled, then they will all have the IN_PROGRESS status shortly. This way, small jobs added just after scheduling big jobs of the same type will be processed in a short time window. The result will return the async ID. You can verify the status of your request via this [API request](/api-reference/async-actions/get-async-action).
464
595
  # @param campaign_id [String] The ID of an existing campaign to which youre importing the codes. You can either pass the campaign ID, which was assigned by Voucherify, or the name of the campaign as the path parameter value.
465
596
  # @param [Hash] opts the optional parameters
466
- # @option opts [Array<CampaignsImportVoucherItem>] :campaigns_import_voucher_item Discount type, expiration date and the remaining attributes will be taken from the Campaign settings.
597
+ # @option opts [Array<CampaignsImportVoucherItem>] :campaigns_import_voucher_item Discount type, expiration date and the remaining attributes will be taken from the [Campaign](/api-reference/campaigns/get-campaign) settings.
467
598
  # @return [CampaignsImportCreateResponseBody]
468
599
  def import_vouchers_to_campaign(campaign_id, opts = {})
469
600
  data, _status_code, _headers = import_vouchers_to_campaign_with_http_info(campaign_id, opts)
@@ -471,10 +602,10 @@ module VoucherifySdk
471
602
  end
472
603
 
473
604
  # Import Vouchers to Campaign
474
- # Imports vouchers to an **existing** campaign. This API request starts a process that affects Voucherify data in bulk. In case of small jobs (like bulk update) the request is put into a queue and processed once every other bulk request placed in the queue prior to this request is finished. However, when the job takes a longer time (like vouchers generation) then it is processed in small portions in a round-robin fashion. When there is a list of vouchers generation scheduled, then they will all have the IN_PROGRESS status shortly. This way, small jobs added just after scheduling big jobs of the same type will be processed in a short time window. The result will return the async ID. You can verify the status of your request via this API request.
605
+ # Imports vouchers to an **existing** campaign. This API request starts a process that affects Voucherify data in bulk. In case of small jobs (like bulk update) the request is put into a queue and processed once every other bulk request placed in the queue prior to this request is finished. However, when the job takes a longer time (like vouchers generation) then it is processed in small portions in a round-robin fashion. When there is a list of vouchers generation scheduled, then they will all have the IN_PROGRESS status shortly. This way, small jobs added just after scheduling big jobs of the same type will be processed in a short time window. The result will return the async ID. You can verify the status of your request via this [API request](/api-reference/async-actions/get-async-action).
475
606
  # @param campaign_id [String] The ID of an existing campaign to which youre importing the codes. You can either pass the campaign ID, which was assigned by Voucherify, or the name of the campaign as the path parameter value.
476
607
  # @param [Hash] opts the optional parameters
477
- # @option opts [Array<CampaignsImportVoucherItem>] :campaigns_import_voucher_item Discount type, expiration date and the remaining attributes will be taken from the Campaign settings.
608
+ # @option opts [Array<CampaignsImportVoucherItem>] :campaigns_import_voucher_item Discount type, expiration date and the remaining attributes will be taken from the [Campaign](/api-reference/campaigns/get-campaign) settings.
478
609
  # @return [Array<(CampaignsImportCreateResponseBody, Integer, Hash)>] CampaignsImportCreateResponseBody data, response status code and response headers
479
610
  private def import_vouchers_to_campaign_with_http_info(campaign_id, opts = {})
480
611
  if @api_client.config.debugging
@@ -526,7 +657,7 @@ module VoucherifySdk
526
657
  end
527
658
 
528
659
  # Import Vouchers to Campaign by CSV
529
- # Imports vouchers to an **existing** campaign. The CSV file has to include headers in the first line. This API request starts a process that affects Voucherify data in bulk. In case of small jobs (like bulk update) the request is put into a queue and processed once every other bulk request placed in the queue prior to this request is finished. However, when the job takes a longer time (like vouchers generation) then it is processed in small portions in a round-robin fashion. When there is a list of vouchers generation scheduled, then they will all have the IN_PROGRESS status shortly. This way, small jobs added just after scheduling big jobs of the same type will be processed in a short time window. The result will return the async ID. You can verify the status of your request via this API request.
660
+ # Imports vouchers to an **existing** campaign. The CSV file has to include headers in the first line. This API request starts a process that affects Voucherify data in bulk. In case of small jobs (like bulk update) the request is put into a queue and processed once every other bulk request placed in the queue prior to this request is finished. However, when the job takes a longer time (like vouchers generation) then it is processed in small portions in a round-robin fashion. When there is a list of vouchers generation scheduled, then they will all have the IN_PROGRESS status shortly. This way, small jobs added just after scheduling big jobs of the same type will be processed in a short time window. The result will return the async ID. You can verify the status of your request via this [API request](/api-reference/async-actions/get-async-action).
530
661
  # @param campaign_id [String] The campaign ID or name of the campaign being enabled. You can either pass the campaign ID, which was assigned by Voucherify or the name of the campaign as the path parameter value.
531
662
  # @param [Hash] opts the optional parameters
532
663
  # @option opts [File] :file File path.
@@ -537,7 +668,7 @@ module VoucherifySdk
537
668
  end
538
669
 
539
670
  # Import Vouchers to Campaign by CSV
540
- # Imports vouchers to an **existing** campaign. The CSV file has to include headers in the first line. This API request starts a process that affects Voucherify data in bulk. In case of small jobs (like bulk update) the request is put into a queue and processed once every other bulk request placed in the queue prior to this request is finished. However, when the job takes a longer time (like vouchers generation) then it is processed in small portions in a round-robin fashion. When there is a list of vouchers generation scheduled, then they will all have the IN_PROGRESS status shortly. This way, small jobs added just after scheduling big jobs of the same type will be processed in a short time window. The result will return the async ID. You can verify the status of your request via this API request.
671
+ # Imports vouchers to an **existing** campaign. The CSV file has to include headers in the first line. This API request starts a process that affects Voucherify data in bulk. In case of small jobs (like bulk update) the request is put into a queue and processed once every other bulk request placed in the queue prior to this request is finished. However, when the job takes a longer time (like vouchers generation) then it is processed in small portions in a round-robin fashion. When there is a list of vouchers generation scheduled, then they will all have the IN_PROGRESS status shortly. This way, small jobs added just after scheduling big jobs of the same type will be processed in a short time window. The result will return the async ID. You can verify the status of your request via this [API request](/api-reference/async-actions/get-async-action).
541
672
  # @param campaign_id [String] The campaign ID or name of the campaign being enabled. You can either pass the campaign ID, which was assigned by Voucherify or the name of the campaign as the path parameter value.
542
673
  # @param [Hash] opts the optional parameters
543
674
  # @option opts [File] :file File path.
@@ -592,15 +723,86 @@ module VoucherifySdk
592
723
  return data, status_code, headers
593
724
  end
594
725
 
726
+ # List Campaign Transactions
727
+ # Retrieves all transactions for the campaign with the given campaign ID or campaign name. The id filter denotes the unique transaction identifier. 🚧 The endpoint works only for gift card and loyalty campaigns.
728
+ # @param campaign_id [String] You can either pass the campaign ID, which was assigned by Voucherify, or the name of the campaign as the path parameter value.
729
+ # @param [Hash] opts the optional parameters
730
+ # @option opts [Integer] :limit Limits the number of objects to be returned. The limit can range between 1 and 100 items. If no limit is set, it returns 10 items.
731
+ # @option opts [ParameterOrderListTransactions] :order Sorts the results using one of the filtering options, where the dash - preceding a sorting option means sorting in a descending order.
732
+ # @option opts [String] :starting_after_id A cursor for pagination. It retrieves the transactions starting after a transaction with the given ID.
733
+ # @option opts [ParametersFiltersListCampaignTransactions] :filters Filters for listing responses.
734
+ # @return [CampaignsTransactionsListResponseBody]
735
+ def list_campaign_transactions(campaign_id, opts = {})
736
+ data, _status_code, _headers = list_campaign_transactions_with_http_info(campaign_id, opts)
737
+ data
738
+ end
739
+
740
+ # List Campaign Transactions
741
+ # Retrieves all transactions for the campaign with the given campaign ID or campaign name. The id filter denotes the unique transaction identifier. 🚧 The endpoint works only for gift card and loyalty campaigns.
742
+ # @param campaign_id [String] You can either pass the campaign ID, which was assigned by Voucherify, or the name of the campaign as the path parameter value.
743
+ # @param [Hash] opts the optional parameters
744
+ # @option opts [Integer] :limit Limits the number of objects to be returned. The limit can range between 1 and 100 items. If no limit is set, it returns 10 items.
745
+ # @option opts [ParameterOrderListTransactions] :order Sorts the results using one of the filtering options, where the dash - preceding a sorting option means sorting in a descending order.
746
+ # @option opts [String] :starting_after_id A cursor for pagination. It retrieves the transactions starting after a transaction with the given ID.
747
+ # @option opts [ParametersFiltersListCampaignTransactions] :filters Filters for listing responses.
748
+ # @return [Array<(CampaignsTransactionsListResponseBody, Integer, Hash)>] CampaignsTransactionsListResponseBody data, response status code and response headers
749
+ private def list_campaign_transactions_with_http_info(campaign_id, opts = {})
750
+ if @api_client.config.debugging
751
+ @api_client.config.logger.debug 'Calling API: CampaignsApi.list_campaign_transactions ...'
752
+ end
753
+ # resource path
754
+ local_var_path = '/v1/campaigns/{campaignId}/transactions'.sub('{' + 'campaignId' + '}', CGI.escape(campaign_id.to_s))
755
+
756
+ # query parameters
757
+ query_params = opts[:query_params] || {}
758
+ query_params[:'limit'] = opts[:'limit'] if !opts[:'limit'].nil?
759
+ query_params[:'order'] = opts[:'order'] if !opts[:'order'].nil?
760
+ query_params[:'starting_after_id'] = opts[:'starting_after_id'] if !opts[:'starting_after_id'].nil?
761
+ query_params[:'filters'] = opts[:'filters'] if !opts[:'filters'].nil?
762
+
763
+ # header parameters
764
+ header_params = opts[:header_params] || {}
765
+ # HTTP header 'Accept' (if needed)
766
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
767
+
768
+ # form parameters
769
+ form_params = opts[:form_params] || {}
770
+
771
+ # http body (model)
772
+ post_body = opts[:debug_body]
773
+
774
+ # return_type
775
+ return_type = opts[:debug_return_type] || 'CampaignsTransactionsListResponseBody'
776
+
777
+ # auth_names
778
+ auth_names = opts[:debug_auth_names] || ['X-App-Id', 'X-App-Token']
779
+
780
+ new_options = opts.merge(
781
+ :operation => :"CampaignsApi.list_campaign_transactions",
782
+ :header_params => header_params,
783
+ :query_params => query_params,
784
+ :form_params => form_params,
785
+ :body => post_body,
786
+ :auth_names => auth_names,
787
+ :return_type => return_type
788
+ )
789
+
790
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
791
+ if @api_client.config.debugging
792
+ @api_client.config.logger.debug "API called: CampaignsApi#list_campaign_transactions\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
793
+ end
794
+ return data, status_code, headers
795
+ end
796
+
595
797
  # List Campaigns
596
798
  # Retrieve a list of campaigns in a project. The campaigns are returned sorted by creation date, with the most recent campaigns appearing first. When you get a list of campaigns, you can optionally specify query parameters to customize the amount of campaigns returned per call using limit, which page of campaigns to return using page, sort the campaigns using the order query parameter and filter the results by the campaign_type. This method will return an error when trying to return a limit of more than 100 campaigns.
597
799
  # @param [Hash] opts the optional parameters
598
800
  # @option opts [Integer] :limit Limits the number of objects to be returned. The limit can range between 1 and 100 items. If no limit is set, it returns 10 items.
599
801
  # @option opts [Integer] :page Which page of results to return. The lowest value is 1.
600
802
  # @option opts [ParameterCampaignType] :campaign_type This attribute allows filtering by campaign type.
601
- # @option opts [ParameterExpandListCampaigns] :expand Includes an expanded categories object in the response. If the [Areas and Stores](https://support.voucherify.io/article/623-areas-and-stores) Enterprise feature is enabled, add access_settings_assignments to return assigned areas and stores.
803
+ # @option opts [ParameterExpandListCampaigns] :expand Includes an expanded categories object in the response. If the [Areas and Stores](/orchestrate/areas-and-stores) Enterprise feature is enabled, add access_settings_assignments to return assigned areas and stores.
602
804
  # @option opts [ParameterOrderListCampaigns] :order Sorts the results using one of the filtering options, where the dash - preceding a sorting option means sorting in a descending order.
603
- # @option opts [ParameterFiltersListCampaigns] :filters Filters the results by campaign status or whether the campaign is a referral campaign.
805
+ # @option opts [ParameterFiltersListCampaigns] :filters Filters the results by various campaign properties.
604
806
  # @return [CampaignsListResponseBody]
605
807
  def list_campaigns(opts = {})
606
808
  data, _status_code, _headers = list_campaigns_with_http_info(opts)
@@ -613,9 +815,9 @@ module VoucherifySdk
613
815
  # @option opts [Integer] :limit Limits the number of objects to be returned. The limit can range between 1 and 100 items. If no limit is set, it returns 10 items.
614
816
  # @option opts [Integer] :page Which page of results to return. The lowest value is 1.
615
817
  # @option opts [ParameterCampaignType] :campaign_type This attribute allows filtering by campaign type.
616
- # @option opts [ParameterExpandListCampaigns] :expand Includes an expanded categories object in the response. If the [Areas and Stores](https://support.voucherify.io/article/623-areas-and-stores) Enterprise feature is enabled, add access_settings_assignments to return assigned areas and stores.
818
+ # @option opts [ParameterExpandListCampaigns] :expand Includes an expanded categories object in the response. If the [Areas and Stores](/orchestrate/areas-and-stores) Enterprise feature is enabled, add access_settings_assignments to return assigned areas and stores.
617
819
  # @option opts [ParameterOrderListCampaigns] :order Sorts the results using one of the filtering options, where the dash - preceding a sorting option means sorting in a descending order.
618
- # @option opts [ParameterFiltersListCampaigns] :filters Filters the results by campaign status or whether the campaign is a referral campaign.
820
+ # @option opts [ParameterFiltersListCampaigns] :filters Filters the results by various campaign properties.
619
821
  # @return [Array<(CampaignsListResponseBody, Integer, Hash)>] CampaignsListResponseBody data, response status code and response headers
620
822
  private def list_campaigns_with_http_info(opts = {})
621
823
  if @api_client.config.debugging
@@ -668,7 +870,7 @@ module VoucherifySdk
668
870
  end
669
871
 
670
872
  # Update Campaign
671
- # Updates the specified campaign by setting the values of the parameters passed in the request body. Any parameters not provided in the payload will be left unchanged. Fields other than the ones listed in the request body wont be modified. Even if provided, they will be silently skipped. ## Vouchers will be affected This method will update vouchers aggregated in the campaign. It will affect all vouchers that are not published or redeemed yet.
873
+ # Updates the specified campaign by setting the values of the parameters passed in the request body. Any parameters not provided in the payload will be left unchanged. Fields other than the ones listed in the request body wont be modified. Even if provided, they will be silently skipped. 🚧 Vouchers will be affected This method will update vouchers aggregated in the campaign. It will affect all vouchers that are not published or redeemed yet.
672
874
  # @param campaign_id [String] You can either pass the campaign ID, which was assigned by Voucherify, or the name of the campaign as the path parameter value.
673
875
  # @param [Hash] opts the optional parameters
674
876
  # @option opts [CampaignsUpdateRequestBody] :campaigns_update_request_body Specify the campaign parameters to be updated.
@@ -679,7 +881,7 @@ module VoucherifySdk
679
881
  end
680
882
 
681
883
  # Update Campaign
682
- # Updates the specified campaign by setting the values of the parameters passed in the request body. Any parameters not provided in the payload will be left unchanged. Fields other than the ones listed in the request body wont be modified. Even if provided, they will be silently skipped. ## Vouchers will be affected This method will update vouchers aggregated in the campaign. It will affect all vouchers that are not published or redeemed yet.
884
+ # Updates the specified campaign by setting the values of the parameters passed in the request body. Any parameters not provided in the payload will be left unchanged. Fields other than the ones listed in the request body wont be modified. Even if provided, they will be silently skipped. 🚧 Vouchers will be affected This method will update vouchers aggregated in the campaign. It will affect all vouchers that are not published or redeemed yet.
683
885
  # @param campaign_id [String] You can either pass the campaign ID, which was assigned by Voucherify, or the name of the campaign as the path parameter value.
684
886
  # @param [Hash] opts the optional parameters
685
887
  # @option opts [CampaignsUpdateRequestBody] :campaigns_update_request_body Specify the campaign parameters to be updated.
@@ -257,7 +257,7 @@ module VoucherifySdk
257
257
  end
258
258
 
259
259
  # Update Category
260
- # Update category using the category ID.
260
+ # Update a category using the category ID.
261
261
  # @param category_id [String] Unique category ID assigned by Voucherify.
262
262
  # @param [Hash] opts the optional parameters
263
263
  # @option opts [CategoriesUpdateRequestBody] :categories_update_request_body Specify the details of the category that you would like to update.
@@ -268,7 +268,7 @@ module VoucherifySdk
268
268
  end
269
269
 
270
270
  # Update Category
271
- # Update category using the category ID.
271
+ # Update a category using the category ID.
272
272
  # @param category_id [String] Unique category ID assigned by Voucherify.
273
273
  # @param [Hash] opts the optional parameters
274
274
  # @option opts [CategoriesUpdateRequestBody] :categories_update_request_body Specify the details of the category that you would like to update.
@@ -20,7 +20,7 @@ module VoucherifySdk
20
20
  @api_client = api_client
21
21
  end
22
22
  # Check Eligibility (client-side)
23
- # Generate a list of redeemables that are applicable in the context of the customer and order. The new qualifications method is an improved version of Campaign Qualifications, Voucher Qualifications, and Promotions Validation API requests. The new qualification method introduces the following improvements: - Qualification results are returned faster - No limit on the number of returned redeemables - Introduces new qualification scenarios, not available in the previous version 👍 Scenario Guide Read our dedicated guide to learn about some use cases this endpoint can cover here. # Paging The Voucherify Qualifications API request will return to you all of the redeemables available for the customer in batches of up to 50 redeemables. To get the next batch of redeemables, you need to use the starting_after cursor. To process of paging the redeemables works in the following manner: - You send the first API request for Qualifications without the starting_after parameter. - The response will contain a parameter named has_more. If the parameters value is set to true, then more redeemables are available. - Get the value of the created_at parameter of the last returned redeemable. The value of this parameter will be used as a cursor to retrieve the next page of redeemables. - Send another API request for Qualification with the starting_after parameter set to the value taken from the created_at parameter from the last returned redeemable. - Voucherify will return the next page of redeemables. - If the has_more parameter is set to true, apply steps 3-5 to get the next page of redeemables.
23
+ # Generate a list of redeemables that are applicable in the context of the customer and order. The new qualifications method is an improved version of [Campaign Qualifications](/api-reference/campaigns/examine-campaign-qualification), [Voucher Qualifications](/api-reference/vouchers/examine-voucher-qualification) API requests. The new qualification method introduces the following improvements: - Qualification results are returned faster - No limit on the number of returned redeemables - Introduces new qualification scenarios, not available in the previous version 👍 Scenario Guide Read our dedicated guide to learn about some use cases this endpoint can cover [here](/guides/checking-eligibility). # Paging The Voucherify Qualifications API request will return to you all of the redeemables available for the customer in batches of up to 50 redeemables per page. To get the next batch of redeemables, you need to use the starting_after cursor. To process of paging the redeemables works in the following manner: - You send the first API request for Qualifications without the starting_after parameter. - The response will contain a parameter named has_more. If the parameters value is set to true, then more redeemables are available. - Get the value of the created_at parameter of the last returned redeemable. The value of this parameter will be used as a cursor to retrieve the next page of redeemables. - Send another API request for Qualification with the starting_after parameter set to the value taken from the created_at parameter from the last returned redeemable. - Voucherify will return the next page of redeemables. - If the has_more parameter is set to true, apply steps 3-5 to get the next page of redeemables. # Caching Qualification has a 5-minute cache for the returned results. If you change your campaign settings or validation rules, the changes will apply to qualification results after the cache refreshes.
24
24
  # @param [Hash] opts the optional parameters
25
25
  # @option opts [ClientQualificationsCheckEligibilityRequestBody] :client_qualifications_check_eligibility_request_body Define order and customer context.
26
26
  # @return [ClientQualificationsCheckEligibilityResponseBody]
@@ -30,7 +30,7 @@ module VoucherifySdk
30
30
  end
31
31
 
32
32
  # Check Eligibility (client-side)
33
- # Generate a list of redeemables that are applicable in the context of the customer and order. The new qualifications method is an improved version of Campaign Qualifications, Voucher Qualifications, and Promotions Validation API requests. The new qualification method introduces the following improvements: - Qualification results are returned faster - No limit on the number of returned redeemables - Introduces new qualification scenarios, not available in the previous version 👍 Scenario Guide Read our dedicated guide to learn about some use cases this endpoint can cover here. # Paging The Voucherify Qualifications API request will return to you all of the redeemables available for the customer in batches of up to 50 redeemables. To get the next batch of redeemables, you need to use the starting_after cursor. To process of paging the redeemables works in the following manner: - You send the first API request for Qualifications without the starting_after parameter. - The response will contain a parameter named has_more. If the parameters value is set to true, then more redeemables are available. - Get the value of the created_at parameter of the last returned redeemable. The value of this parameter will be used as a cursor to retrieve the next page of redeemables. - Send another API request for Qualification with the starting_after parameter set to the value taken from the created_at parameter from the last returned redeemable. - Voucherify will return the next page of redeemables. - If the has_more parameter is set to true, apply steps 3-5 to get the next page of redeemables.
33
+ # Generate a list of redeemables that are applicable in the context of the customer and order. The new qualifications method is an improved version of [Campaign Qualifications](/api-reference/campaigns/examine-campaign-qualification), [Voucher Qualifications](/api-reference/vouchers/examine-voucher-qualification) API requests. The new qualification method introduces the following improvements: - Qualification results are returned faster - No limit on the number of returned redeemables - Introduces new qualification scenarios, not available in the previous version 👍 Scenario Guide Read our dedicated guide to learn about some use cases this endpoint can cover [here](/guides/checking-eligibility). # Paging The Voucherify Qualifications API request will return to you all of the redeemables available for the customer in batches of up to 50 redeemables per page. To get the next batch of redeemables, you need to use the starting_after cursor. To process of paging the redeemables works in the following manner: - You send the first API request for Qualifications without the starting_after parameter. - The response will contain a parameter named has_more. If the parameters value is set to true, then more redeemables are available. - Get the value of the created_at parameter of the last returned redeemable. The value of this parameter will be used as a cursor to retrieve the next page of redeemables. - Send another API request for Qualification with the starting_after parameter set to the value taken from the created_at parameter from the last returned redeemable. - Voucherify will return the next page of redeemables. - If the has_more parameter is set to true, apply steps 3-5 to get the next page of redeemables. # Caching Qualification has a 5-minute cache for the returned results. If you change your campaign settings or validation rules, the changes will apply to qualification results after the cache refreshes.
34
34
  # @param [Hash] opts the optional parameters
35
35
  # @option opts [ClientQualificationsCheckEligibilityRequestBody] :client_qualifications_check_eligibility_request_body Define order and customer context.
36
36
  # @return [Array<(ClientQualificationsCheckEligibilityResponseBody, Integer, Hash)>] ClientQualificationsCheckEligibilityResponseBody data, response status code and response headers
@@ -156,7 +156,7 @@ module VoucherifySdk
156
156
  end
157
157
 
158
158
  # Redeem Stackable Discounts (client-side)
159
- # This method is accessible through public keys which you can use in client side requests coming from mobile and web browser applications. # How API returns calculated discounts and order amounts in the response In the table below, you can see the logic the API follows to calculate discounts and amounts: 📘 Rollbacks You cant roll back a child redemption. When you call rollback on a stacked redemption, all child redemptions will be rolled back. You need to refer to a parent redemption ID in your rollback request.
159
+ # This method is accessible through public keys which you can use in client side requests coming from mobile and web browser applications. # How API returns calculated discounts and order amounts in the response In the table below, you can see the logic the API follows to calculate discounts and amounts: 📘 Rollbacks You cant roll back a child redemption. When you call rollback on a stacked redemption, all child redemptions will be rolled back. You need to refer to a parent redemption ID in your [rollback request](/api-reference/redemptions/rollback-stackable-redemptions).
160
160
  # @param origin [String] Indicates the origin (scheme, hostname, and port).
161
161
  # @param [Hash] opts the optional parameters
162
162
  # @option opts [ClientRedemptionsRedeemRequestBody] :client_redemptions_redeem_request_body
@@ -167,7 +167,7 @@ module VoucherifySdk
167
167
  end
168
168
 
169
169
  # Redeem Stackable Discounts (client-side)
170
- # This method is accessible through public keys which you can use in client side requests coming from mobile and web browser applications. # How API returns calculated discounts and order amounts in the response In the table below, you can see the logic the API follows to calculate discounts and amounts: 📘 Rollbacks You cant roll back a child redemption. When you call rollback on a stacked redemption, all child redemptions will be rolled back. You need to refer to a parent redemption ID in your rollback request.
170
+ # This method is accessible through public keys which you can use in client side requests coming from mobile and web browser applications. # How API returns calculated discounts and order amounts in the response In the table below, you can see the logic the API follows to calculate discounts and amounts: 📘 Rollbacks You cant roll back a child redemption. When you call rollback on a stacked redemption, all child redemptions will be rolled back. You need to refer to a parent redemption ID in your [rollback request](/api-reference/redemptions/rollback-stackable-redemptions).
171
171
  # @param origin [String] Indicates the origin (scheme, hostname, and port).
172
172
  # @param [Hash] opts the optional parameters
173
173
  # @option opts [ClientRedemptionsRedeemRequestBody] :client_redemptions_redeem_request_body
@@ -200,7 +200,7 @@ module VoucherifySdk
200
200
  end
201
201
 
202
202
  # Get Customer
203
- # Retrieve customer details.
203
+ # Retrieves details of a given customer by customers id or source_id.
204
204
  # @param customer_id [String] A Voucherify customers id or source_id.
205
205
  # @param [Hash] opts the optional parameters
206
206
  # @return [CustomersGetResponseBody]
@@ -210,7 +210,7 @@ module VoucherifySdk
210
210
  end
211
211
 
212
212
  # Get Customer
213
- # Retrieve customer details.
213
+ # Retrieves details of a given customer by customers id or source_id.
214
214
  # @param customer_id [String] A Voucherify customers id or source_id.
215
215
  # @param [Hash] opts the optional parameters
216
216
  # @return [Array<(CustomersGetResponseBody, Integer, Hash)>] CustomersGetResponseBody data, response status code and response headers
@@ -259,7 +259,7 @@ module VoucherifySdk
259
259
  end
260
260
 
261
261
  # Import and Update Customers using CSV
262
- # This API method lets you import or update customer data. To get a proper and valid response, please send a CSV file with data separated by commas. # Request Example # CSV File Format The CSV file has to include headers in the first line. All properties which cannot be mapped to standard customer fields will be added to the metadata object. 📘 Standard customer fields mapping **No spaces allowed in field names** Id, Name, Email, Phone, Birthdate, Source_id, Address_line_1, Address_line_2, Address_Postal_Code, Address_City, Address_State, Address_Country, Description, Metadata_name_1, Metadata_name_2 # Update Customers using CSV If you would like to update customers data, you can do it using the CSV file with new data. However, remember to include a source_id in your CSV file to manage the update successfully. This API request starts a process that affects Voucherify data in bulk. In case of small jobs (like bulk update) the request is put into a queue and processed once every other bulk request placed in the queue prior to this request is finished. However, when the job takes a longer time (like vouchers generation) then it is processed in small portions in a round-robin fashion. When there is a list of vouchers generation scheduled, then they will all have the IN_PROGRESS status shortly. This way, small jobs added just after scheduling big jobs of the same type will be processed in a short time window. The result will return the async ID. You can verify the status of your request via this API request.
262
+ # This API method lets you import or update customer data. To get a proper and valid response, please send a CSV file with data separated by commas. # Request Example # CSV File Format The CSV file has to include headers in the first line. All properties which cannot be mapped to standard customer fields will be added to the metadata object. 📘 Standard customer fields mapping **No spaces allowed in field names** Id, Name, Email, Phone, Birthdate, Source_id, Address_line_1, Address_line_2, Address_Postal_Code, Address_City, Address_State, Address_Country, Description, Metadata_name_1, Metadata_name_2 # Update Customers using CSV If you would like to update customers data, you can do it using the CSV file with new data. However, remember to include a source_id in your CSV file to manage the update successfully. This API request starts a process that affects Voucherify data in bulk. In case of small jobs (like bulk update) the request is put into a queue and processed once every other bulk request placed in the queue prior to this request is finished. However, when the job takes a longer time (like vouchers generation) then it is processed in small portions in a round-robin fashion. When there is a list of vouchers generation scheduled, then they will all have the IN_PROGRESS status shortly. This way, small jobs added just after scheduling big jobs of the same type will be processed in a short time window. The result will return the async ID. You can verify the status of your request via this [API request](/api-reference/async-actions/get-async-action).
263
263
  # @param [Hash] opts the optional parameters
264
264
  # @option opts [File] :file File path.
265
265
  # @return [CustomersImportCsvCreateResponseBody]
@@ -269,7 +269,7 @@ module VoucherifySdk
269
269
  end
270
270
 
271
271
  # Import and Update Customers using CSV
272
- # This API method lets you import or update customer data. To get a proper and valid response, please send a CSV file with data separated by commas. # Request Example # CSV File Format The CSV file has to include headers in the first line. All properties which cannot be mapped to standard customer fields will be added to the metadata object. 📘 Standard customer fields mapping **No spaces allowed in field names** Id, Name, Email, Phone, Birthdate, Source_id, Address_line_1, Address_line_2, Address_Postal_Code, Address_City, Address_State, Address_Country, Description, Metadata_name_1, Metadata_name_2 # Update Customers using CSV If you would like to update customers data, you can do it using the CSV file with new data. However, remember to include a source_id in your CSV file to manage the update successfully. This API request starts a process that affects Voucherify data in bulk. In case of small jobs (like bulk update) the request is put into a queue and processed once every other bulk request placed in the queue prior to this request is finished. However, when the job takes a longer time (like vouchers generation) then it is processed in small portions in a round-robin fashion. When there is a list of vouchers generation scheduled, then they will all have the IN_PROGRESS status shortly. This way, small jobs added just after scheduling big jobs of the same type will be processed in a short time window. The result will return the async ID. You can verify the status of your request via this API request.
272
+ # This API method lets you import or update customer data. To get a proper and valid response, please send a CSV file with data separated by commas. # Request Example # CSV File Format The CSV file has to include headers in the first line. All properties which cannot be mapped to standard customer fields will be added to the metadata object. 📘 Standard customer fields mapping **No spaces allowed in field names** Id, Name, Email, Phone, Birthdate, Source_id, Address_line_1, Address_line_2, Address_Postal_Code, Address_City, Address_State, Address_Country, Description, Metadata_name_1, Metadata_name_2 # Update Customers using CSV If you would like to update customers data, you can do it using the CSV file with new data. However, remember to include a source_id in your CSV file to manage the update successfully. This API request starts a process that affects Voucherify data in bulk. In case of small jobs (like bulk update) the request is put into a queue and processed once every other bulk request placed in the queue prior to this request is finished. However, when the job takes a longer time (like vouchers generation) then it is processed in small portions in a round-robin fashion. When there is a list of vouchers generation scheduled, then they will all have the IN_PROGRESS status shortly. This way, small jobs added just after scheduling big jobs of the same type will be processed in a short time window. The result will return the async ID. You can verify the status of your request via this [API request](/api-reference/async-actions/get-async-action).
273
273
  # @param [Hash] opts the optional parameters
274
274
  # @option opts [File] :file File path.
275
275
  # @return [Array<(CustomersImportCsvCreateResponseBody, Integer, Hash)>] CustomersImportCsvCreateResponseBody data, response status code and response headers
@@ -323,7 +323,7 @@ module VoucherifySdk
323
323
  return data, status_code, headers
324
324
  end
325
325
 
326
- # List Customer Activities [Deprecated]
326
+ # List Customer Activities
327
327
  # > ❗️ Deprecated This endpoint represents the deprecated version of the API responsible for listing customer activities and we do not recommend using it. Developers are encouraged to migrate to the latest version to take advantage of the latest enhancements and bug fixes. No updates will be provided to the deprecated endpoint. Retrieve customer activities.
328
328
  # @param customer_id [String] A Voucherify customers id or source ID of the customer who performed the activities.
329
329
  # @param [Hash] opts the optional parameters
@@ -342,7 +342,7 @@ module VoucherifySdk
342
342
  data
343
343
  end
344
344
 
345
- # List Customer Activities [Deprecated]
345
+ # List Customer Activities
346
346
  # &gt; ❗️ Deprecated This endpoint represents the deprecated version of the API responsible for listing customer activities and we do not recommend using it. Developers are encouraged to migrate to the latest version to take advantage of the latest enhancements and bug fixes. No updates will be provided to the deprecated endpoint. Retrieve customer activities.
347
347
  # @param customer_id [String] A Voucherify customers id or source ID of the customer who performed the activities.
348
348
  # @param [Hash] opts the optional parameters
@@ -410,7 +410,7 @@ module VoucherifySdk
410
410
  end
411
411
 
412
412
  # List Customer Activity
413
- # Retrieve customer activities.
413
+ # Retrieves activity details of a given customer by customers id or source_id.
414
414
  # @param customer_id [String] A Voucherify customers id or source ID of the customer who performed the activities.
415
415
  # @param [Hash] opts the optional parameters
416
416
  # @option opts [Integer] :limit Limits the number of objects to be returned. The limit can range between 1 and 100 items. If no limit is set, it returns 10 items.
@@ -429,7 +429,7 @@ module VoucherifySdk
429
429
  end
430
430
 
431
431
  # List Customer Activity
432
- # Retrieve customer activities.
432
+ # Retrieves activity details of a given customer by customers id or source_id.
433
433
  # @param customer_id [String] A Voucherify customers id or source ID of the customer who performed the activities.
434
434
  # @param [Hash] opts the optional parameters
435
435
  # @option opts [Integer] :limit Limits the number of objects to be returned. The limit can range between 1 and 100 items. If no limit is set, it returns 10 items.
@@ -633,7 +633,7 @@ module VoucherifySdk
633
633
  # @option opts [String] :email Limit the customers to the ones that have this specific email address.
634
634
  # @option opts [String] :city Limit the customers to the ones that are located in the specified city.
635
635
  # @option opts [String] :name Filter customers by the name property.
636
- # @option opts [String] :segment_id Filter customers by the segment id.
636
+ # @option opts [String] :segment_id Filter customers by the segment ID. Warning: Passing additional query parameter filters that are in conflict with the segment filters may return unexpected results.
637
637
  # @option opts [Time] :created_at_before Filter customers by date customer was created.
638
638
  # @option opts [Time] :created_at_after Filter customers by date customer was created.
639
639
  # @option opts [Time] :updated_at_before Filter customers by date customer was updated last time.
@@ -654,7 +654,7 @@ module VoucherifySdk
654
654
  # @option opts [String] :email Limit the customers to the ones that have this specific email address.
655
655
  # @option opts [String] :city Limit the customers to the ones that are located in the specified city.
656
656
  # @option opts [String] :name Filter customers by the name property.
657
- # @option opts [String] :segment_id Filter customers by the segment id.
657
+ # @option opts [String] :segment_id Filter customers by the segment ID. Warning: Passing additional query parameter filters that are in conflict with the segment filters may return unexpected results.
658
658
  # @option opts [Time] :created_at_before Filter customers by date customer was created.
659
659
  # @option opts [Time] :created_at_after Filter customers by date customer was created.
660
660
  # @option opts [Time] :updated_at_before Filter customers by date customer was updated last time.
@@ -785,7 +785,7 @@ module VoucherifySdk
785
785
  end
786
786
 
787
787
  # Update Customers in Bulk
788
- # Updates customers in one asynchronous operation. The request can include up to **10 MB** of data. The response returns a unique asynchronous action ID. Use this ID in the query paramater of the GET Async Action endpoint to check, e.g.: - The status of your request (in queue, in progress, done, or failed) - Resources that failed to be updated - The report file with details about the update If a customer object is not found, it is **upserted**. This is shown in the report file in the **GET** Async Action endpoint. The upserted resources have value false in the found column and true in the updated column. This API request starts a process that affects Voucherify data in bulk. In the case of small jobs (like bulk update), the request is put into a queue and processed when every other bulk request placed in the queue prior to this request is finished.
788
+ # Updates customers in one asynchronous operation. The request can include up to **10 MB** of data. The response returns a unique asynchronous action ID. Use this ID in the query paramater of the [GET Async Action](/api-reference/async-actions/get-async-action) endpoint to check, e.g.: - The status of your request (in queue, in progress, done, or failed) - Resources that failed to be updated - The report file with details about the update If a customer object is not found, it is **upserted**. This is shown in the report file in the **GET** Async Action endpoint. The upserted resources have value false in the found column and true in the updated column. This API request starts a process that affects Voucherify data in bulk. In the case of small jobs (like bulk update), the request is put into a queue and processed when every other bulk request placed in the queue prior to this request is finished.
789
789
  # @param [Hash] opts the optional parameters
790
790
  # @option opts [Array<CustomersUpdateInBulkRequestBody>] :customers_update_in_bulk_request_body List the customer fields to be updated in each customer object.
791
791
  # @return [CustomersUpdateInBulkResponseBody]
@@ -795,7 +795,7 @@ module VoucherifySdk
795
795
  end
796
796
 
797
797
  # Update Customers in Bulk
798
- # Updates customers in one asynchronous operation. The request can include up to **10 MB** of data. The response returns a unique asynchronous action ID. Use this ID in the query paramater of the GET Async Action endpoint to check, e.g.: - The status of your request (in queue, in progress, done, or failed) - Resources that failed to be updated - The report file with details about the update If a customer object is not found, it is **upserted**. This is shown in the report file in the **GET** Async Action endpoint. The upserted resources have value false in the found column and true in the updated column. This API request starts a process that affects Voucherify data in bulk. In the case of small jobs (like bulk update), the request is put into a queue and processed when every other bulk request placed in the queue prior to this request is finished.
798
+ # Updates customers in one asynchronous operation. The request can include up to **10 MB** of data. The response returns a unique asynchronous action ID. Use this ID in the query paramater of the [GET Async Action](/api-reference/async-actions/get-async-action) endpoint to check, e.g.: - The status of your request (in queue, in progress, done, or failed) - Resources that failed to be updated - The report file with details about the update If a customer object is not found, it is **upserted**. This is shown in the report file in the **GET** Async Action endpoint. The upserted resources have value false in the found column and true in the updated column. This API request starts a process that affects Voucherify data in bulk. In the case of small jobs (like bulk update), the request is put into a queue and processed when every other bulk request placed in the queue prior to this request is finished.
799
799
  # @param [Hash] opts the optional parameters
800
800
  # @option opts [Array<CustomersUpdateInBulkRequestBody>] :customers_update_in_bulk_request_body List the customer fields to be updated in each customer object.
801
801
  # @return [Array<(CustomersUpdateInBulkResponseBody, Integer, Hash)>] CustomersUpdateInBulkResponseBody data, response status code and response headers
@@ -849,7 +849,7 @@ module VoucherifySdk
849
849
  end
850
850
 
851
851
  # Update Customers' Metadata in Bulk
852
- # Updates metadata parameters for a list of customers. Every resource in the list will receive the metadata defined in the request. The request can include up to **10 MB** of data. The response returns a unique asynchronous action ID. Use this ID in the query paramater of the GET Async Action endpoint to check, e.g.: - The status of your request (in queue, in progress, done, or failed) - Resources that failed to be updated - The report file with details about the update If a product object is not found, it is **upserted**. This is shown in the report file in the **GET** Async Action endpoint. The upserted resources have value false in the found column and true in the updated column. This API request starts a process that affects Voucherify data in bulk. In the case of small jobs (like bulk update), the request is put into a queue and processed when every other bulk request placed in the queue prior to this request is finished.
852
+ # Updates metadata parameters for a list of customers. Every resource in the list will receive the metadata defined in the request. The request can include up to **10 MB** of data. The response returns a unique asynchronous action ID. Use this ID in the query paramater of the [GET Async Action](/api-reference/async-actions/get-async-action) endpoint to check, e.g.: - The status of your request (in queue, in progress, done, or failed) - Resources that failed to be updated - The report file with details about the update If a customer object is not found, it is **upserted**. This is shown in the report file in the **GET** Async Action endpoint. The upserted resources have value false in the found column and true in the updated column. This API request starts a process that affects Voucherify data in bulk. In the case of small jobs (like bulk update), the request is put into a queue and processed when every other bulk request placed in the queue prior to this request is finished.
853
853
  # @param [Hash] opts the optional parameters
854
854
  # @option opts [CustomersMetadataUpdateInBulkRequestBody] :customers_metadata_update_in_bulk_request_body List the source_ids of the customers you would like to update with the metadata key/value pairs.
855
855
  # @return [CustomersMetadataUpdateInBulkResponseBody]
@@ -859,7 +859,7 @@ module VoucherifySdk
859
859
  end
860
860
 
861
861
  # Update Customers&#39; Metadata in Bulk
862
- # Updates metadata parameters for a list of customers. Every resource in the list will receive the metadata defined in the request. The request can include up to **10 MB** of data. The response returns a unique asynchronous action ID. Use this ID in the query paramater of the GET Async Action endpoint to check, e.g.: - The status of your request (in queue, in progress, done, or failed) - Resources that failed to be updated - The report file with details about the update If a product object is not found, it is **upserted**. This is shown in the report file in the **GET** Async Action endpoint. The upserted resources have value false in the found column and true in the updated column. This API request starts a process that affects Voucherify data in bulk. In the case of small jobs (like bulk update), the request is put into a queue and processed when every other bulk request placed in the queue prior to this request is finished.
862
+ # Updates metadata parameters for a list of customers. Every resource in the list will receive the metadata defined in the request. The request can include up to **10 MB** of data. The response returns a unique asynchronous action ID. Use this ID in the query paramater of the [GET Async Action](/api-reference/async-actions/get-async-action) endpoint to check, e.g.: - The status of your request (in queue, in progress, done, or failed) - Resources that failed to be updated - The report file with details about the update If a customer object is not found, it is **upserted**. This is shown in the report file in the **GET** Async Action endpoint. The upserted resources have value false in the found column and true in the updated column. This API request starts a process that affects Voucherify data in bulk. In the case of small jobs (like bulk update), the request is put into a queue and processed when every other bulk request placed in the queue prior to this request is finished.
863
863
  # @param [Hash] opts the optional parameters
864
864
  # @option opts [CustomersMetadataUpdateInBulkRequestBody] :customers_metadata_update_in_bulk_request_body List the source_ids of the customers you would like to update with the metadata key/value pairs.
865
865
  # @return [Array<(CustomersMetadataUpdateInBulkResponseBody, Integer, Hash)>] CustomersMetadataUpdateInBulkResponseBody data, response status code and response headers