voucherify 4.1.0 → 5.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1429) hide show
  1. checksums.yaml +4 -4
  2. data/Dockerfile +14 -0
  3. data/ENDPOINTS-COVERAGE.md +868 -0
  4. data/EXAMPLES.md +112 -0
  5. data/Gemfile +6 -1
  6. data/Gemfile.lock +72 -0
  7. data/LICENSE +2 -2
  8. data/README.md +881 -867
  9. data/Rakefile +9 -4
  10. data/VoucherifySdk.gemspec +37 -0
  11. data/__tests__/README.md +35 -0
  12. data/__tests__/lib/campaigns.rb +128 -0
  13. data/__tests__/lib/config.rb +70 -0
  14. data/__tests__/lib/customers.rb +34 -0
  15. data/__tests__/lib/events.rb +24 -0
  16. data/__tests__/lib/products.rb +116 -0
  17. data/__tests__/lib/stackables.rb +59 -0
  18. data/__tests__/lib/utils.rb +5 -0
  19. data/__tests__/lib/voucherify_data.rb +95 -0
  20. data/__tests__/spec/1_products_spec.rb +101 -0
  21. data/__tests__/spec/2_campaigns_spec.rb +95 -0
  22. data/__tests__/spec/3_customers_spec.rb +24 -0
  23. data/__tests__/spec/4_publications_spec.rb +23 -0
  24. data/__tests__/spec/5_qualifications_spec.rb +27 -0
  25. data/__tests__/spec/6_validations_spec.rb +126 -0
  26. data/__tests__/spec/7_vouchers_spec.rb +40 -0
  27. data/__tests__/spec/8_events_spec.rb +16 -0
  28. data/__tests__/spec/9_redemptions_spec.rb +14 -0
  29. data/docs/Any.md +53 -0
  30. data/docs/ApplicableTo.md +21 -0
  31. data/docs/ApplicableToEffect.md +7 -0
  32. data/docs/ApplicableToResultList.md +11 -0
  33. data/docs/ArrayInner.md +51 -0
  34. data/docs/AsyncActions.md +8 -0
  35. data/docs/BusValRuleAssignment.md +16 -0
  36. data/docs/Campaign.md +37 -0
  37. data/docs/CampaignBase.md +35 -0
  38. data/docs/CampaignBaseValidityTimeframe.md +9 -0
  39. data/docs/CampaignLoyaltyCard.md +9 -0
  40. data/docs/CampaignLoyaltyCardExpirationRules.md +11 -0
  41. data/docs/CampaignLoyaltyVoucher.md +11 -0
  42. data/docs/CampaignLoyaltyVoucherRedemption.md +8 -0
  43. data/docs/CampaignVoucher.md +17 -0
  44. data/docs/CampaignVoucherRedemption.md +8 -0
  45. data/docs/CampaignsApi.md +694 -0
  46. data/docs/CampaignsCreateBase.md +23 -0
  47. data/docs/CampaignsCreateDiscountCouponsCampaign.md +25 -0
  48. data/docs/CampaignsCreateGiftCampaign.md +25 -0
  49. data/docs/CampaignsCreateGiveawayCampaign.md +26 -0
  50. data/docs/CampaignsCreateLoyaltyCampaign.md +25 -0
  51. data/docs/CampaignsCreatePromotionCampaign.md +25 -0
  52. data/docs/CampaignsCreateReferralCampaign.md +26 -0
  53. data/docs/CampaignsCreateRequestBody.md +57 -0
  54. data/docs/CampaignsCreateResponseBody.md +37 -0
  55. data/docs/CampaignsDeleteResponseBody.md +8 -0
  56. data/docs/CampaignsDisableResponseBody.md +7 -0
  57. data/docs/CampaignsEnableResponseBody.md +7 -0
  58. data/docs/CampaignsGetResponseBody.md +37 -0
  59. data/docs/CampaignsImportCreateResponseBody.md +8 -0
  60. data/docs/CampaignsImportCsvCreateResponseBody.md +8 -0
  61. data/docs/CampaignsImportVoucherItem.md +20 -0
  62. data/docs/CampaignsImportVoucherItemRedemption.md +8 -0
  63. data/docs/CampaignsImportVoucherLoyaltyCard.md +8 -0
  64. data/docs/CampaignsListResponseBody.md +11 -0
  65. data/docs/CampaignsUpdateBase.md +16 -0
  66. data/docs/CampaignsUpdateCouponCampaignBase.md +20 -0
  67. data/docs/CampaignsUpdateDiscountCouponsCampaign.md +21 -0
  68. data/docs/CampaignsUpdateGiftCampaign.md +21 -0
  69. data/docs/CampaignsUpdateGiveawayCampaign.md +23 -0
  70. data/docs/CampaignsUpdateLoyaltyCampaign.md +22 -0
  71. data/docs/CampaignsUpdatePromotionCampaign.md +16 -0
  72. data/docs/CampaignsUpdateReferralCampaign.md +22 -0
  73. data/docs/CampaignsUpdateRequestBody.md +57 -0
  74. data/docs/CampaignsUpdateResponseBody.md +37 -0
  75. data/docs/CampaignsVouchersCreateBaseRequestBody.md +13 -0
  76. data/docs/CampaignsVouchersCreateInBulkRequestBody.md +15 -0
  77. data/docs/CampaignsVouchersCreateInBulkResponseBody.md +8 -0
  78. data/docs/CampaignsVouchersCreateRequestBody.md +13 -0
  79. data/docs/CampaignsVouchersCreateResponseBody.md +37 -0
  80. data/docs/CategoriesApi.md +304 -0
  81. data/docs/CategoriesCreateRequestBody.md +9 -0
  82. data/docs/CategoriesCreateResponseBody.md +12 -0
  83. data/docs/CategoriesGetResponseBody.md +14 -0
  84. data/docs/CategoriesListResponseBody.md +11 -0
  85. data/docs/CategoriesUpdateRequestBody.md +9 -0
  86. data/docs/CategoriesUpdateResponseBody.md +13 -0
  87. data/docs/Category.md +14 -0
  88. data/docs/ClientEventsCreateRequestBody.md +12 -0
  89. data/docs/ClientEventsCreateRequestBodyLoyalty.md +8 -0
  90. data/docs/ClientEventsCreateRequestBodyReferral.md +9 -0
  91. data/docs/ClientEventsCreateResponseBody.md +12 -0
  92. data/docs/ClientQualificationsCheckEligibilityRequestBody.md +14 -0
  93. data/docs/ClientQualificationsCheckEligibilityRequestBodyOptions.md +12 -0
  94. data/docs/ClientQualificationsCheckEligibilityRequestBodyOptionsFilters.md +14 -0
  95. data/docs/ClientQualificationsCheckEligibilityResponseBody.md +11 -0
  96. data/docs/ClientRedemptionsRedeemRequestBody.md +14 -0
  97. data/docs/ClientRedemptionsRedeemRequestBodyAllOfOptions.md +8 -0
  98. data/docs/ClientRedemptionsRedeemResponseBody.md +12 -0
  99. data/docs/ClientSideApi.md +319 -0
  100. data/docs/ClientValidationsValidateRequestBody.md +14 -0
  101. data/docs/ClientValidationsValidateRequestBodyAllOfOptions.md +8 -0
  102. data/docs/ClientValidationsValidateResponseBody.md +14 -0
  103. data/docs/CodeConfig.md +13 -0
  104. data/docs/CodeConfigRequiredLengthCharsetPattern.md +13 -0
  105. data/docs/CreatePublicationBase.md +10 -0
  106. data/docs/CreatePublicationCampaign.md +9 -0
  107. data/docs/CreatePublicationWithCampaign.md +11 -0
  108. data/docs/CreatePublicationWithSpecificVoucher.md +11 -0
  109. data/docs/CustomEvent.md +15 -0
  110. data/docs/CustomEventReferral.md +10 -0
  111. data/docs/Customer.md +17 -0
  112. data/docs/CustomerActivity.md +11 -0
  113. data/docs/CustomerActivityData.md +183 -0
  114. data/docs/CustomerBase.md +15 -0
  115. data/docs/CustomerBaseAddress.md +13 -0
  116. data/docs/CustomerId.md +9 -0
  117. data/docs/CustomerLoyalty.md +10 -0
  118. data/docs/CustomerLoyaltyCampaignsValue.md +10 -0
  119. data/docs/CustomerReferrals.md +9 -0
  120. data/docs/CustomerReferralsCampaignsItem.md +12 -0
  121. data/docs/CustomerResponseDataAssets.md +8 -0
  122. data/docs/CustomerSegmentsList.md +11 -0
  123. data/docs/CustomerSummary.md +9 -0
  124. data/docs/CustomerSummaryOrders.md +12 -0
  125. data/docs/CustomerSummaryRedemptions.md +15 -0
  126. data/docs/CustomerSummaryRedemptionsGift.md +9 -0
  127. data/docs/CustomerSummaryRedemptionsLoyaltyCard.md +9 -0
  128. data/docs/CustomerWithSummaryLoyaltyReferrals.md +25 -0
  129. data/docs/CustomersActivitiesListResponseBody.md +11 -0
  130. data/docs/CustomersApi.md +771 -0
  131. data/docs/CustomersCreateRequestBody.md +17 -0
  132. data/docs/CustomersCreateResponseBody.md +25 -0
  133. data/docs/CustomersGetResponseBody.md +25 -0
  134. data/docs/CustomersImportCsvCreateResponseBody.md +8 -0
  135. data/docs/CustomersListResponseBody.md +12 -0
  136. data/docs/CustomersMetadataUpdateInBulkRequestBody.md +9 -0
  137. data/docs/CustomersMetadataUpdateInBulkResponseBody.md +8 -0
  138. data/docs/CustomersPermanentDeletionCreateResponseBody.md +14 -0
  139. data/docs/CustomersPermanentDeletionCreateResponseBodyDataJson.md +14 -0
  140. data/docs/CustomersSegmentsListResponseBody.md +11 -0
  141. data/docs/CustomersUpdateInBulkRequestBody.md +16 -0
  142. data/docs/CustomersUpdateInBulkResponseBody.md +8 -0
  143. data/docs/CustomersUpdateRequestBody.md +15 -0
  144. data/docs/CustomersUpdateResponseBody.md +25 -0
  145. data/docs/Discount.md +55 -0
  146. data/docs/DiscountAmount.md +13 -0
  147. data/docs/DiscountAmountVouchersEffectTypes.md +7 -0
  148. data/docs/DiscountCouponsCampaignVoucher.md +11 -0
  149. data/docs/DiscountFixed.md +12 -0
  150. data/docs/DiscountFixedVouchersEffectTypes.md +7 -0
  151. data/docs/DiscountPercent.md +14 -0
  152. data/docs/DiscountPercentVouchersEffectTypes.md +7 -0
  153. data/docs/DiscountUnit.md +15 -0
  154. data/docs/DiscountUnitMultiple.md +10 -0
  155. data/docs/DiscountUnitMultipleOneUnit.md +13 -0
  156. data/docs/DiscountUnitVouchersEffectTypes.md +7 -0
  157. data/docs/EarningRule.md +24 -0
  158. data/docs/EarningRuleBase.md +21 -0
  159. data/docs/EarningRuleBaseCustomEvent.md +8 -0
  160. data/docs/EarningRuleBaseLoyalty.md +49 -0
  161. data/docs/EarningRuleBaseSegment.md +8 -0
  162. data/docs/EarningRuleBaseSource.md +10 -0
  163. data/docs/EarningRuleBaseValidityTimeframe.md +9 -0
  164. data/docs/EarningRuleEvent.md +7 -0
  165. data/docs/EarningRuleFixed.md +9 -0
  166. data/docs/EarningRuleProportional.md +53 -0
  167. data/docs/EarningRuleProportionalCustomEvent.md +10 -0
  168. data/docs/EarningRuleProportionalCustomEventCustomEvent.md +8 -0
  169. data/docs/EarningRuleProportionalCustomEventCustomEventMetadata.md +10 -0
  170. data/docs/EarningRuleProportionalCustomerMetadata.md +10 -0
  171. data/docs/EarningRuleProportionalCustomerMetadataCustomer.md +8 -0
  172. data/docs/EarningRuleProportionalCustomerMetadataCustomerMetadata.md +10 -0
  173. data/docs/EarningRuleProportionalOrder.md +51 -0
  174. data/docs/EarningRuleProportionalOrderAmount.md +10 -0
  175. data/docs/EarningRuleProportionalOrderAmountOrder.md +8 -0
  176. data/docs/EarningRuleProportionalOrderAmountOrderAmount.md +9 -0
  177. data/docs/EarningRuleProportionalOrderItems.md +51 -0
  178. data/docs/EarningRuleProportionalOrderItemsAmount.md +10 -0
  179. data/docs/EarningRuleProportionalOrderItemsAmountOrderItems.md +8 -0
  180. data/docs/EarningRuleProportionalOrderItemsAmountOrderItemsAmount.md +11 -0
  181. data/docs/EarningRuleProportionalOrderItemsQuantity.md +10 -0
  182. data/docs/EarningRuleProportionalOrderItemsQuantityOrderItems.md +8 -0
  183. data/docs/EarningRuleProportionalOrderItemsSubtotalAmount.md +10 -0
  184. data/docs/EarningRuleProportionalOrderItemsSubtotalAmountOrderItems.md +8 -0
  185. data/docs/EarningRuleProportionalOrderMetadata.md +10 -0
  186. data/docs/EarningRuleProportionalOrderMetadataOrder.md +8 -0
  187. data/docs/EarningRuleProportionalOrderMetadataOrderMetadata.md +10 -0
  188. data/docs/EarningRuleProportionalOrderTotalAmount.md +10 -0
  189. data/docs/EarningRuleProportionalOrderTotalAmountOrder.md +8 -0
  190. data/docs/Error.md +14 -0
  191. data/docs/EventCustomerActiveCampaignFailed.md +10 -0
  192. data/docs/EventCustomerActiveCampaignRecovered.md +10 -0
  193. data/docs/EventCustomerActiveCampaignSent.md +10 -0
  194. data/docs/EventCustomerBatchFailed.md +10 -0
  195. data/docs/EventCustomerBatchRecovered.md +10 -0
  196. data/docs/EventCustomerBatchSent.md +10 -0
  197. data/docs/EventCustomerBrazeFailed.md +10 -0
  198. data/docs/EventCustomerBrazeRecovered.md +10 -0
  199. data/docs/EventCustomerBrazeSent.md +10 -0
  200. data/docs/EventCustomerConfirmed.md +9 -0
  201. data/docs/EventCustomerConfirmedUnconfirmedCustomer.md +8 -0
  202. data/docs/EventCustomerConsents.md +9 -0
  203. data/docs/EventCustomerConsentsGiven.md +9 -0
  204. data/docs/EventCustomerConsentsRevoked.md +9 -0
  205. data/docs/EventCustomerCreated.md +8 -0
  206. data/docs/EventCustomerCustomEvent.md +8 -0
  207. data/docs/EventCustomerDeleted.md +8 -0
  208. data/docs/EventCustomerEmailFailed.md +10 -0
  209. data/docs/EventCustomerEmailRecovered.md +10 -0
  210. data/docs/EventCustomerEmailSent.md +10 -0
  211. data/docs/EventCustomerFailed.md +10 -0
  212. data/docs/EventCustomerGiftVoucherBalanceAdded.md +12 -0
  213. data/docs/EventCustomerIntercomFailed.md +10 -0
  214. data/docs/EventCustomerIntercomRecovered.md +10 -0
  215. data/docs/EventCustomerIntercomSent.md +10 -0
  216. data/docs/EventCustomerKlaviyoFailed.md +10 -0
  217. data/docs/EventCustomerKlaviyoRecovered.md +10 -0
  218. data/docs/EventCustomerKlaviyoSent.md +10 -0
  219. data/docs/EventCustomerLoyaltyCardPointsAdded.md +12 -0
  220. data/docs/EventCustomerLoyaltyCardPointsTransferred.md +14 -0
  221. data/docs/EventCustomerLoyaltyTierBase.md +9 -0
  222. data/docs/EventCustomerLoyaltyTierDowngraded.md +12 -0
  223. data/docs/EventCustomerLoyaltyTierExpirationChanged.md +12 -0
  224. data/docs/EventCustomerLoyaltyTierJoined.md +11 -0
  225. data/docs/EventCustomerLoyaltyTierLeft.md +11 -0
  226. data/docs/EventCustomerLoyaltyTierProlonged.md +11 -0
  227. data/docs/EventCustomerLoyaltyTierUpgraded.md +12 -0
  228. data/docs/EventCustomerLoyaltyUpdated.md +11 -0
  229. data/docs/EventCustomerMailchimpFailed.md +10 -0
  230. data/docs/EventCustomerMailchimpRecovered.md +10 -0
  231. data/docs/EventCustomerMailchimpSent.md +10 -0
  232. data/docs/EventCustomerOrder.md +11 -0
  233. data/docs/EventCustomerOrderCanceled.md +11 -0
  234. data/docs/EventCustomerOrderCreated.md +11 -0
  235. data/docs/EventCustomerOrderFulfilled.md +11 -0
  236. data/docs/EventCustomerOrderPaid.md +11 -0
  237. data/docs/EventCustomerOrderProcessing.md +11 -0
  238. data/docs/EventCustomerOrderUpdated.md +11 -0
  239. data/docs/EventCustomerPublicationFailed.md +10 -0
  240. data/docs/EventCustomerPublicationSucceeded.md +10 -0
  241. data/docs/EventCustomerRecovered.md +10 -0
  242. data/docs/EventCustomerRedemption.md +14 -0
  243. data/docs/EventCustomerRedemptionFailed.md +14 -0
  244. data/docs/EventCustomerRedemptionRollbackFailed.md +15 -0
  245. data/docs/EventCustomerRedemptionRollbackSucceeded.md +15 -0
  246. data/docs/EventCustomerRedemptionSucceeded.md +14 -0
  247. data/docs/EventCustomerReferred.md +13 -0
  248. data/docs/EventCustomerRewardRedemptions.md +16 -0
  249. data/docs/EventCustomerRewardRedemptionsCompleted.md +16 -0
  250. data/docs/EventCustomerRewardRedemptionsCreated.md +16 -0
  251. data/docs/EventCustomerRewardRedemptionsPending.md +16 -0
  252. data/docs/EventCustomerRewardRedemptionsRolledBack.md +16 -0
  253. data/docs/EventCustomerRewarded.md +17 -0
  254. data/docs/EventCustomerRewardedLoyaltyPoints.md +16 -0
  255. data/docs/EventCustomerSegmentEntered.md +9 -0
  256. data/docs/EventCustomerSegmentLeft.md +9 -0
  257. data/docs/EventCustomerSent.md +10 -0
  258. data/docs/EventCustomerShopifyFailed.md +10 -0
  259. data/docs/EventCustomerShopifyRecovered.md +10 -0
  260. data/docs/EventCustomerShopifySent.md +10 -0
  261. data/docs/EventCustomerSmsFailed.md +10 -0
  262. data/docs/EventCustomerSmsRecovered.md +10 -0
  263. data/docs/EventCustomerSmsSent.md +10 -0
  264. data/docs/EventCustomerUpdated.md +8 -0
  265. data/docs/EventCustomerValidationFailed.md +9 -0
  266. data/docs/EventCustomerValidationSucceeded.md +9 -0
  267. data/docs/EventCustomerVoucherDeleted.md +10 -0
  268. data/docs/EventCustomerVouchersLoyaltyPointsExpired.md +13 -0
  269. data/docs/EventsApi.md +68 -0
  270. data/docs/EventsCreateRequestBody.md +12 -0
  271. data/docs/EventsCreateResponseBody.md +12 -0
  272. data/docs/Export.md +59 -0
  273. data/docs/ExportBase.md +14 -0
  274. data/docs/ExportBaseResult.md +8 -0
  275. data/docs/ExportCustomer.md +16 -0
  276. data/docs/ExportCustomerBase.md +9 -0
  277. data/docs/ExportCustomerBaseParameters.md +10 -0
  278. data/docs/ExportCustomerFields.md +7 -0
  279. data/docs/ExportCustomerFilters.md +38 -0
  280. data/docs/ExportCustomerOrder.md +7 -0
  281. data/docs/ExportCustomerScheduled.md +16 -0
  282. data/docs/ExportOrder.md +16 -0
  283. data/docs/ExportOrderBase.md +9 -0
  284. data/docs/ExportOrderFields.md +7 -0
  285. data/docs/ExportOrderFilters.md +21 -0
  286. data/docs/ExportOrderOrder.md +7 -0
  287. data/docs/ExportOrderScheduled.md +16 -0
  288. data/docs/ExportPointsExpiration.md +16 -0
  289. data/docs/ExportPointsExpirationBase.md +9 -0
  290. data/docs/ExportPointsExpirationBaseParameters.md +10 -0
  291. data/docs/ExportPointsExpirationFields.md +7 -0
  292. data/docs/ExportPointsExpirationFilters.md +10 -0
  293. data/docs/ExportPointsExpirationOrder.md +7 -0
  294. data/docs/ExportPointsExpirationScheduled.md +16 -0
  295. data/docs/ExportPublication.md +16 -0
  296. data/docs/ExportPublicationBase.md +9 -0
  297. data/docs/ExportPublicationBaseParameters.md +10 -0
  298. data/docs/ExportPublicationFields.md +7 -0
  299. data/docs/ExportPublicationFilters.md +16 -0
  300. data/docs/ExportPublicationOrder.md +7 -0
  301. data/docs/ExportPublicationScheduled.md +16 -0
  302. data/docs/ExportRedemption.md +16 -0
  303. data/docs/ExportRedemptionBase.md +9 -0
  304. data/docs/ExportRedemptionBaseParameters.md +10 -0
  305. data/docs/ExportRedemptionFields.md +7 -0
  306. data/docs/ExportRedemptionFilters.md +25 -0
  307. data/docs/ExportRedemptionOrder.md +7 -0
  308. data/docs/ExportRedemptionScheduled.md +16 -0
  309. data/docs/ExportScheduledBase.md +14 -0
  310. data/docs/ExportVoucher.md +16 -0
  311. data/docs/ExportVoucherBase.md +9 -0
  312. data/docs/ExportVoucherBaseParameters.md +10 -0
  313. data/docs/ExportVoucherFields.md +7 -0
  314. data/docs/ExportVoucherFilters.md +38 -0
  315. data/docs/ExportVoucherOrder.md +7 -0
  316. data/docs/ExportVoucherScheduled.md +16 -0
  317. data/docs/ExportVoucherTransactions.md +16 -0
  318. data/docs/ExportVoucherTransactionsBase.md +9 -0
  319. data/docs/ExportVoucherTransactionsFields.md +7 -0
  320. data/docs/ExportVoucherTransactionsFilters.md +11 -0
  321. data/docs/ExportVoucherTransactionsOrder.md +7 -0
  322. data/docs/ExportVoucherTransactionsScheduled.md +16 -0
  323. data/docs/ExportsApi.md +301 -0
  324. data/docs/ExportsCreateRequestBody.md +59 -0
  325. data/docs/ExportsCreateResponseBody.md +59 -0
  326. data/docs/ExportsGetResponseBody.md +16 -0
  327. data/docs/ExportsListResponseBody.md +11 -0
  328. data/docs/FieldConditions.md +8 -0
  329. data/docs/FilterConditionsString.md +15 -0
  330. data/docs/FiltersCondition.md +32 -0
  331. data/docs/Gift.md +10 -0
  332. data/docs/GiftCampaignVoucher.md +11 -0
  333. data/docs/GiveawayCampaignVoucher.md +12 -0
  334. data/docs/InapplicableTo.md +21 -0
  335. data/docs/InapplicableToResultList.md +11 -0
  336. data/docs/Junction.md +7 -0
  337. data/docs/ListPublicationsItemBase.md +17 -0
  338. data/docs/ListPublicationsItemInvalid.md +20 -0
  339. data/docs/ListPublicationsItemValidMultipleVouchers.md +19 -0
  340. data/docs/ListPublicationsItemValidSingleVoucher.md +19 -0
  341. data/docs/ListPublicationsItemVoucher.md +14 -0
  342. data/docs/LoyaltiesApi.md +1643 -0
  343. data/docs/LoyaltiesDeleteResponseBody.md +8 -0
  344. data/docs/LoyaltiesEarningRulesDisableResponseBody.md +23 -0
  345. data/docs/LoyaltiesEarningRulesEnableResponseBody.md +23 -0
  346. data/docs/LoyaltiesEarningRulesGetResponseBody.md +24 -0
  347. data/docs/LoyaltiesLoyaltyTierReward.md +10 -0
  348. data/docs/LoyaltiesMembersBalanceUpdateRequestBody.md +12 -0
  349. data/docs/LoyaltiesMembersBalanceUpdateResponseBody.md +14 -0
  350. data/docs/LoyaltiesMembersBalanceUpdateResponseBodyRelatedObject.md +9 -0
  351. data/docs/LoyaltiesMembersPointsExpirationListResponseBody.md +11 -0
  352. data/docs/LoyaltiesMembersPointsExpirationListResponseBodyDataItem.md +16 -0
  353. data/docs/LoyaltiesMembersPointsExpirationListResponseBodyDataItemBucket.md +8 -0
  354. data/docs/LoyaltiesMembersRedemptionRedeemRequestBody.md +10 -0
  355. data/docs/LoyaltiesMembersRedemptionRedeemRequestBodyReward.md +9 -0
  356. data/docs/LoyaltiesMembersRedemptionRedeemResponseBody.md +30 -0
  357. data/docs/LoyaltiesMembersRewardsListResponseBody.md +11 -0
  358. data/docs/LoyaltiesMembersRewardsListResponseBodyDataItem.md +10 -0
  359. data/docs/LoyaltiesMembersTiersListResponseBody.md +11 -0
  360. data/docs/LoyaltiesMembersTransactionsExportCreateRequestBody.md +8 -0
  361. data/docs/LoyaltiesMembersTransactionsExportCreateRequestBodyParameters.md +10 -0
  362. data/docs/LoyaltiesMembersTransactionsExportCreateResponseBody.md +16 -0
  363. data/docs/LoyaltiesMembersTransactionsListResponseBody.md +11 -0
  364. data/docs/LoyaltiesMembersTransfersCreateResponseBody.md +30 -0
  365. data/docs/LoyaltiesMembersTransfersCreateResponseBodyAssets.md +9 -0
  366. data/docs/LoyaltiesMembersTransfersCreateResponseBodyAssetsBarcode.md +9 -0
  367. data/docs/LoyaltiesMembersTransfersCreateResponseBodyAssetsQr.md +9 -0
  368. data/docs/LoyaltiesMembersTransfersCreateResponseBodyLoyaltyCard.md +11 -0
  369. data/docs/LoyaltiesMembersTransfersCreateResponseBodyPublish.md +11 -0
  370. data/docs/LoyaltiesMembersTransfersCreateResponseBodyRedemption.md +13 -0
  371. data/docs/LoyaltiesMembersTransfersCreateResponseBodyValidityTimeframe.md +9 -0
  372. data/docs/LoyaltiesRewardAssignmentsGetResponseBody.md +15 -0
  373. data/docs/LoyaltiesRewardAssignmentsRewardGetResponseBody.md +18 -0
  374. data/docs/LoyaltiesRewardsGetResponseBody.md +15 -0
  375. data/docs/LoyaltiesTiersCreateInBulkRequestBodyItem.md +12 -0
  376. data/docs/LoyaltiesTiersEarningRulesListResponseBody.md +11 -0
  377. data/docs/LoyaltiesTiersGetResponseBody.md +19 -0
  378. data/docs/LoyaltiesTiersListResponseBody.md +11 -0
  379. data/docs/LoyaltiesTiersRewardsListResponseBody.md +11 -0
  380. data/docs/LoyaltiesTransferPoints.md +11 -0
  381. data/docs/LoyaltyCardTransaction.md +17 -0
  382. data/docs/LoyaltyCardTransactionsType.md +7 -0
  383. data/docs/LoyaltyTier.md +19 -0
  384. data/docs/LoyaltyTierAllOfConfig.md +8 -0
  385. data/docs/LoyaltyTierAllOfConfigPoints.md +9 -0
  386. data/docs/LoyaltyTierBase.md +11 -0
  387. data/docs/LoyaltyTierBasePoints.md +9 -0
  388. data/docs/LoyaltyTierExpiration.md +14 -0
  389. data/docs/LoyaltyTiersExpirationAll.md +11 -0
  390. data/docs/LoyaltyTiersExpirationAllExpirationDate.md +10 -0
  391. data/docs/LoyaltyTiersExpirationAllExpirationDateRounding.md +11 -0
  392. data/docs/LoyaltyTiersExpirationAllStartDate.md +8 -0
  393. data/docs/LuckyDraw.md +10 -0
  394. data/docs/MappingFixed.md +9 -0
  395. data/docs/MappingMultiply.md +9 -0
  396. data/docs/MappingPoints.md +49 -0
  397. data/docs/Order.md +19 -0
  398. data/docs/OrderBase.md +17 -0
  399. data/docs/OrderCalculated.md +29 -0
  400. data/docs/OrderCalculatedBase.md +27 -0
  401. data/docs/OrderCalculatedCustomer.md +49 -0
  402. data/docs/OrderCalculatedNoCustomerData.md +29 -0
  403. data/docs/OrderCalculatedReferrer.md +49 -0
  404. data/docs/OrderItem.md +21 -0
  405. data/docs/OrderItemCalculated.md +25 -0
  406. data/docs/OrderItemProduct.md +13 -0
  407. data/docs/OrderItemSku.md +12 -0
  408. data/docs/OrderRedemptions.md +15 -0
  409. data/docs/OrdersApi.md +377 -0
  410. data/docs/OrdersCreateRequestBody.md +19 -0
  411. data/docs/OrdersCreateResponseBody.md +29 -0
  412. data/docs/OrdersExportCreateRequestBody.md +8 -0
  413. data/docs/OrdersExportCreateRequestBodyParameters.md +10 -0
  414. data/docs/OrdersExportCreateResponseBody.md +16 -0
  415. data/docs/OrdersGetResponseBody.md +29 -0
  416. data/docs/OrdersImportCreateRequestBodyItem.md +18 -0
  417. data/docs/OrdersImportCreateResponseBody.md +8 -0
  418. data/docs/OrdersListResponseBody.md +11 -0
  419. data/docs/OrdersUpdateRequestBody.md +17 -0
  420. data/docs/OrdersUpdateResponseBody.md +29 -0
  421. data/docs/ParameterCampaignType.md +7 -0
  422. data/docs/ParameterCreatedBeforeAfter.md +9 -0
  423. data/docs/ParameterExpandListCampaigns.md +7 -0
  424. data/docs/ParameterFiltersListRedemptions.md +17 -0
  425. data/docs/ParameterFiltersListRedemptionsCampaignName.md +9 -0
  426. data/docs/ParameterFiltersListRedemptionsCustomerId.md +9 -0
  427. data/docs/ParameterFiltersListRedemptionsFailureCode.md +9 -0
  428. data/docs/ParameterFiltersListRedemptionsObject.md +9 -0
  429. data/docs/ParameterFiltersListRedemptionsParentRedemptionId.md +9 -0
  430. data/docs/ParameterFiltersListRedemptionsRelatedObjectId.md +9 -0
  431. data/docs/ParameterFiltersListRedemptionsRelatedObjectParentId.md +9 -0
  432. data/docs/ParameterFiltersListRedemptionsResult.md +9 -0
  433. data/docs/ParameterFiltersListRedemptionsUserLogin.md +9 -0
  434. data/docs/ParameterFiltersListRedemptionsVoucherCode.md +9 -0
  435. data/docs/ParameterOrder.md +7 -0
  436. data/docs/ParameterOrderListAllPromotionStacks.md +7 -0
  437. data/docs/ParameterOrderListCampaigns.md +7 -0
  438. data/docs/ParameterOrderListCustomers.md +7 -0
  439. data/docs/ParameterOrderListExports.md +7 -0
  440. data/docs/ParameterOrderListLoyaltyTiers.md +7 -0
  441. data/docs/ParameterOrderListOrders.md +7 -0
  442. data/docs/ParameterOrderListPublications.md +7 -0
  443. data/docs/ParameterOrderListRedemptions.md +7 -0
  444. data/docs/ParameterOrderListValidationRuleAssignments.md +7 -0
  445. data/docs/ParameterOrderListValidationRules.md +7 -0
  446. data/docs/ParameterResultListPublications.md +7 -0
  447. data/docs/ParameterUpdatedBeforeAfter.md +9 -0
  448. data/docs/ParameterVoucherTypeListPublications.md +7 -0
  449. data/docs/PointsExpirationTypes.md +7 -0
  450. data/docs/Product.md +18 -0
  451. data/docs/ProductCollectionsApi.md +319 -0
  452. data/docs/ProductCollectionsCreateDynamicRequestBody.md +10 -0
  453. data/docs/ProductCollectionsCreateDynamicRequestBodyFilter.md +20 -0
  454. data/docs/ProductCollectionsCreateDynamicRequestBodyProductsItem.md +10 -0
  455. data/docs/ProductCollectionsCreateRequestBody.md +49 -0
  456. data/docs/ProductCollectionsCreateResponseBody.md +14 -0
  457. data/docs/ProductCollectionsCreateStaticRequestBody.md +10 -0
  458. data/docs/ProductCollectionsGetResponseBody.md +14 -0
  459. data/docs/ProductCollectionsItem.md +14 -0
  460. data/docs/ProductCollectionsItemProductsItem.md +10 -0
  461. data/docs/ProductCollectionsList.md +11 -0
  462. data/docs/ProductCollectionsListResponseBody.md +11 -0
  463. data/docs/ProductCollectionsProductsList.md +11 -0
  464. data/docs/ProductCollectionsProductsListProductsItem.md +49 -0
  465. data/docs/ProductCollectionsProductsListResponseBody.md +11 -0
  466. data/docs/ProductWithoutSkus.md +17 -0
  467. data/docs/ProductsApi.md +883 -0
  468. data/docs/ProductsCreateRequestBody.md +14 -0
  469. data/docs/ProductsCreateResponseBody.md +18 -0
  470. data/docs/ProductsGetResponseBody.md +18 -0
  471. data/docs/ProductsImportCsvCreateResponseBody.md +8 -0
  472. data/docs/ProductsListResponseBody.md +11 -0
  473. data/docs/ProductsMetadataUpdateInBulkRequestBody.md +9 -0
  474. data/docs/ProductsMetadataUpdateInBulkResponseBody.md +8 -0
  475. data/docs/ProductsSkusCreateRequestBody.md +15 -0
  476. data/docs/ProductsSkusCreateResponseBody.md +19 -0
  477. data/docs/ProductsSkusListResponseBody.md +11 -0
  478. data/docs/ProductsSkusUpdateRequestBody.md +13 -0
  479. data/docs/ProductsSkusUpdateResponseBody.md +19 -0
  480. data/docs/ProductsUpdateInBulkRequestBody.md +13 -0
  481. data/docs/ProductsUpdateInBulkResponseBody.md +8 -0
  482. data/docs/ProductsUpdateRequestBody.md +12 -0
  483. data/docs/ProductsUpdateResponseBody.md +18 -0
  484. data/docs/PromotionStack.md +16 -0
  485. data/docs/PromotionStackBase.md +9 -0
  486. data/docs/PromotionStackBaseTiers.md +9 -0
  487. data/docs/PromotionTier.md +28 -0
  488. data/docs/PromotionTierAction.md +8 -0
  489. data/docs/PromotionTierCampaign.md +15 -0
  490. data/docs/PromotionTierCampaignValidityTimeframe.md +9 -0
  491. data/docs/PromotionTierCreateParams.md +20 -0
  492. data/docs/PromotionTierSummary.md +9 -0
  493. data/docs/PromotionTierSummaryOrders.md +9 -0
  494. data/docs/PromotionTierSummaryRedemptions.md +8 -0
  495. data/docs/PromotionTierValidityTimeframe.md +9 -0
  496. data/docs/PromotionTiersList.md +12 -0
  497. data/docs/PromotionsApi.md +678 -0
  498. data/docs/PromotionsStacksCreateRequestBody.md +10 -0
  499. data/docs/PromotionsStacksCreateResponseBody.md +15 -0
  500. data/docs/PromotionsStacksGetResponseBody.md +16 -0
  501. data/docs/PromotionsStacksListResponseBody.md +11 -0
  502. data/docs/PromotionsStacksUpdateRequestBody.md +10 -0
  503. data/docs/PromotionsStacksUpdateRequestBodyTiers.md +9 -0
  504. data/docs/PromotionsStacksUpdateResponseBody.md +16 -0
  505. data/docs/PromotionsTiersDisableResponseBody.md +28 -0
  506. data/docs/PromotionsTiersEnableResponseBody.md +28 -0
  507. data/docs/PromotionsTiersGetResponseBody.md +28 -0
  508. data/docs/PromotionsTiersListResponseBody.md +12 -0
  509. data/docs/PropertiesForLoyaltyCampaignOptions.md +8 -0
  510. data/docs/PublicationsApi.md +222 -0
  511. data/docs/PublicationsCreateBaseResponseBody.md +18 -0
  512. data/docs/PublicationsCreateRequestBody.md +49 -0
  513. data/docs/PublicationsCreateResponseBody.md +49 -0
  514. data/docs/PublicationsCreateVoucherResponseBody.md +19 -0
  515. data/docs/PublicationsCreateVouchersResponseBody.md +19 -0
  516. data/docs/PublicationsListResponseBody.md +11 -0
  517. data/docs/PublicationsListResponseBodyPublicationsItem.md +51 -0
  518. data/docs/QualificationsApi.md +68 -0
  519. data/docs/QualificationsCheckEligibilityRequestBody.md +14 -0
  520. data/docs/QualificationsCheckEligibilityResponseBody.md +11 -0
  521. data/docs/QualificationsFieldConditions.md +8 -0
  522. data/docs/QualificationsFiltersCondition.md +13 -0
  523. data/docs/QualificationsOption.md +12 -0
  524. data/docs/QualificationsOptionFilters.md +14 -0
  525. data/docs/QualificationsOptionFiltersResourceType.md +8 -0
  526. data/docs/QualificationsOptionFiltersResourceTypeConditions.md +11 -0
  527. data/docs/QualificationsRedeemable.md +23 -0
  528. data/docs/QualificationsRedeemableBase.md +22 -0
  529. data/docs/QualificationsRedeemables.md +13 -0
  530. data/docs/QualificationsStackingRules.md +12 -0
  531. data/docs/RedeemGiftCard.md +10 -0
  532. data/docs/RedeemGiftCardAllOfGift.md +8 -0
  533. data/docs/RedeemLoyaltyCard.md +10 -0
  534. data/docs/RedeemLoyaltyCardAllOfReward.md +9 -0
  535. data/docs/RedeemPromotionStack.md +9 -0
  536. data/docs/RedeemPromotionTier.md +9 -0
  537. data/docs/RedeemVoucher.md +9 -0
  538. data/docs/RedeemableGift.md +9 -0
  539. data/docs/RedeemableLoyaltyCard.md +12 -0
  540. data/docs/RedeemableResult.md +11 -0
  541. data/docs/RedeemableResultGiftCard.md +8 -0
  542. data/docs/RedeemableResultGiftCardGift.md +8 -0
  543. data/docs/RedeemableResultLoyaltyCard.md +8 -0
  544. data/docs/RedeemableResultLoyaltyCardLoyaltyCard.md +8 -0
  545. data/docs/RedeemableResultPromotionStack.md +8 -0
  546. data/docs/RedeemableResultPromotionTier.md +8 -0
  547. data/docs/RedeemableResultPromotionTierDiscount.md +55 -0
  548. data/docs/RedeemableResultVoucherCode.md +8 -0
  549. data/docs/Redemption.md +30 -0
  550. data/docs/RedemptionChannel.md +9 -0
  551. data/docs/RedemptionGift.md +8 -0
  552. data/docs/RedemptionInternal.md +34 -0
  553. data/docs/RedemptionInternalRelatedRedemptions.md +9 -0
  554. data/docs/RedemptionInternalRelatedRedemptionsItem.md +9 -0
  555. data/docs/RedemptionInternalRelatedRedemptionsRollbacksItem.md +9 -0
  556. data/docs/RedemptionLoyaltyCard.md +8 -0
  557. data/docs/RedemptionRelatedRedemptions.md +9 -0
  558. data/docs/RedemptionRelatedRedemptionsItem.md +9 -0
  559. data/docs/RedemptionRelatedRedemptionsRollbacksItem.md +9 -0
  560. data/docs/RedemptionRewardResult.md +20 -0
  561. data/docs/RedemptionRewardResultParameters.md +10 -0
  562. data/docs/RedemptionRewardResultParametersCampaign.md +10 -0
  563. data/docs/RedemptionRewardResultParametersCoin.md +9 -0
  564. data/docs/RedemptionRewardResultParametersProduct.md +9 -0
  565. data/docs/RedemptionRewardResultProduct.md +18 -0
  566. data/docs/RedemptionRewardResultSku.md +19 -0
  567. data/docs/RedemptionRewardResultVoucher.md +37 -0
  568. data/docs/RedemptionRollback.md +31 -0
  569. data/docs/RedemptionRollbackRelatedRedemptions.md +9 -0
  570. data/docs/RedemptionRollbackRelatedRedemptionsItem.md +9 -0
  571. data/docs/RedemptionRollbackRelatedRedemptionsRollbacksItem.md +9 -0
  572. data/docs/RedemptionsApi.md +395 -0
  573. data/docs/RedemptionsGetResponseBody.md +49 -0
  574. data/docs/RedemptionsListResponseBody.md +11 -0
  575. data/docs/RedemptionsListResponseBodyRedemptionsItem.md +49 -0
  576. data/docs/RedemptionsRedeemRequestBody.md +14 -0
  577. data/docs/RedemptionsRedeemResponseBody.md +12 -0
  578. data/docs/RedemptionsRollbackCreateRequestBody.md +12 -0
  579. data/docs/RedemptionsRollbackCreateResponseBody.md +31 -0
  580. data/docs/RedemptionsRollbacksCreateRequestBody.md +12 -0
  581. data/docs/RedemptionsRollbacksCreateResponseBody.md +10 -0
  582. data/docs/ReferralCampaignVoucher.md +12 -0
  583. data/docs/ReferralProgram.md +10 -0
  584. data/docs/ReferralProgramCustomEvent.md +9 -0
  585. data/docs/ReferralProgramRefereeReward.md +10 -0
  586. data/docs/ReferralProgramRefereeRewardRelatedObjectParent.md +10 -0
  587. data/docs/Referrer.md +17 -0
  588. data/docs/ReferrerId.md +9 -0
  589. data/docs/ReferrerWithSummaryLoyaltyReferrals.md +25 -0
  590. data/docs/ResourceTypes.md +7 -0
  591. data/docs/Reward.md +18 -0
  592. data/docs/RewardAssignment.md +15 -0
  593. data/docs/RewardAssignmentBase.md +14 -0
  594. data/docs/RewardAssignmentParameters.md +8 -0
  595. data/docs/RewardAssignmentParametersParameters.md +8 -0
  596. data/docs/RewardAssignmentParametersParametersLoyalty.md +8 -0
  597. data/docs/RewardAssignmentsCreateCoinRewardRequestBody.md +9 -0
  598. data/docs/RewardAssignmentsCreateDigitalOrMaterialRewardRequestBody.md +9 -0
  599. data/docs/RewardAssignmentsCreateDigitalOrMaterialRewardRequestBodyParameters.md +8 -0
  600. data/docs/RewardAssignmentsCreateDigitalOrMaterialRewardRequestBodyParametersLoyalty.md +8 -0
  601. data/docs/RewardAttributes.md +9 -0
  602. data/docs/RewardType.md +51 -0
  603. data/docs/RewardTypeCampaign.md +8 -0
  604. data/docs/RewardTypeCampaignCampaign.md +10 -0
  605. data/docs/RewardTypeCoin.md +8 -0
  606. data/docs/RewardTypeCoinCoin.md +9 -0
  607. data/docs/RewardTypeMaterial.md +8 -0
  608. data/docs/RewardTypeMaterialProduct.md +9 -0
  609. data/docs/RewardsApi.md +379 -0
  610. data/docs/RewardsAssignmentsCreateRequestBody.md +49 -0
  611. data/docs/RewardsAssignmentsCreateResponseBody.md +15 -0
  612. data/docs/RewardsAssignmentsGetResponseBody.md +15 -0
  613. data/docs/RewardsAssignmentsListResponseBody.md +11 -0
  614. data/docs/RewardsAssignmentsUpdateRequestBody.md +8 -0
  615. data/docs/RewardsAssignmentsUpdateRequestBodyParameters.md +8 -0
  616. data/docs/RewardsAssignmentsUpdateRequestBodyParametersLoyalty.md +8 -0
  617. data/docs/RewardsAssignmentsUpdateResponseBody.md +15 -0
  618. data/docs/SchemaThatContainsUniquePropertiesForPromotionCampaignPromotion.md +8 -0
  619. data/docs/SegmentsApi.md +65 -0
  620. data/docs/Session.md +11 -0
  621. data/docs/SimpleCampaign.md +20 -0
  622. data/docs/SimpleConsent.md +10 -0
  623. data/docs/SimpleCustomer.md +13 -0
  624. data/docs/SimpleCustomerRequiredObjectType.md +13 -0
  625. data/docs/SimpleOrder.md +23 -0
  626. data/docs/SimpleOrderItem.md +18 -0
  627. data/docs/SimpleProduct.md +10 -0
  628. data/docs/SimpleProductDiscountUnit.md +10 -0
  629. data/docs/SimplePromotionTier.md +11 -0
  630. data/docs/SimplePromotionTierCampaign.md +8 -0
  631. data/docs/SimpleRedemption.md +20 -0
  632. data/docs/SimpleRedemptionRewardResult.md +20 -0
  633. data/docs/SimpleReferralTier.md +11 -0
  634. data/docs/SimpleSegment.md +10 -0
  635. data/docs/SimpleSku.md +10 -0
  636. data/docs/SimpleSkuDiscountUnit.md +10 -0
  637. data/docs/SimpleVoucher.md +20 -0
  638. data/docs/Sku.md +19 -0
  639. data/docs/SkuWithProduct.md +20 -0
  640. data/docs/SkusGetResponseBody.md +19 -0
  641. data/docs/SkusImportCsvCreateResponseBody.md +8 -0
  642. data/docs/SkusList.md +11 -0
  643. data/docs/SkusListForProduct.md +11 -0
  644. data/docs/StackableDiscountsApi.md +412 -0
  645. data/docs/StackableValidateRedeemBase.md +13 -0
  646. data/docs/StackableValidateRedeemBaseRedeemablesItem.md +55 -0
  647. data/docs/StackingRules.md +15 -0
  648. data/docs/ValidationEntity.md +15 -0
  649. data/docs/ValidationRule.md +18 -0
  650. data/docs/ValidationRuleAssignment.md +13 -0
  651. data/docs/ValidationRuleAssignmentsList.md +11 -0
  652. data/docs/ValidationRuleBase.md +13 -0
  653. data/docs/ValidationRuleBaseApplicableTo.md +10 -0
  654. data/docs/ValidationRuleBaseError.md +8 -0
  655. data/docs/ValidationRulesApi.md +513 -0
  656. data/docs/ValidationRulesAssignmentsList.md +11 -0
  657. data/docs/ValidationRulesAssignmentsListResponseBody.md +11 -0
  658. data/docs/ValidationRulesCreateRequestBody.md +13 -0
  659. data/docs/ValidationRulesCreateResponseBody.md +18 -0
  660. data/docs/ValidationRulesGetResponseBody.md +18 -0
  661. data/docs/ValidationRulesListResponseBody.md +11 -0
  662. data/docs/ValidationRulesUpdateRequestBody.md +13 -0
  663. data/docs/ValidationRulesUpdateResponseBody.md +18 -0
  664. data/docs/ValidationsApi.md +68 -0
  665. data/docs/ValidationsRedeemableApplicable.md +16 -0
  666. data/docs/ValidationsRedeemableApplicableResult.md +55 -0
  667. data/docs/ValidationsRedeemableInapplicable.md +11 -0
  668. data/docs/ValidationsRedeemableInapplicableResult.md +8 -0
  669. data/docs/ValidationsRedeemableSkipped.md +11 -0
  670. data/docs/ValidationsValidateAllResponseBody.md +13 -0
  671. data/docs/ValidationsValidateAllResponseBodyRedeemablesItem.md +51 -0
  672. data/docs/ValidationsValidatePartialResponseBody.md +14 -0
  673. data/docs/ValidationsValidateRequestBody.md +14 -0
  674. data/docs/ValidationsValidateResponseBody.md +14 -0
  675. data/docs/Voucher.md +37 -0
  676. data/docs/VoucherAssets.md +9 -0
  677. data/docs/VoucherGift.md +10 -0
  678. data/docs/VoucherLoyaltyCard.md +11 -0
  679. data/docs/VoucherPublish.md +10 -0
  680. data/docs/VoucherRedemption.md +13 -0
  681. data/docs/VoucherTransaction.md +17 -0
  682. data/docs/VoucherTransactionDetails.md +20 -0
  683. data/docs/VoucherTransactionDetailsBalance.md +13 -0
  684. data/docs/VoucherTransactionDetailsBalanceRelatedObject.md +9 -0
  685. data/docs/VoucherTransactionDetailsCustomEvent.md +9 -0
  686. data/docs/VoucherTransactionDetailsEarningRule.md +9 -0
  687. data/docs/VoucherTransactionDetailsEarningRuleSource.md +8 -0
  688. data/docs/VoucherTransactionDetailsEvent.md +9 -0
  689. data/docs/VoucherTransactionDetailsEventSchema.md +9 -0
  690. data/docs/VoucherTransactionDetailsLoyaltyTier.md +9 -0
  691. data/docs/VoucherTransactionDetailsOrder.md +9 -0
  692. data/docs/VoucherTransactionDetailsRedemption.md +8 -0
  693. data/docs/VoucherTransactionDetailsReward.md +9 -0
  694. data/docs/VoucherTransactionDetailsRollback.md +8 -0
  695. data/docs/VoucherTransactionDetailsSegment.md +9 -0
  696. data/docs/VoucherTransactionsExport.md +16 -0
  697. data/docs/VoucherTransactionsExportFilterConditions.md +8 -0
  698. data/docs/VoucherTransactionsExportFilterConditionsVoucherId.md +8 -0
  699. data/docs/VoucherTransactionsExportFilterConditionsVoucherIdConditions.md +8 -0
  700. data/docs/VoucherTransactionsExportParameters.md +9 -0
  701. data/docs/VoucherTransactionsExportResult.md +8 -0
  702. data/docs/VoucherTransactionsFilters.md +10 -0
  703. data/docs/VoucherValidityTimeframe.md +9 -0
  704. data/docs/VouchersApi.md +554 -0
  705. data/docs/VouchersBalanceUpdateRequestBody.md +10 -0
  706. data/docs/VouchersBalanceUpdateResponseBody.md +14 -0
  707. data/docs/VouchersBalanceUpdateResponseBodyRelatedObject.md +9 -0
  708. data/docs/VouchersDisableResponseBody.md +37 -0
  709. data/docs/VouchersEnableResponseBody.md +37 -0
  710. data/docs/VouchersGetResponseBody.md +37 -0
  711. data/docs/VouchersImportCsvCreateResponseBody.md +8 -0
  712. data/docs/VouchersRedemptionGetResponseBody.md +14 -0
  713. data/docs/VouchersRedemptionGetResponseBodyRedemptionEntriesItem.md +49 -0
  714. data/docs/VouchersTransactionsExportCreateRequestBody.md +8 -0
  715. data/docs/VouchersTransactionsExportCreateResponseBody.md +16 -0
  716. data/docs/VouchersTransactionsListResponseBody.md +11 -0
  717. data/example.rb +25 -0
  718. data/lib/VoucherifySdk/api/campaigns_api.rb +789 -0
  719. data/lib/VoucherifySdk/api/categories_api.rb +337 -0
  720. data/lib/VoucherifySdk/api/client_side_api.rb +367 -0
  721. data/lib/VoucherifySdk/api/customers_api.rb +874 -0
  722. data/lib/VoucherifySdk/api/events_api.rb +86 -0
  723. data/lib/VoucherifySdk/api/exports_api.rb +354 -0
  724. data/lib/VoucherifySdk/api/loyalties_api.rb +1906 -0
  725. data/lib/VoucherifySdk/api/orders_api.rb +425 -0
  726. data/lib/VoucherifySdk/api/product_collections_api.rb +375 -0
  727. data/lib/VoucherifySdk/api/products_api.rb +1002 -0
  728. data/lib/VoucherifySdk/api/promotions_api.rb +764 -0
  729. data/lib/VoucherifySdk/api/publications_api.rb +270 -0
  730. data/lib/VoucherifySdk/api/qualifications_api.rb +86 -0
  731. data/lib/VoucherifySdk/api/redemptions_api.rb +457 -0
  732. data/lib/VoucherifySdk/api/rewards_api.rb +446 -0
  733. data/lib/VoucherifySdk/api/segments_api.rb +83 -0
  734. data/lib/VoucherifySdk/api/validation_rules_api.rb +599 -0
  735. data/lib/VoucherifySdk/api/validations_api.rb +86 -0
  736. data/lib/VoucherifySdk/api/vouchers_api.rb +636 -0
  737. data/lib/VoucherifySdk/api_client.rb +392 -0
  738. data/lib/VoucherifySdk/api_error.rb +58 -0
  739. data/lib/VoucherifySdk/configuration.rb +332 -0
  740. data/lib/VoucherifySdk/models/any.rb +107 -0
  741. data/lib/VoucherifySdk/models/applicable_to.rb +406 -0
  742. data/lib/VoucherifySdk/models/applicable_to_effect.rb +41 -0
  743. data/lib/VoucherifySdk/models/applicable_to_result_list.rb +340 -0
  744. data/lib/VoucherifySdk/models/array_inner.rb +106 -0
  745. data/lib/VoucherifySdk/models/async_actions.rb +223 -0
  746. data/lib/VoucherifySdk/models/bus_val_rule_assignment.rb +379 -0
  747. data/lib/VoucherifySdk/models/campaign.rb +674 -0
  748. data/lib/VoucherifySdk/models/campaign_base.rb +650 -0
  749. data/lib/VoucherifySdk/models/campaign_base_validity_timeframe.rb +226 -0
  750. data/lib/VoucherifySdk/models/campaign_loyalty_card.rb +232 -0
  751. data/lib/VoucherifySdk/models/campaign_loyalty_card_expiration_rules.rb +273 -0
  752. data/lib/VoucherifySdk/models/campaign_loyalty_voucher.rb +291 -0
  753. data/lib/VoucherifySdk/models/campaign_loyalty_voucher_redemption.rb +217 -0
  754. data/lib/VoucherifySdk/models/campaign_voucher.rb +328 -0
  755. data/lib/VoucherifySdk/models/campaign_voucher_redemption.rb +219 -0
  756. data/lib/VoucherifySdk/models/campaigns_create_base.rb +422 -0
  757. data/lib/VoucherifySdk/models/campaigns_create_discount_coupons_campaign.rb +461 -0
  758. data/lib/VoucherifySdk/models/campaigns_create_gift_campaign.rb +461 -0
  759. data/lib/VoucherifySdk/models/campaigns_create_giveaway_campaign.rb +470 -0
  760. data/lib/VoucherifySdk/models/campaigns_create_loyalty_campaign.rb +461 -0
  761. data/lib/VoucherifySdk/models/campaigns_create_promotion_campaign.rb +461 -0
  762. data/lib/VoucherifySdk/models/campaigns_create_referral_campaign.rb +470 -0
  763. data/lib/VoucherifySdk/models/campaigns_create_request_body.rb +110 -0
  764. data/lib/VoucherifySdk/models/campaigns_create_response_body.rb +675 -0
  765. data/lib/VoucherifySdk/models/campaigns_delete_response_body.rb +216 -0
  766. data/lib/VoucherifySdk/models/campaigns_disable_response_body.rb +206 -0
  767. data/lib/VoucherifySdk/models/campaigns_enable_response_body.rb +206 -0
  768. data/lib/VoucherifySdk/models/campaigns_get_response_body.rb +675 -0
  769. data/lib/VoucherifySdk/models/campaigns_import_create_response_body.rb +230 -0
  770. data/lib/VoucherifySdk/models/campaigns_import_csv_create_response_body.rb +230 -0
  771. data/lib/VoucherifySdk/models/campaigns_import_voucher_item.rb +374 -0
  772. data/lib/VoucherifySdk/models/campaigns_import_voucher_item_redemption.rb +216 -0
  773. data/lib/VoucherifySdk/models/campaigns_import_voucher_loyalty_card.rb +223 -0
  774. data/lib/VoucherifySdk/models/campaigns_list_response_body.rb +252 -0
  775. data/lib/VoucherifySdk/models/campaigns_update_base.rb +300 -0
  776. data/lib/VoucherifySdk/models/campaigns_update_coupon_campaign_base.rb +381 -0
  777. data/lib/VoucherifySdk/models/campaigns_update_discount_coupons_campaign.rb +389 -0
  778. data/lib/VoucherifySdk/models/campaigns_update_gift_campaign.rb +389 -0
  779. data/lib/VoucherifySdk/models/campaigns_update_giveaway_campaign.rb +420 -0
  780. data/lib/VoucherifySdk/models/campaigns_update_loyalty_campaign.rb +398 -0
  781. data/lib/VoucherifySdk/models/campaigns_update_promotion_campaign.rb +306 -0
  782. data/lib/VoucherifySdk/models/campaigns_update_referral_campaign.rb +398 -0
  783. data/lib/VoucherifySdk/models/campaigns_update_request_body.rb +110 -0
  784. data/lib/VoucherifySdk/models/campaigns_update_response_body.rb +675 -0
  785. data/lib/VoucherifySdk/models/campaigns_vouchers_create_base_request_body.rb +264 -0
  786. data/lib/VoucherifySdk/models/campaigns_vouchers_create_in_bulk_request_body.rb +291 -0
  787. data/lib/VoucherifySdk/models/campaigns_vouchers_create_in_bulk_response_body.rb +230 -0
  788. data/lib/VoucherifySdk/models/campaigns_vouchers_create_request_body.rb +272 -0
  789. data/lib/VoucherifySdk/models/campaigns_vouchers_create_response_body.rb +547 -0
  790. data/lib/VoucherifySdk/models/categories_create_request_body.rb +240 -0
  791. data/lib/VoucherifySdk/models/categories_create_response_body.rb +324 -0
  792. data/lib/VoucherifySdk/models/categories_get_response_body.rb +364 -0
  793. data/lib/VoucherifySdk/models/categories_list_response_body.rb +321 -0
  794. data/lib/VoucherifySdk/models/categories_update_request_body.rb +240 -0
  795. data/lib/VoucherifySdk/models/categories_update_response_body.rb +341 -0
  796. data/lib/VoucherifySdk/models/category.rb +357 -0
  797. data/lib/VoucherifySdk/models/client_events_create_request_body.rb +295 -0
  798. data/lib/VoucherifySdk/models/client_events_create_request_body_loyalty.rb +223 -0
  799. data/lib/VoucherifySdk/models/client_events_create_request_body_referral.rb +233 -0
  800. data/lib/VoucherifySdk/models/client_events_create_response_body.rb +316 -0
  801. data/lib/VoucherifySdk/models/client_qualifications_check_eligibility_request_body.rb +319 -0
  802. data/lib/VoucherifySdk/models/client_qualifications_check_eligibility_response_body.rb +243 -0
  803. data/lib/VoucherifySdk/models/client_redemptions_redeem_request_body.rb +316 -0
  804. data/lib/VoucherifySdk/models/client_redemptions_redeem_request_body_all_of_options.rb +240 -0
  805. data/lib/VoucherifySdk/models/client_redemptions_redeem_response_body.rb +259 -0
  806. data/lib/VoucherifySdk/models/client_validations_validate_request_body.rb +316 -0
  807. data/lib/VoucherifySdk/models/client_validations_validate_request_body_all_of_options.rb +240 -0
  808. data/lib/VoucherifySdk/models/client_validations_validate_response_body.rb +301 -0
  809. data/lib/VoucherifySdk/models/code_config.rb +266 -0
  810. data/lib/VoucherifySdk/models/code_config_required_length_charset_pattern.rb +293 -0
  811. data/lib/VoucherifySdk/models/create_publication_base.rb +242 -0
  812. data/lib/VoucherifySdk/models/create_publication_campaign.rb +261 -0
  813. data/lib/VoucherifySdk/models/create_publication_with_campaign.rb +265 -0
  814. data/lib/VoucherifySdk/models/create_publication_with_specific_voucher.rb +266 -0
  815. data/lib/VoucherifySdk/models/custom_event.rb +351 -0
  816. data/lib/VoucherifySdk/models/custom_event_referral.rb +236 -0
  817. data/lib/VoucherifySdk/models/customer.rb +312 -0
  818. data/lib/VoucherifySdk/models/customer_activity.rb +282 -0
  819. data/lib/VoucherifySdk/models/customer_activity_data.rb +173 -0
  820. data/lib/VoucherifySdk/models/customer_base.rb +285 -0
  821. data/lib/VoucherifySdk/models/customer_base_address.rb +266 -0
  822. data/lib/VoucherifySdk/models/customer_id.rb +273 -0
  823. data/lib/VoucherifySdk/models/customer_loyalty.rb +258 -0
  824. data/lib/VoucherifySdk/models/customer_loyalty_campaigns_value.rb +236 -0
  825. data/lib/VoucherifySdk/models/customer_referrals.rb +242 -0
  826. data/lib/VoucherifySdk/models/customer_referrals_campaigns_item.rb +291 -0
  827. data/lib/VoucherifySdk/models/customer_response_data_assets.rb +216 -0
  828. data/lib/VoucherifySdk/models/customer_segments_list.rb +276 -0
  829. data/lib/VoucherifySdk/models/customer_summary.rb +237 -0
  830. data/lib/VoucherifySdk/models/customer_summary_orders.rb +283 -0
  831. data/lib/VoucherifySdk/models/customer_summary_redemptions.rb +339 -0
  832. data/lib/VoucherifySdk/models/customer_summary_redemptions_gift.rb +240 -0
  833. data/lib/VoucherifySdk/models/customer_summary_redemptions_loyalty_card.rb +240 -0
  834. data/lib/VoucherifySdk/models/customer_with_summary_loyalty_referrals.rb +438 -0
  835. data/lib/VoucherifySdk/models/customers_activities_list_response_body.rb +276 -0
  836. data/lib/VoucherifySdk/models/customers_create_request_body.rb +313 -0
  837. data/lib/VoucherifySdk/models/customers_create_response_body.rb +439 -0
  838. data/lib/VoucherifySdk/models/customers_get_response_body.rb +439 -0
  839. data/lib/VoucherifySdk/models/customers_import_csv_create_response_body.rb +230 -0
  840. data/lib/VoucherifySdk/models/customers_list_response_body.rb +286 -0
  841. data/lib/VoucherifySdk/models/customers_metadata_update_in_bulk_request_body.rb +242 -0
  842. data/lib/VoucherifySdk/models/customers_metadata_update_in_bulk_response_body.rb +230 -0
  843. data/lib/VoucherifySdk/models/customers_permanent_deletion_create_response_body.rb +324 -0
  844. data/lib/VoucherifySdk/models/customers_permanent_deletion_create_response_body_data_json.rb +325 -0
  845. data/lib/VoucherifySdk/models/customers_segments_list_response_body.rb +283 -0
  846. data/lib/VoucherifySdk/models/customers_update_in_bulk_request_body.rb +310 -0
  847. data/lib/VoucherifySdk/models/customers_update_in_bulk_response_body.rb +230 -0
  848. data/lib/VoucherifySdk/models/customers_update_request_body.rb +293 -0
  849. data/lib/VoucherifySdk/models/customers_update_response_body.rb +439 -0
  850. data/lib/VoucherifySdk/models/discount.rb +109 -0
  851. data/lib/VoucherifySdk/models/discount_amount.rb +311 -0
  852. data/lib/VoucherifySdk/models/discount_amount_vouchers_effect_types.rb +43 -0
  853. data/lib/VoucherifySdk/models/discount_coupons_campaign_voucher.rb +290 -0
  854. data/lib/VoucherifySdk/models/discount_fixed.rb +301 -0
  855. data/lib/VoucherifySdk/models/discount_fixed_vouchers_effect_types.rb +40 -0
  856. data/lib/VoucherifySdk/models/discount_percent.rb +321 -0
  857. data/lib/VoucherifySdk/models/discount_percent_vouchers_effect_types.rb +40 -0
  858. data/lib/VoucherifySdk/models/discount_unit.rb +329 -0
  859. data/lib/VoucherifySdk/models/discount_unit_multiple.rb +298 -0
  860. data/lib/VoucherifySdk/models/discount_unit_multiple_one_unit.rb +310 -0
  861. data/lib/VoucherifySdk/models/discount_unit_vouchers_effect_types.rb +41 -0
  862. data/lib/VoucherifySdk/models/earning_rule.rb +474 -0
  863. data/lib/VoucherifySdk/models/earning_rule_base.rb +424 -0
  864. data/lib/VoucherifySdk/models/earning_rule_base_custom_event.rb +221 -0
  865. data/lib/VoucherifySdk/models/earning_rule_base_loyalty.rb +105 -0
  866. data/lib/VoucherifySdk/models/earning_rule_base_segment.rb +223 -0
  867. data/lib/VoucherifySdk/models/earning_rule_base_source.rb +284 -0
  868. data/lib/VoucherifySdk/models/earning_rule_base_validity_timeframe.rb +240 -0
  869. data/lib/VoucherifySdk/models/earning_rule_event.rb +46 -0
  870. data/lib/VoucherifySdk/models/earning_rule_fixed.rb +261 -0
  871. data/lib/VoucherifySdk/models/earning_rule_proportional.rb +107 -0
  872. data/lib/VoucherifySdk/models/earning_rule_proportional_custom_event.rb +301 -0
  873. data/lib/VoucherifySdk/models/earning_rule_proportional_custom_event_custom_event.rb +221 -0
  874. data/lib/VoucherifySdk/models/earning_rule_proportional_custom_event_custom_event_metadata.rb +257 -0
  875. data/lib/VoucherifySdk/models/earning_rule_proportional_customer_metadata.rb +301 -0
  876. data/lib/VoucherifySdk/models/earning_rule_proportional_customer_metadata_customer.rb +221 -0
  877. data/lib/VoucherifySdk/models/earning_rule_proportional_customer_metadata_customer_metadata.rb +257 -0
  878. data/lib/VoucherifySdk/models/earning_rule_proportional_order.rb +106 -0
  879. data/lib/VoucherifySdk/models/earning_rule_proportional_order_amount.rb +301 -0
  880. data/lib/VoucherifySdk/models/earning_rule_proportional_order_amount_order.rb +221 -0
  881. data/lib/VoucherifySdk/models/earning_rule_proportional_order_amount_order_amount.rb +240 -0
  882. data/lib/VoucherifySdk/models/earning_rule_proportional_order_items.rb +106 -0
  883. data/lib/VoucherifySdk/models/earning_rule_proportional_order_items_amount.rb +301 -0
  884. data/lib/VoucherifySdk/models/earning_rule_proportional_order_items_amount_order_items.rb +221 -0
  885. data/lib/VoucherifySdk/models/earning_rule_proportional_order_items_amount_order_items_amount.rb +308 -0
  886. data/lib/VoucherifySdk/models/earning_rule_proportional_order_items_quantity.rb +301 -0
  887. data/lib/VoucherifySdk/models/earning_rule_proportional_order_items_quantity_order_items.rb +221 -0
  888. data/lib/VoucherifySdk/models/earning_rule_proportional_order_items_subtotal_amount.rb +301 -0
  889. data/lib/VoucherifySdk/models/earning_rule_proportional_order_items_subtotal_amount_order_items.rb +221 -0
  890. data/lib/VoucherifySdk/models/earning_rule_proportional_order_metadata.rb +301 -0
  891. data/lib/VoucherifySdk/models/earning_rule_proportional_order_metadata_order.rb +222 -0
  892. data/lib/VoucherifySdk/models/earning_rule_proportional_order_metadata_order_metadata.rb +257 -0
  893. data/lib/VoucherifySdk/models/earning_rule_proportional_order_total_amount.rb +301 -0
  894. data/lib/VoucherifySdk/models/earning_rule_proportional_order_total_amount_order.rb +221 -0
  895. data/lib/VoucherifySdk/models/error.rb +311 -0
  896. data/lib/VoucherifySdk/models/event_customer_active_campaign_failed.rb +248 -0
  897. data/lib/VoucherifySdk/models/event_customer_active_campaign_recovered.rb +248 -0
  898. data/lib/VoucherifySdk/models/event_customer_active_campaign_sent.rb +248 -0
  899. data/lib/VoucherifySdk/models/event_customer_batch_failed.rb +248 -0
  900. data/lib/VoucherifySdk/models/event_customer_batch_recovered.rb +248 -0
  901. data/lib/VoucherifySdk/models/event_customer_batch_sent.rb +248 -0
  902. data/lib/VoucherifySdk/models/event_customer_braze_failed.rb +248 -0
  903. data/lib/VoucherifySdk/models/event_customer_braze_recovered.rb +248 -0
  904. data/lib/VoucherifySdk/models/event_customer_braze_sent.rb +248 -0
  905. data/lib/VoucherifySdk/models/event_customer_confirmed.rb +224 -0
  906. data/lib/VoucherifySdk/models/event_customer_confirmed_unconfirmed_customer.rb +214 -0
  907. data/lib/VoucherifySdk/models/event_customer_consents.rb +225 -0
  908. data/lib/VoucherifySdk/models/event_customer_consents_given.rb +233 -0
  909. data/lib/VoucherifySdk/models/event_customer_consents_revoked.rb +233 -0
  910. data/lib/VoucherifySdk/models/event_customer_created.rb +215 -0
  911. data/lib/VoucherifySdk/models/event_customer_custom_event.rb +222 -0
  912. data/lib/VoucherifySdk/models/event_customer_deleted.rb +215 -0
  913. data/lib/VoucherifySdk/models/event_customer_email_failed.rb +248 -0
  914. data/lib/VoucherifySdk/models/event_customer_email_recovered.rb +248 -0
  915. data/lib/VoucherifySdk/models/event_customer_email_sent.rb +248 -0
  916. data/lib/VoucherifySdk/models/event_customer_failed.rb +240 -0
  917. data/lib/VoucherifySdk/models/event_customer_gift_voucher_balance_added.rb +251 -0
  918. data/lib/VoucherifySdk/models/event_customer_intercom_failed.rb +248 -0
  919. data/lib/VoucherifySdk/models/event_customer_intercom_recovered.rb +248 -0
  920. data/lib/VoucherifySdk/models/event_customer_intercom_sent.rb +248 -0
  921. data/lib/VoucherifySdk/models/event_customer_klaviyo_failed.rb +248 -0
  922. data/lib/VoucherifySdk/models/event_customer_klaviyo_recovered.rb +248 -0
  923. data/lib/VoucherifySdk/models/event_customer_klaviyo_sent.rb +248 -0
  924. data/lib/VoucherifySdk/models/event_customer_loyalty_card_points_added.rb +251 -0
  925. data/lib/VoucherifySdk/models/event_customer_loyalty_card_points_transferred.rb +269 -0
  926. data/lib/VoucherifySdk/models/event_customer_loyalty_tier_base.rb +223 -0
  927. data/lib/VoucherifySdk/models/event_customer_loyalty_tier_downgraded.rb +279 -0
  928. data/lib/VoucherifySdk/models/event_customer_loyalty_tier_expiration_changed.rb +279 -0
  929. data/lib/VoucherifySdk/models/event_customer_loyalty_tier_joined.rb +263 -0
  930. data/lib/VoucherifySdk/models/event_customer_loyalty_tier_left.rb +263 -0
  931. data/lib/VoucherifySdk/models/event_customer_loyalty_tier_prolonged.rb +263 -0
  932. data/lib/VoucherifySdk/models/event_customer_loyalty_tier_upgraded.rb +272 -0
  933. data/lib/VoucherifySdk/models/event_customer_loyalty_updated.rb +249 -0
  934. data/lib/VoucherifySdk/models/event_customer_mailchimp_failed.rb +248 -0
  935. data/lib/VoucherifySdk/models/event_customer_mailchimp_recovered.rb +248 -0
  936. data/lib/VoucherifySdk/models/event_customer_mailchimp_sent.rb +248 -0
  937. data/lib/VoucherifySdk/models/event_customer_order.rb +241 -0
  938. data/lib/VoucherifySdk/models/event_customer_order_canceled.rb +249 -0
  939. data/lib/VoucherifySdk/models/event_customer_order_created.rb +249 -0
  940. data/lib/VoucherifySdk/models/event_customer_order_fulfilled.rb +249 -0
  941. data/lib/VoucherifySdk/models/event_customer_order_paid.rb +249 -0
  942. data/lib/VoucherifySdk/models/event_customer_order_processing.rb +249 -0
  943. data/lib/VoucherifySdk/models/event_customer_order_updated.rb +249 -0
  944. data/lib/VoucherifySdk/models/event_customer_publication_failed.rb +233 -0
  945. data/lib/VoucherifySdk/models/event_customer_publication_succeeded.rb +233 -0
  946. data/lib/VoucherifySdk/models/event_customer_recovered.rb +240 -0
  947. data/lib/VoucherifySdk/models/event_customer_redemption.rb +268 -0
  948. data/lib/VoucherifySdk/models/event_customer_redemption_failed.rb +276 -0
  949. data/lib/VoucherifySdk/models/event_customer_redemption_rollback_failed.rb +285 -0
  950. data/lib/VoucherifySdk/models/event_customer_redemption_rollback_succeeded.rb +285 -0
  951. data/lib/VoucherifySdk/models/event_customer_redemption_succeeded.rb +276 -0
  952. data/lib/VoucherifySdk/models/event_customer_referred.rb +288 -0
  953. data/lib/VoucherifySdk/models/event_customer_reward_redemptions.rb +286 -0
  954. data/lib/VoucherifySdk/models/event_customer_reward_redemptions_completed.rb +294 -0
  955. data/lib/VoucherifySdk/models/event_customer_reward_redemptions_created.rb +294 -0
  956. data/lib/VoucherifySdk/models/event_customer_reward_redemptions_pending.rb +294 -0
  957. data/lib/VoucherifySdk/models/event_customer_reward_redemptions_rolled_back.rb +294 -0
  958. data/lib/VoucherifySdk/models/event_customer_rewarded.rb +296 -0
  959. data/lib/VoucherifySdk/models/event_customer_rewarded_loyalty_points.rb +287 -0
  960. data/lib/VoucherifySdk/models/event_customer_segment_entered.rb +238 -0
  961. data/lib/VoucherifySdk/models/event_customer_segment_left.rb +238 -0
  962. data/lib/VoucherifySdk/models/event_customer_sent.rb +240 -0
  963. data/lib/VoucherifySdk/models/event_customer_shopify_failed.rb +248 -0
  964. data/lib/VoucherifySdk/models/event_customer_shopify_recovered.rb +248 -0
  965. data/lib/VoucherifySdk/models/event_customer_shopify_sent.rb +248 -0
  966. data/lib/VoucherifySdk/models/event_customer_sms_failed.rb +248 -0
  967. data/lib/VoucherifySdk/models/event_customer_sms_recovered.rb +248 -0
  968. data/lib/VoucherifySdk/models/event_customer_sms_sent.rb +248 -0
  969. data/lib/VoucherifySdk/models/event_customer_updated.rb +215 -0
  970. data/lib/VoucherifySdk/models/event_customer_validation_failed.rb +224 -0
  971. data/lib/VoucherifySdk/models/event_customer_validation_succeeded.rb +224 -0
  972. data/lib/VoucherifySdk/models/event_customer_voucher_deleted.rb +233 -0
  973. data/lib/VoucherifySdk/models/event_customer_vouchers_loyalty_points_expired.rb +262 -0
  974. data/lib/VoucherifySdk/models/events_create_request_body.rb +295 -0
  975. data/lib/VoucherifySdk/models/events_create_response_body.rb +316 -0
  976. data/lib/VoucherifySdk/models/export.rb +110 -0
  977. data/lib/VoucherifySdk/models/export_base.rb +354 -0
  978. data/lib/VoucherifySdk/models/export_base_result.rb +223 -0
  979. data/lib/VoucherifySdk/models/export_customer.rb +400 -0
  980. data/lib/VoucherifySdk/models/export_customer_base.rb +265 -0
  981. data/lib/VoucherifySdk/models/export_customer_base_parameters.rb +259 -0
  982. data/lib/VoucherifySdk/models/export_customer_fields.rb +68 -0
  983. data/lib/VoucherifySdk/models/export_customer_order.rb +50 -0
  984. data/lib/VoucherifySdk/models/export_customer_scheduled.rb +405 -0
  985. data/lib/VoucherifySdk/models/export_order.rb +400 -0
  986. data/lib/VoucherifySdk/models/export_order_base.rb +265 -0
  987. data/lib/VoucherifySdk/models/export_order_fields.rb +51 -0
  988. data/lib/VoucherifySdk/models/export_order_order.rb +44 -0
  989. data/lib/VoucherifySdk/models/export_order_scheduled.rb +405 -0
  990. data/lib/VoucherifySdk/models/export_points_expiration.rb +400 -0
  991. data/lib/VoucherifySdk/models/export_points_expiration_base.rb +265 -0
  992. data/lib/VoucherifySdk/models/export_points_expiration_base_parameters.rb +258 -0
  993. data/lib/VoucherifySdk/models/export_points_expiration_fields.rb +44 -0
  994. data/lib/VoucherifySdk/models/export_points_expiration_filters.rb +254 -0
  995. data/lib/VoucherifySdk/models/export_points_expiration_order.rb +40 -0
  996. data/lib/VoucherifySdk/models/export_points_expiration_scheduled.rb +405 -0
  997. data/lib/VoucherifySdk/models/export_publication.rb +400 -0
  998. data/lib/VoucherifySdk/models/export_publication_base.rb +265 -0
  999. data/lib/VoucherifySdk/models/export_publication_base_parameters.rb +259 -0
  1000. data/lib/VoucherifySdk/models/export_publication_fields.rb +46 -0
  1001. data/lib/VoucherifySdk/models/export_publication_order.rb +50 -0
  1002. data/lib/VoucherifySdk/models/export_publication_scheduled.rb +405 -0
  1003. data/lib/VoucherifySdk/models/export_redemption.rb +400 -0
  1004. data/lib/VoucherifySdk/models/export_redemption_base.rb +265 -0
  1005. data/lib/VoucherifySdk/models/export_redemption_base_parameters.rb +259 -0
  1006. data/lib/VoucherifySdk/models/export_redemption_fields.rb +55 -0
  1007. data/lib/VoucherifySdk/models/export_redemption_order.rb +48 -0
  1008. data/lib/VoucherifySdk/models/export_redemption_scheduled.rb +405 -0
  1009. data/lib/VoucherifySdk/models/export_scheduled_base.rb +359 -0
  1010. data/lib/VoucherifySdk/models/export_voucher.rb +400 -0
  1011. data/lib/VoucherifySdk/models/export_voucher_base.rb +265 -0
  1012. data/lib/VoucherifySdk/models/export_voucher_base_parameters.rb +258 -0
  1013. data/lib/VoucherifySdk/models/export_voucher_fields.rb +68 -0
  1014. data/lib/VoucherifySdk/models/export_voucher_order.rb +44 -0
  1015. data/lib/VoucherifySdk/models/export_voucher_scheduled.rb +405 -0
  1016. data/lib/VoucherifySdk/models/export_voucher_transactions.rb +400 -0
  1017. data/lib/VoucherifySdk/models/export_voucher_transactions_base.rb +265 -0
  1018. data/lib/VoucherifySdk/models/export_voucher_transactions_fields.rb +50 -0
  1019. data/lib/VoucherifySdk/models/export_voucher_transactions_filters.rb +263 -0
  1020. data/lib/VoucherifySdk/models/export_voucher_transactions_order.rb +40 -0
  1021. data/lib/VoucherifySdk/models/export_voucher_transactions_scheduled.rb +405 -0
  1022. data/lib/VoucherifySdk/models/exports_create_request_body.rb +111 -0
  1023. data/lib/VoucherifySdk/models/exports_create_response_body.rb +111 -0
  1024. data/lib/VoucherifySdk/models/exports_get_response_body.rb +400 -0
  1025. data/lib/VoucherifySdk/models/exports_list_response_body.rb +322 -0
  1026. data/lib/VoucherifySdk/models/field_conditions.rb +214 -0
  1027. data/lib/VoucherifySdk/models/filter_conditions_string.rb +290 -0
  1028. data/lib/VoucherifySdk/models/filters_condition.rb +430 -0
  1029. data/lib/VoucherifySdk/models/gift.rb +284 -0
  1030. data/lib/VoucherifySdk/models/gift_campaign_voucher.rb +291 -0
  1031. data/lib/VoucherifySdk/models/giveaway_campaign_voucher.rb +300 -0
  1032. data/lib/VoucherifySdk/models/inapplicable_to.rb +413 -0
  1033. data/lib/VoucherifySdk/models/inapplicable_to_result_list.rb +340 -0
  1034. data/lib/VoucherifySdk/models/junction.rb +40 -0
  1035. data/lib/VoucherifySdk/models/list_publications_item_base.rb +399 -0
  1036. data/lib/VoucherifySdk/models/list_publications_item_invalid.rb +455 -0
  1037. data/lib/VoucherifySdk/models/list_publications_item_valid_multiple_vouchers.rb +454 -0
  1038. data/lib/VoucherifySdk/models/list_publications_item_valid_single_voucher.rb +451 -0
  1039. data/lib/VoucherifySdk/models/list_publications_item_voucher.rb +328 -0
  1040. data/lib/VoucherifySdk/models/loyalties_delete_response_body.rb +230 -0
  1041. data/lib/VoucherifySdk/models/loyalties_earning_rules_disable_response_body.rb +462 -0
  1042. data/lib/VoucherifySdk/models/loyalties_earning_rules_enable_response_body.rb +462 -0
  1043. data/lib/VoucherifySdk/models/loyalties_earning_rules_get_response_body.rb +475 -0
  1044. data/lib/VoucherifySdk/models/loyalties_loyalty_tier_reward.rb +289 -0
  1045. data/lib/VoucherifySdk/models/loyalties_members_balance_update_request_body.rb +284 -0
  1046. data/lib/VoucherifySdk/models/loyalties_members_balance_update_response_body.rb +399 -0
  1047. data/lib/VoucherifySdk/models/loyalties_members_balance_update_response_body_related_object.rb +274 -0
  1048. data/lib/VoucherifySdk/models/loyalties_members_points_expiration_list_response_body.rb +334 -0
  1049. data/lib/VoucherifySdk/models/loyalties_members_points_expiration_list_response_body_data_item.rb +390 -0
  1050. data/lib/VoucherifySdk/models/loyalties_members_points_expiration_list_response_body_data_item_bucket.rb +223 -0
  1051. data/lib/VoucherifySdk/models/loyalties_members_redemption_redeem_request_body.rb +234 -0
  1052. data/lib/VoucherifySdk/models/loyalties_members_redemption_redeem_request_body_reward.rb +226 -0
  1053. data/lib/VoucherifySdk/models/loyalties_members_redemption_redeem_response_body.rb +585 -0
  1054. data/lib/VoucherifySdk/models/loyalties_members_rewards_list_response_body.rb +341 -0
  1055. data/lib/VoucherifySdk/models/loyalties_members_rewards_list_response_body_data_item.rb +269 -0
  1056. data/lib/VoucherifySdk/models/loyalties_members_tiers_list_response_body.rb +321 -0
  1057. data/lib/VoucherifySdk/models/loyalties_members_transactions_export_create_request_body.rb +215 -0
  1058. data/lib/VoucherifySdk/models/loyalties_members_transactions_export_create_request_body_parameters.rb +258 -0
  1059. data/lib/VoucherifySdk/models/loyalties_members_transactions_export_create_response_body.rb +405 -0
  1060. data/lib/VoucherifySdk/models/loyalties_members_transactions_list_response_body.rb +334 -0
  1061. data/lib/VoucherifySdk/models/loyalties_members_transfers_create_response_body.rb +544 -0
  1062. data/lib/VoucherifySdk/models/loyalties_members_transfers_create_response_body_assets.rb +224 -0
  1063. data/lib/VoucherifySdk/models/loyalties_members_transfers_create_response_body_assets_barcode.rb +226 -0
  1064. data/lib/VoucherifySdk/models/loyalties_members_transfers_create_response_body_assets_qr.rb +226 -0
  1065. data/lib/VoucherifySdk/models/loyalties_members_transfers_create_response_body_loyalty_card.rb +260 -0
  1066. data/lib/VoucherifySdk/models/loyalties_members_transfers_create_response_body_publish.rb +288 -0
  1067. data/lib/VoucherifySdk/models/loyalties_members_transfers_create_response_body_redemption.rb +306 -0
  1068. data/lib/VoucherifySdk/models/loyalties_members_transfers_create_response_body_validity_timeframe.rb +226 -0
  1069. data/lib/VoucherifySdk/models/loyalties_reward_assignments_get_response_body.rb +383 -0
  1070. data/lib/VoucherifySdk/models/loyalties_reward_assignments_reward_get_response_body.rb +418 -0
  1071. data/lib/VoucherifySdk/models/loyalties_rewards_get_response_body.rb +383 -0
  1072. data/lib/VoucherifySdk/models/loyalties_tiers_create_in_bulk_request_body_item.rb +279 -0
  1073. data/lib/VoucherifySdk/models/loyalties_tiers_earning_rules_list_response_body.rb +322 -0
  1074. data/lib/VoucherifySdk/models/loyalties_tiers_get_response_body.rb +421 -0
  1075. data/lib/VoucherifySdk/models/loyalties_tiers_list_response_body.rb +322 -0
  1076. data/lib/VoucherifySdk/models/loyalties_tiers_rewards_list_response_body.rb +276 -0
  1077. data/lib/VoucherifySdk/models/loyalties_transfer_points.rb +266 -0
  1078. data/lib/VoucherifySdk/models/loyalty_card_transaction.rb +386 -0
  1079. data/lib/VoucherifySdk/models/loyalty_card_transactions_type.rb +47 -0
  1080. data/lib/VoucherifySdk/models/loyalty_tier.rb +420 -0
  1081. data/lib/VoucherifySdk/models/loyalty_tier_all_of_config.rb +222 -0
  1082. data/lib/VoucherifySdk/models/loyalty_tier_all_of_config_points.rb +226 -0
  1083. data/lib/VoucherifySdk/models/loyalty_tier_base.rb +262 -0
  1084. data/lib/VoucherifySdk/models/loyalty_tier_base_points.rb +226 -0
  1085. data/lib/VoucherifySdk/models/loyalty_tier_expiration.rb +304 -0
  1086. data/lib/VoucherifySdk/models/loyalty_tiers_expiration_all.rb +311 -0
  1087. data/lib/VoucherifySdk/models/loyalty_tiers_expiration_all_expiration_date.rb +283 -0
  1088. data/lib/VoucherifySdk/models/loyalty_tiers_expiration_all_expiration_date_rounding.rb +306 -0
  1089. data/lib/VoucherifySdk/models/loyalty_tiers_expiration_all_start_date.rb +257 -0
  1090. data/lib/VoucherifySdk/models/lucky_draw.rb +246 -0
  1091. data/lib/VoucherifySdk/models/mapping_fixed.rb +261 -0
  1092. data/lib/VoucherifySdk/models/mapping_multiply.rb +261 -0
  1093. data/lib/VoucherifySdk/models/mapping_points.rb +105 -0
  1094. data/lib/VoucherifySdk/models/order.rb +366 -0
  1095. data/lib/VoucherifySdk/models/order_base.rb +339 -0
  1096. data/lib/VoucherifySdk/models/order_calculated.rb +496 -0
  1097. data/lib/VoucherifySdk/models/order_calculated_base.rb +472 -0
  1098. data/lib/VoucherifySdk/models/order_calculated_customer.rb +105 -0
  1099. data/lib/VoucherifySdk/models/order_calculated_no_customer_data.rb +496 -0
  1100. data/lib/VoucherifySdk/models/order_calculated_referrer.rb +105 -0
  1101. data/lib/VoucherifySdk/models/order_item.rb +377 -0
  1102. data/lib/VoucherifySdk/models/order_item_calculated.rb +436 -0
  1103. data/lib/VoucherifySdk/models/order_item_product.rb +266 -0
  1104. data/lib/VoucherifySdk/models/order_item_sku.rb +256 -0
  1105. data/lib/VoucherifySdk/models/order_redemptions.rb +291 -0
  1106. data/lib/VoucherifySdk/models/orders_create_request_body.rb +367 -0
  1107. data/lib/VoucherifySdk/models/orders_create_response_body.rb +497 -0
  1108. data/lib/VoucherifySdk/models/orders_export_create_request_body.rb +215 -0
  1109. data/lib/VoucherifySdk/models/orders_export_create_request_body_parameters.rb +259 -0
  1110. data/lib/VoucherifySdk/models/orders_export_create_response_body.rb +406 -0
  1111. data/lib/VoucherifySdk/models/orders_get_response_body.rb +497 -0
  1112. data/lib/VoucherifySdk/models/orders_import_create_request_body_item.rb +356 -0
  1113. data/lib/VoucherifySdk/models/orders_import_create_response_body.rb +230 -0
  1114. data/lib/VoucherifySdk/models/orders_list_response_body.rb +322 -0
  1115. data/lib/VoucherifySdk/models/orders_update_request_body.rb +347 -0
  1116. data/lib/VoucherifySdk/models/orders_update_response_body.rb +497 -0
  1117. data/lib/VoucherifySdk/models/parameter_campaign_type.rb +44 -0
  1118. data/lib/VoucherifySdk/models/parameter_created_before_after.rb +225 -0
  1119. data/lib/VoucherifySdk/models/parameter_expand_list_campaigns.rb +39 -0
  1120. data/lib/VoucherifySdk/models/parameter_filters_list_redemptions.rb +295 -0
  1121. data/lib/VoucherifySdk/models/parameter_filters_list_redemptions_campaign_name.rb +246 -0
  1122. data/lib/VoucherifySdk/models/parameter_filters_list_redemptions_customer_id.rb +246 -0
  1123. data/lib/VoucherifySdk/models/parameter_filters_list_redemptions_failure_code.rb +246 -0
  1124. data/lib/VoucherifySdk/models/parameter_filters_list_redemptions_object.rb +246 -0
  1125. data/lib/VoucherifySdk/models/parameter_filters_list_redemptions_parent_redemption_id.rb +246 -0
  1126. data/lib/VoucherifySdk/models/parameter_filters_list_redemptions_related_object_id.rb +246 -0
  1127. data/lib/VoucherifySdk/models/parameter_filters_list_redemptions_related_object_parent_id.rb +246 -0
  1128. data/lib/VoucherifySdk/models/parameter_filters_list_redemptions_result.rb +246 -0
  1129. data/lib/VoucherifySdk/models/parameter_filters_list_redemptions_user_login.rb +246 -0
  1130. data/lib/VoucherifySdk/models/parameter_filters_list_redemptions_voucher_code.rb +246 -0
  1131. data/lib/VoucherifySdk/models/parameter_order.rb +50 -0
  1132. data/lib/VoucherifySdk/models/parameter_order_list_all_promotion_stacks.rb +44 -0
  1133. data/lib/VoucherifySdk/models/parameter_order_list_campaigns.rb +42 -0
  1134. data/lib/VoucherifySdk/models/parameter_order_list_customers.rb +44 -0
  1135. data/lib/VoucherifySdk/models/parameter_order_list_exports.rb +42 -0
  1136. data/lib/VoucherifySdk/models/parameter_order_list_loyalty_tiers.rb +42 -0
  1137. data/lib/VoucherifySdk/models/parameter_order_list_orders.rb +42 -0
  1138. data/lib/VoucherifySdk/models/parameter_order_list_publications.rb +50 -0
  1139. data/lib/VoucherifySdk/models/parameter_order_list_redemptions.rb +48 -0
  1140. data/lib/VoucherifySdk/models/parameter_order_list_validation_rule_assignments.rb +40 -0
  1141. data/lib/VoucherifySdk/models/parameter_order_list_validation_rules.rb +44 -0
  1142. data/lib/VoucherifySdk/models/parameter_result_list_publications.rb +40 -0
  1143. data/lib/VoucherifySdk/models/parameter_updated_before_after.rb +225 -0
  1144. data/lib/VoucherifySdk/models/parameter_voucher_type_list_publications.rb +41 -0
  1145. data/lib/VoucherifySdk/models/points_expiration_types.rb +41 -0
  1146. data/lib/VoucherifySdk/models/product.rb +397 -0
  1147. data/lib/VoucherifySdk/models/product_collections_create_dynamic_request_body.rb +290 -0
  1148. data/lib/VoucherifySdk/models/product_collections_create_dynamic_request_body_filter.rb +352 -0
  1149. data/lib/VoucherifySdk/models/product_collections_create_dynamic_request_body_products_item.rb +283 -0
  1150. data/lib/VoucherifySdk/models/product_collections_create_request_body.rb +106 -0
  1151. data/lib/VoucherifySdk/models/product_collections_create_response_body.rb +365 -0
  1152. data/lib/VoucherifySdk/models/product_collections_create_static_request_body.rb +286 -0
  1153. data/lib/VoucherifySdk/models/product_collections_get_response_body.rb +365 -0
  1154. data/lib/VoucherifySdk/models/product_collections_item.rb +358 -0
  1155. data/lib/VoucherifySdk/models/product_collections_item_products_item.rb +283 -0
  1156. data/lib/VoucherifySdk/models/product_collections_list.rb +322 -0
  1157. data/lib/VoucherifySdk/models/product_collections_list_response_body.rb +329 -0
  1158. data/lib/VoucherifySdk/models/product_collections_products_list.rb +276 -0
  1159. data/lib/VoucherifySdk/models/product_collections_products_list_products_item.rb +105 -0
  1160. data/lib/VoucherifySdk/models/product_collections_products_list_response_body.rb +283 -0
  1161. data/lib/VoucherifySdk/models/product_without_skus.rb +380 -0
  1162. data/lib/VoucherifySdk/models/products_create_request_body.rb +278 -0
  1163. data/lib/VoucherifySdk/models/products_create_response_body.rb +397 -0
  1164. data/lib/VoucherifySdk/models/products_get_response_body.rb +397 -0
  1165. data/lib/VoucherifySdk/models/products_import_csv_create_response_body.rb +230 -0
  1166. data/lib/VoucherifySdk/models/products_list_response_body.rb +276 -0
  1167. data/lib/VoucherifySdk/models/products_metadata_update_in_bulk_request_body.rb +242 -0
  1168. data/lib/VoucherifySdk/models/products_metadata_update_in_bulk_response_body.rb +230 -0
  1169. data/lib/VoucherifySdk/models/products_skus_create_request_body.rb +286 -0
  1170. data/lib/VoucherifySdk/models/products_skus_create_response_body.rb +425 -0
  1171. data/lib/VoucherifySdk/models/products_skus_list_response_body.rb +283 -0
  1172. data/lib/VoucherifySdk/models/products_skus_update_request_body.rb +266 -0
  1173. data/lib/VoucherifySdk/models/products_skus_update_response_body.rb +425 -0
  1174. data/lib/VoucherifySdk/models/products_update_in_bulk_request_body.rb +275 -0
  1175. data/lib/VoucherifySdk/models/products_update_in_bulk_response_body.rb +230 -0
  1176. data/lib/VoucherifySdk/models/products_update_request_body.rb +258 -0
  1177. data/lib/VoucherifySdk/models/products_update_response_body.rb +397 -0
  1178. data/lib/VoucherifySdk/models/promotion_stack.rb +389 -0
  1179. data/lib/VoucherifySdk/models/promotion_stack_base.rb +238 -0
  1180. data/lib/VoucherifySdk/models/promotion_stack_base_tiers.rb +289 -0
  1181. data/lib/VoucherifySdk/models/promotion_tier.rb +416 -0
  1182. data/lib/VoucherifySdk/models/promotion_tier_action.rb +215 -0
  1183. data/lib/VoucherifySdk/models/promotion_tier_campaign.rb +289 -0
  1184. data/lib/VoucherifySdk/models/promotion_tier_campaign_validity_timeframe.rb +226 -0
  1185. data/lib/VoucherifySdk/models/promotion_tier_create_params.rb +345 -0
  1186. data/lib/VoucherifySdk/models/promotion_tier_summary.rb +224 -0
  1187. data/lib/VoucherifySdk/models/promotion_tier_summary_orders.rb +226 -0
  1188. data/lib/VoucherifySdk/models/promotion_tier_summary_redemptions.rb +216 -0
  1189. data/lib/VoucherifySdk/models/promotion_tier_validity_timeframe.rb +226 -0
  1190. data/lib/VoucherifySdk/models/promotion_tiers_list.rb +262 -0
  1191. data/lib/VoucherifySdk/models/promotions_stacks_create_request_body.rb +256 -0
  1192. data/lib/VoucherifySdk/models/promotions_stacks_create_response_body.rb +380 -0
  1193. data/lib/VoucherifySdk/models/promotions_stacks_get_response_body.rb +390 -0
  1194. data/lib/VoucherifySdk/models/promotions_stacks_list_response_body.rb +341 -0
  1195. data/lib/VoucherifySdk/models/promotions_stacks_update_request_body.rb +235 -0
  1196. data/lib/VoucherifySdk/models/promotions_stacks_update_request_body_tiers.rb +264 -0
  1197. data/lib/VoucherifySdk/models/promotions_stacks_update_response_body.rb +397 -0
  1198. data/lib/VoucherifySdk/models/promotions_tiers_disable_response_body.rb +423 -0
  1199. data/lib/VoucherifySdk/models/promotions_tiers_enable_response_body.rb +423 -0
  1200. data/lib/VoucherifySdk/models/promotions_tiers_get_response_body.rb +423 -0
  1201. data/lib/VoucherifySdk/models/promotions_tiers_list_response_body.rb +269 -0
  1202. data/lib/VoucherifySdk/models/properties_for_loyalty_campaign_options.rb +215 -0
  1203. data/lib/VoucherifySdk/models/publications_create_base_response_body.rb +440 -0
  1204. data/lib/VoucherifySdk/models/publications_create_request_body.rb +106 -0
  1205. data/lib/VoucherifySdk/models/publications_create_response_body.rb +106 -0
  1206. data/lib/VoucherifySdk/models/publications_create_voucher_response_body.rb +464 -0
  1207. data/lib/VoucherifySdk/models/publications_create_vouchers_response_body.rb +467 -0
  1208. data/lib/VoucherifySdk/models/publications_list_response_body.rb +276 -0
  1209. data/lib/VoucherifySdk/models/publications_list_response_body_publications_item.rb +107 -0
  1210. data/lib/VoucherifySdk/models/qualifications_check_eligibility_request_body.rb +319 -0
  1211. data/lib/VoucherifySdk/models/qualifications_check_eligibility_response_body.rb +243 -0
  1212. data/lib/VoucherifySdk/models/qualifications_field_conditions.rb +214 -0
  1213. data/lib/VoucherifySdk/models/qualifications_filters_condition.rb +259 -0
  1214. data/lib/VoucherifySdk/models/qualifications_option.rb +311 -0
  1215. data/lib/VoucherifySdk/models/qualifications_option_filters.rb +291 -0
  1216. data/lib/VoucherifySdk/models/qualifications_option_filters_resource_type.rb +214 -0
  1217. data/lib/VoucherifySdk/models/qualifications_option_filters_resource_type_conditions.rb +270 -0
  1218. data/lib/VoucherifySdk/models/qualifications_redeemable.rb +404 -0
  1219. data/lib/VoucherifySdk/models/qualifications_redeemable_base.rb +387 -0
  1220. data/lib/VoucherifySdk/models/qualifications_redeemables.rb +349 -0
  1221. data/lib/VoucherifySdk/models/redeem_gift_card.rb +289 -0
  1222. data/lib/VoucherifySdk/models/redeem_gift_card_all_of_gift.rb +216 -0
  1223. data/lib/VoucherifySdk/models/redeem_loyalty_card.rb +289 -0
  1224. data/lib/VoucherifySdk/models/redeem_loyalty_card_all_of_reward.rb +226 -0
  1225. data/lib/VoucherifySdk/models/redeem_promotion_stack.rb +274 -0
  1226. data/lib/VoucherifySdk/models/redeem_promotion_tier.rb +274 -0
  1227. data/lib/VoucherifySdk/models/redeem_voucher.rb +274 -0
  1228. data/lib/VoucherifySdk/models/redeemable_gift.rb +226 -0
  1229. data/lib/VoucherifySdk/models/redeemable_loyalty_card.rb +257 -0
  1230. data/lib/VoucherifySdk/models/redeemable_result.rb +242 -0
  1231. data/lib/VoucherifySdk/models/redeemable_result_gift_card.rb +215 -0
  1232. data/lib/VoucherifySdk/models/redeemable_result_gift_card_gift.rb +216 -0
  1233. data/lib/VoucherifySdk/models/redeemable_result_loyalty_card.rb +215 -0
  1234. data/lib/VoucherifySdk/models/redeemable_result_loyalty_card_loyalty_card.rb +216 -0
  1235. data/lib/VoucherifySdk/models/redeemable_result_promotion_stack.rb +215 -0
  1236. data/lib/VoucherifySdk/models/redeemable_result_promotion_tier.rb +215 -0
  1237. data/lib/VoucherifySdk/models/redeemable_result_promotion_tier_discount.rb +109 -0
  1238. data/lib/VoucherifySdk/models/redeemable_result_voucher_code.rb +215 -0
  1239. data/lib/VoucherifySdk/models/redemption.rb +571 -0
  1240. data/lib/VoucherifySdk/models/redemption_channel.rb +260 -0
  1241. data/lib/VoucherifySdk/models/redemption_gift.rb +216 -0
  1242. data/lib/VoucherifySdk/models/redemption_internal.rb +542 -0
  1243. data/lib/VoucherifySdk/models/redemption_internal_related_redemptions.rb +227 -0
  1244. data/lib/VoucherifySdk/models/redemption_internal_related_redemptions_item.rb +225 -0
  1245. data/lib/VoucherifySdk/models/redemption_internal_related_redemptions_rollbacks_item.rb +225 -0
  1246. data/lib/VoucherifySdk/models/redemption_loyalty_card.rb +216 -0
  1247. data/lib/VoucherifySdk/models/redemption_related_redemptions.rb +227 -0
  1248. data/lib/VoucherifySdk/models/redemption_related_redemptions_item.rb +225 -0
  1249. data/lib/VoucherifySdk/models/redemption_related_redemptions_rollbacks_item.rb +225 -0
  1250. data/lib/VoucherifySdk/models/redemption_reward_result.rb +396 -0
  1251. data/lib/VoucherifySdk/models/redemption_reward_result_parameters.rb +233 -0
  1252. data/lib/VoucherifySdk/models/redemption_reward_result_parameters_campaign.rb +236 -0
  1253. data/lib/VoucherifySdk/models/redemption_reward_result_parameters_coin.rb +226 -0
  1254. data/lib/VoucherifySdk/models/redemption_reward_result_parameters_product.rb +226 -0
  1255. data/lib/VoucherifySdk/models/redemption_reward_result_product.rb +397 -0
  1256. data/lib/VoucherifySdk/models/redemption_reward_result_sku.rb +425 -0
  1257. data/lib/VoucherifySdk/models/redemption_reward_result_voucher.rb +547 -0
  1258. data/lib/VoucherifySdk/models/redemption_rollback.rb +581 -0
  1259. data/lib/VoucherifySdk/models/redemption_rollback_related_redemptions.rb +227 -0
  1260. data/lib/VoucherifySdk/models/redemption_rollback_related_redemptions_item.rb +225 -0
  1261. data/lib/VoucherifySdk/models/redemption_rollback_related_redemptions_rollbacks_item.rb +225 -0
  1262. data/lib/VoucherifySdk/models/redemptions_get_response_body.rb +106 -0
  1263. data/lib/VoucherifySdk/models/redemptions_list_response_body.rb +275 -0
  1264. data/lib/VoucherifySdk/models/redemptions_list_response_body_redemptions_item.rb +105 -0
  1265. data/lib/VoucherifySdk/models/redemptions_redeem_request_body.rb +316 -0
  1266. data/lib/VoucherifySdk/models/redemptions_redeem_response_body.rb +259 -0
  1267. data/lib/VoucherifySdk/models/redemptions_rollback_create_request_body.rb +254 -0
  1268. data/lib/VoucherifySdk/models/redemptions_rollback_create_response_body.rb +588 -0
  1269. data/lib/VoucherifySdk/models/redemptions_rollbacks_create_request_body.rb +254 -0
  1270. data/lib/VoucherifySdk/models/redemptions_rollbacks_create_response_body.rb +236 -0
  1271. data/lib/VoucherifySdk/models/referral_campaign_voucher.rb +307 -0
  1272. data/lib/VoucherifySdk/models/referral_program.rb +268 -0
  1273. data/lib/VoucherifySdk/models/referral_program_custom_event.rb +226 -0
  1274. data/lib/VoucherifySdk/models/referral_program_referee_reward.rb +269 -0
  1275. data/lib/VoucherifySdk/models/referral_program_referee_reward_related_object_parent.rb +272 -0
  1276. data/lib/VoucherifySdk/models/referrer.rb +312 -0
  1277. data/lib/VoucherifySdk/models/referrer_id.rb +280 -0
  1278. data/lib/VoucherifySdk/models/referrer_with_summary_loyalty_referrals.rb +438 -0
  1279. data/lib/VoucherifySdk/models/resource_types.rb +41 -0
  1280. data/lib/VoucherifySdk/models/reward.rb +410 -0
  1281. data/lib/VoucherifySdk/models/reward_assignment.rb +383 -0
  1282. data/lib/VoucherifySdk/models/reward_assignment_base.rb +366 -0
  1283. data/lib/VoucherifySdk/models/reward_assignment_parameters.rb +214 -0
  1284. data/lib/VoucherifySdk/models/reward_assignment_parameters_parameters.rb +222 -0
  1285. data/lib/VoucherifySdk/models/reward_assignment_parameters_parameters_loyalty.rb +216 -0
  1286. data/lib/VoucherifySdk/models/reward_assignments_create_coin_reward_request_body.rb +234 -0
  1287. data/lib/VoucherifySdk/models/reward_assignments_create_digital_or_material_reward_request_body.rb +239 -0
  1288. data/lib/VoucherifySdk/models/reward_assignments_create_digital_or_material_reward_request_body_parameters.rb +222 -0
  1289. data/lib/VoucherifySdk/models/reward_assignments_create_digital_or_material_reward_request_body_parameters_loyalty.rb +216 -0
  1290. data/lib/VoucherifySdk/models/reward_attributes.rb +226 -0
  1291. data/lib/VoucherifySdk/models/reward_type.rb +106 -0
  1292. data/lib/VoucherifySdk/models/reward_type_campaign.rb +221 -0
  1293. data/lib/VoucherifySdk/models/reward_type_campaign_campaign.rb +284 -0
  1294. data/lib/VoucherifySdk/models/reward_type_coin.rb +221 -0
  1295. data/lib/VoucherifySdk/models/reward_type_coin_coin.rb +233 -0
  1296. data/lib/VoucherifySdk/models/reward_type_material.rb +221 -0
  1297. data/lib/VoucherifySdk/models/reward_type_material_product.rb +236 -0
  1298. data/lib/VoucherifySdk/models/rewards_assignments_create_request_body.rb +106 -0
  1299. data/lib/VoucherifySdk/models/rewards_assignments_create_response_body.rb +383 -0
  1300. data/lib/VoucherifySdk/models/rewards_assignments_get_response_body.rb +383 -0
  1301. data/lib/VoucherifySdk/models/rewards_assignments_list_response_body.rb +275 -0
  1302. data/lib/VoucherifySdk/models/rewards_assignments_update_request_body.rb +215 -0
  1303. data/lib/VoucherifySdk/models/rewards_assignments_update_request_body_parameters.rb +215 -0
  1304. data/lib/VoucherifySdk/models/rewards_assignments_update_request_body_parameters_loyalty.rb +216 -0
  1305. data/lib/VoucherifySdk/models/rewards_assignments_update_response_body.rb +383 -0
  1306. data/lib/VoucherifySdk/models/schema_that_contains_unique_properties_for_promotion_campaign_promotion.rb +217 -0
  1307. data/lib/VoucherifySdk/models/session.rb +307 -0
  1308. data/lib/VoucherifySdk/models/simple_campaign.rb +381 -0
  1309. data/lib/VoucherifySdk/models/simple_consent.rb +273 -0
  1310. data/lib/VoucherifySdk/models/simple_customer.rb +301 -0
  1311. data/lib/VoucherifySdk/models/simple_customer_required_object_type.rb +273 -0
  1312. data/lib/VoucherifySdk/models/simple_order.rb +423 -0
  1313. data/lib/VoucherifySdk/models/simple_order_item.rb +363 -0
  1314. data/lib/VoucherifySdk/models/simple_product.rb +235 -0
  1315. data/lib/VoucherifySdk/models/simple_product_discount_unit.rb +249 -0
  1316. data/lib/VoucherifySdk/models/simple_promotion_tier.rb +245 -0
  1317. data/lib/VoucherifySdk/models/simple_promotion_tier_campaign.rb +216 -0
  1318. data/lib/VoucherifySdk/models/simple_redemption.rb +368 -0
  1319. data/lib/VoucherifySdk/models/simple_redemption_reward_result.rb +380 -0
  1320. data/lib/VoucherifySdk/models/simple_referral_tier.rb +245 -0
  1321. data/lib/VoucherifySdk/models/simple_segment.rb +290 -0
  1322. data/lib/VoucherifySdk/models/simple_sku.rb +235 -0
  1323. data/lib/VoucherifySdk/models/simple_sku_discount_unit.rb +249 -0
  1324. data/lib/VoucherifySdk/models/simple_voucher.rb +390 -0
  1325. data/lib/VoucherifySdk/models/sku.rb +418 -0
  1326. data/lib/VoucherifySdk/models/sku_with_product.rb +433 -0
  1327. data/lib/VoucherifySdk/models/skus_get_response_body.rb +425 -0
  1328. data/lib/VoucherifySdk/models/skus_import_csv_create_response_body.rb +230 -0
  1329. data/lib/VoucherifySdk/models/skus_list.rb +276 -0
  1330. data/lib/VoucherifySdk/models/skus_list_for_product.rb +276 -0
  1331. data/lib/VoucherifySdk/models/stackable_validate_redeem_base.rb +299 -0
  1332. data/lib/VoucherifySdk/models/stackable_validate_redeem_base_redeemables_item.rb +108 -0
  1333. data/lib/VoucherifySdk/models/stacking_rules.rb +487 -0
  1334. data/lib/VoucherifySdk/models/validation_entity.rb +325 -0
  1335. data/lib/VoucherifySdk/models/validation_rule.rb +422 -0
  1336. data/lib/VoucherifySdk/models/validation_rule_assignment.rb +354 -0
  1337. data/lib/VoucherifySdk/models/validation_rule_assignments_list.rb +276 -0
  1338. data/lib/VoucherifySdk/models/validation_rule_base.rb +314 -0
  1339. data/lib/VoucherifySdk/models/validation_rule_base_applicable_to.rb +239 -0
  1340. data/lib/VoucherifySdk/models/validation_rule_base_error.rb +216 -0
  1341. data/lib/VoucherifySdk/models/validation_rules_assignments_list.rb +341 -0
  1342. data/lib/VoucherifySdk/models/validation_rules_assignments_list_response_body.rb +283 -0
  1343. data/lib/VoucherifySdk/models/validation_rules_create_request_body.rb +328 -0
  1344. data/lib/VoucherifySdk/models/validation_rules_create_response_body.rb +423 -0
  1345. data/lib/VoucherifySdk/models/validation_rules_get_response_body.rb +423 -0
  1346. data/lib/VoucherifySdk/models/validation_rules_list_response_body.rb +276 -0
  1347. data/lib/VoucherifySdk/models/validation_rules_update_request_body.rb +321 -0
  1348. data/lib/VoucherifySdk/models/validation_rules_update_response_body.rb +423 -0
  1349. data/lib/VoucherifySdk/models/validations_redeemable_applicable.rb +340 -0
  1350. data/lib/VoucherifySdk/models/validations_redeemable_applicable_result.rb +109 -0
  1351. data/lib/VoucherifySdk/models/validations_redeemable_inapplicable.rb +292 -0
  1352. data/lib/VoucherifySdk/models/validations_redeemable_inapplicable_result.rb +214 -0
  1353. data/lib/VoucherifySdk/models/validations_redeemable_skipped.rb +292 -0
  1354. data/lib/VoucherifySdk/models/validations_validate_all_response_body_redeemables_item.rb +106 -0
  1355. data/lib/VoucherifySdk/models/validations_validate_request_body.rb +316 -0
  1356. data/lib/VoucherifySdk/models/validations_validate_response_body.rb +294 -0
  1357. data/lib/VoucherifySdk/models/voucher.rb +540 -0
  1358. data/lib/VoucherifySdk/models/voucher_assets.rb +224 -0
  1359. data/lib/VoucherifySdk/models/voucher_gift.rb +270 -0
  1360. data/lib/VoucherifySdk/models/voucher_loyalty_card.rb +246 -0
  1361. data/lib/VoucherifySdk/models/voucher_publish.rb +238 -0
  1362. data/lib/VoucherifySdk/models/voucher_redemption.rb +268 -0
  1363. data/lib/VoucherifySdk/models/voucher_transaction.rb +379 -0
  1364. data/lib/VoucherifySdk/models/voucher_transaction_details.rb +323 -0
  1365. data/lib/VoucherifySdk/models/voucher_transaction_details_balance.rb +365 -0
  1366. data/lib/VoucherifySdk/models/voucher_transaction_details_balance_related_object.rb +280 -0
  1367. data/lib/VoucherifySdk/models/voucher_transaction_details_custom_event.rb +240 -0
  1368. data/lib/VoucherifySdk/models/voucher_transaction_details_earning_rule.rb +239 -0
  1369. data/lib/VoucherifySdk/models/voucher_transaction_details_earning_rule_source.rb +223 -0
  1370. data/lib/VoucherifySdk/models/voucher_transaction_details_event.rb +240 -0
  1371. data/lib/VoucherifySdk/models/voucher_transaction_details_event_schema.rb +240 -0
  1372. data/lib/VoucherifySdk/models/voucher_transaction_details_loyalty_tier.rb +238 -0
  1373. data/lib/VoucherifySdk/models/voucher_transaction_details_order.rb +240 -0
  1374. data/lib/VoucherifySdk/models/voucher_transaction_details_redemption.rb +223 -0
  1375. data/lib/VoucherifySdk/models/voucher_transaction_details_reward.rb +240 -0
  1376. data/lib/VoucherifySdk/models/voucher_transaction_details_rollback.rb +223 -0
  1377. data/lib/VoucherifySdk/models/voucher_transaction_details_segment.rb +238 -0
  1378. data/lib/VoucherifySdk/models/voucher_transactions_export.rb +407 -0
  1379. data/lib/VoucherifySdk/models/voucher_transactions_export_filter_conditions.rb +222 -0
  1380. data/lib/VoucherifySdk/models/voucher_transactions_export_filter_conditions_voucher_id.rb +222 -0
  1381. data/lib/VoucherifySdk/models/voucher_transactions_export_filter_conditions_voucher_id_conditions.rb +252 -0
  1382. data/lib/VoucherifySdk/models/voucher_transactions_export_parameters.rb +262 -0
  1383. data/lib/VoucherifySdk/models/voucher_transactions_export_result.rb +223 -0
  1384. data/lib/VoucherifySdk/models/voucher_transactions_filters.rb +278 -0
  1385. data/lib/VoucherifySdk/models/voucher_validity_timeframe.rb +226 -0
  1386. data/lib/VoucherifySdk/models/vouchers_balance_update_request_body.rb +243 -0
  1387. data/lib/VoucherifySdk/models/vouchers_balance_update_response_body.rb +381 -0
  1388. data/lib/VoucherifySdk/models/vouchers_balance_update_response_body_related_object.rb +274 -0
  1389. data/lib/VoucherifySdk/models/vouchers_disable_response_body.rb +547 -0
  1390. data/lib/VoucherifySdk/models/vouchers_enable_response_body.rb +547 -0
  1391. data/lib/VoucherifySdk/models/vouchers_get_response_body.rb +547 -0
  1392. data/lib/VoucherifySdk/models/vouchers_import_csv_create_response_body.rb +230 -0
  1393. data/lib/VoucherifySdk/models/vouchers_redemption_get_response_body.rb +323 -0
  1394. data/lib/VoucherifySdk/models/vouchers_redemption_get_response_body_redemption_entries_item.rb +105 -0
  1395. data/lib/VoucherifySdk/models/vouchers_transactions_export_create_request_body.rb +215 -0
  1396. data/lib/VoucherifySdk/models/vouchers_transactions_export_create_response_body.rb +414 -0
  1397. data/lib/VoucherifySdk/models/vouchers_transactions_list_response_body.rb +276 -0
  1398. data/lib/VoucherifySdk/version.rb +15 -0
  1399. data/lib/VoucherifySdk.rb +716 -0
  1400. metadata +1430 -72
  1401. data/.gitignore +0 -43
  1402. data/.rspec +0 -2
  1403. data/.travis.yml +0 -9
  1404. data/bin/console +0 -14
  1405. data/bin/setup +0 -8
  1406. data/examples/customers.rb +0 -32
  1407. data/examples/utils.rb +0 -71
  1408. data/examples/vouchers.rb +0 -25
  1409. data/lib/voucherify/client.rb +0 -154
  1410. data/lib/voucherify/service/async_actions.rb +0 -22
  1411. data/lib/voucherify/service/campaigns.rb +0 -39
  1412. data/lib/voucherify/service/consents.rb +0 -17
  1413. data/lib/voucherify/service/customers.rb +0 -37
  1414. data/lib/voucherify/service/distributions.rb +0 -45
  1415. data/lib/voucherify/service/events.rb +0 -24
  1416. data/lib/voucherify/service/loyalties.rb +0 -133
  1417. data/lib/voucherify/service/orders.rb +0 -29
  1418. data/lib/voucherify/service/products.rb +0 -53
  1419. data/lib/voucherify/service/promotions.rb +0 -58
  1420. data/lib/voucherify/service/redemptions.rb +0 -42
  1421. data/lib/voucherify/service/rewards.rb +0 -63
  1422. data/lib/voucherify/service/segments.rb +0 -25
  1423. data/lib/voucherify/service/validation_rules.rb +0 -69
  1424. data/lib/voucherify/service/validations.rb +0 -26
  1425. data/lib/voucherify/service/vouchers.rb +0 -54
  1426. data/lib/voucherify/utils.rb +0 -101
  1427. data/lib/voucherify/version.rb +0 -3
  1428. data/lib/voucherify.rb +0 -23
  1429. data/voucherify.gemspec +0 -28
@@ -0,0 +1,1002 @@
1
+ =begin
2
+ #Voucherify API
3
+
4
+ #Voucherify promotion engine REST API. Please see https://docs.voucherify.io/docs for more details.
5
+
6
+ The version of the OpenAPI document: v2018-08-01
7
+ Contact: support@voucherify.io
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 7.0.1
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module VoucherifySdk
16
+ class ProductsApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Create Product
23
+ # Creates a product object. 📘 Upsert Mode If you pass an id or a source_id that already exists in the product database, Voucherify will return a related product object with updated fields.
24
+ # @param [Hash] opts the optional parameters
25
+ # @option opts [ProductsCreateRequestBody] :products_create_request_body Specify the product parameters.
26
+ # @return [ProductsCreateResponseBody]
27
+ def create_product(opts = {})
28
+ data, _status_code, _headers = create_product_with_http_info(opts)
29
+ data
30
+ end
31
+
32
+ # Create Product
33
+ # Creates a product object. 📘 Upsert Mode If you pass an id or a source_id that already exists in the product database, Voucherify will return a related product object with updated fields.
34
+ # @param [Hash] opts the optional parameters
35
+ # @option opts [ProductsCreateRequestBody] :products_create_request_body Specify the product parameters.
36
+ # @return [Array<(ProductsCreateResponseBody, Integer, Hash)>] ProductsCreateResponseBody data, response status code and response headers
37
+ private def create_product_with_http_info(opts = {})
38
+ if @api_client.config.debugging
39
+ @api_client.config.logger.debug 'Calling API: ProductsApi.create_product ...'
40
+ end
41
+ # resource path
42
+ local_var_path = '/v1/products'
43
+
44
+ # query parameters
45
+ query_params = opts[:query_params] || {}
46
+
47
+ # header parameters
48
+ header_params = opts[:header_params] || {}
49
+ # HTTP header 'Accept' (if needed)
50
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
51
+ # HTTP header 'Content-Type'
52
+ content_type = @api_client.select_header_content_type(['application/json'])
53
+ if !content_type.nil?
54
+ header_params['Content-Type'] = content_type
55
+ end
56
+
57
+ # form parameters
58
+ form_params = opts[:form_params] || {}
59
+
60
+ # http body (model)
61
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'products_create_request_body'])
62
+
63
+ # return_type
64
+ return_type = opts[:debug_return_type] || 'ProductsCreateResponseBody'
65
+
66
+ # auth_names
67
+ auth_names = opts[:debug_auth_names] || ['X-App-Id', 'X-App-Token']
68
+
69
+ new_options = opts.merge(
70
+ :operation => :"ProductsApi.create_product",
71
+ :header_params => header_params,
72
+ :query_params => query_params,
73
+ :form_params => form_params,
74
+ :body => post_body,
75
+ :auth_names => auth_names,
76
+ :return_type => return_type
77
+ )
78
+
79
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
80
+ if @api_client.config.debugging
81
+ @api_client.config.logger.debug "API called: ProductsApi#create_product\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
82
+ end
83
+ return data, status_code, headers
84
+ end
85
+
86
+ # Create SKU
87
+ # This method adds product variants to a created product. 📘 Upsert Mode If you pass an id or a source_id that already exists in the sku database, Voucherify will return a related sku object with updated fields.
88
+ # @param product_id [String] A Voucherify product ID or product source ID.
89
+ # @param [Hash] opts the optional parameters
90
+ # @option opts [ProductsSkusCreateRequestBody] :products_skus_create_request_body Specify the SKU parameters to be created.
91
+ # @return [ProductsSkusCreateResponseBody]
92
+ def create_sku(product_id, opts = {})
93
+ data, _status_code, _headers = create_sku_with_http_info(product_id, opts)
94
+ data
95
+ end
96
+
97
+ # Create SKU
98
+ # This method adds product variants to a created product. 📘 Upsert Mode If you pass an id or a source_id that already exists in the sku database, Voucherify will return a related sku object with updated fields.
99
+ # @param product_id [String] A Voucherify product ID or product source ID.
100
+ # @param [Hash] opts the optional parameters
101
+ # @option opts [ProductsSkusCreateRequestBody] :products_skus_create_request_body Specify the SKU parameters to be created.
102
+ # @return [Array<(ProductsSkusCreateResponseBody, Integer, Hash)>] ProductsSkusCreateResponseBody data, response status code and response headers
103
+ private def create_sku_with_http_info(product_id, opts = {})
104
+ if @api_client.config.debugging
105
+ @api_client.config.logger.debug 'Calling API: ProductsApi.create_sku ...'
106
+ end
107
+ # verify the required parameter 'product_id' is set
108
+ if @api_client.config.client_side_validation && product_id.nil?
109
+ fail ArgumentError, "Missing the required parameter 'product_id' when calling ProductsApi.create_sku"
110
+ end
111
+ # resource path
112
+ local_var_path = '/v1/products/{productId}/skus'.sub('{' + 'productId' + '}', CGI.escape(product_id.to_s))
113
+
114
+ # query parameters
115
+ query_params = opts[:query_params] || {}
116
+
117
+ # header parameters
118
+ header_params = opts[:header_params] || {}
119
+ # HTTP header 'Accept' (if needed)
120
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
121
+ # HTTP header 'Content-Type'
122
+ content_type = @api_client.select_header_content_type(['application/json'])
123
+ if !content_type.nil?
124
+ header_params['Content-Type'] = content_type
125
+ end
126
+
127
+ # form parameters
128
+ form_params = opts[:form_params] || {}
129
+
130
+ # http body (model)
131
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'products_skus_create_request_body'])
132
+
133
+ # return_type
134
+ return_type = opts[:debug_return_type] || 'ProductsSkusCreateResponseBody'
135
+
136
+ # auth_names
137
+ auth_names = opts[:debug_auth_names] || ['X-App-Id', 'X-App-Token']
138
+
139
+ new_options = opts.merge(
140
+ :operation => :"ProductsApi.create_sku",
141
+ :header_params => header_params,
142
+ :query_params => query_params,
143
+ :form_params => form_params,
144
+ :body => post_body,
145
+ :auth_names => auth_names,
146
+ :return_type => return_type
147
+ )
148
+
149
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
150
+ if @api_client.config.debugging
151
+ @api_client.config.logger.debug "API called: ProductsApi#create_sku\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
152
+ end
153
+ return data, status_code, headers
154
+ end
155
+
156
+ # Delete Product
157
+ # This method deletes a product.
158
+ # @param product_id [String] A Voucherify product ID or source ID.
159
+ # @param [Hash] opts the optional parameters
160
+ # @option opts [Boolean] :force If this flag is set to true, the product will be removed permanently. Going forward, the user will be able to create another product with exactly the same source_id.
161
+ # @return [nil]
162
+ def delete_product(product_id, opts = {})
163
+ delete_product_with_http_info(product_id, opts)
164
+ nil
165
+ end
166
+
167
+ # Delete Product
168
+ # This method deletes a product.
169
+ # @param product_id [String] A Voucherify product ID or source ID.
170
+ # @param [Hash] opts the optional parameters
171
+ # @option opts [Boolean] :force If this flag is set to true, the product will be removed permanently. Going forward, the user will be able to create another product with exactly the same source_id.
172
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
173
+ private def delete_product_with_http_info(product_id, opts = {})
174
+ if @api_client.config.debugging
175
+ @api_client.config.logger.debug 'Calling API: ProductsApi.delete_product ...'
176
+ end
177
+ # verify the required parameter 'product_id' is set
178
+ if @api_client.config.client_side_validation && product_id.nil?
179
+ fail ArgumentError, "Missing the required parameter 'product_id' when calling ProductsApi.delete_product"
180
+ end
181
+ # resource path
182
+ local_var_path = '/v1/products/{productId}'.sub('{' + 'productId' + '}', CGI.escape(product_id.to_s))
183
+
184
+ # query parameters
185
+ query_params = opts[:query_params] || {}
186
+ query_params[:'force'] = opts[:'force'] if !opts[:'force'].nil?
187
+
188
+ # header parameters
189
+ header_params = opts[:header_params] || {}
190
+
191
+ # form parameters
192
+ form_params = opts[:form_params] || {}
193
+
194
+ # http body (model)
195
+ post_body = opts[:debug_body]
196
+
197
+ # return_type
198
+ return_type = opts[:debug_return_type]
199
+
200
+ # auth_names
201
+ auth_names = opts[:debug_auth_names] || ['X-App-Id', 'X-App-Token']
202
+
203
+ new_options = opts.merge(
204
+ :operation => :"ProductsApi.delete_product",
205
+ :header_params => header_params,
206
+ :query_params => query_params,
207
+ :form_params => form_params,
208
+ :body => post_body,
209
+ :auth_names => auth_names,
210
+ :return_type => return_type
211
+ )
212
+
213
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
214
+ if @api_client.config.debugging
215
+ @api_client.config.logger.debug "API called: ProductsApi#delete_product\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
216
+ end
217
+ return data, status_code, headers
218
+ end
219
+
220
+ # Delete SKU
221
+ # This method deletes a product SKU.
222
+ # @param product_id [String] A unique Voucherify product ID or product source ID.
223
+ # @param sku_id [String] A Voucherify SKU ID or SKU source ID.
224
+ # @param [Hash] opts the optional parameters
225
+ # @option opts [Boolean] :force If this flag is set to true, the SKU will be removed permanently. Going forward, the user will be able to create another SKU with exactly the same source_id.
226
+ # @return [nil]
227
+ def delete_sku(product_id, sku_id, opts = {})
228
+ delete_sku_with_http_info(product_id, sku_id, opts)
229
+ nil
230
+ end
231
+
232
+ # Delete SKU
233
+ # This method deletes a product SKU.
234
+ # @param product_id [String] A unique Voucherify product ID or product source ID.
235
+ # @param sku_id [String] A Voucherify SKU ID or SKU source ID.
236
+ # @param [Hash] opts the optional parameters
237
+ # @option opts [Boolean] :force If this flag is set to true, the SKU will be removed permanently. Going forward, the user will be able to create another SKU with exactly the same source_id.
238
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
239
+ private def delete_sku_with_http_info(product_id, sku_id, opts = {})
240
+ if @api_client.config.debugging
241
+ @api_client.config.logger.debug 'Calling API: ProductsApi.delete_sku ...'
242
+ end
243
+ # verify the required parameter 'product_id' is set
244
+ if @api_client.config.client_side_validation && product_id.nil?
245
+ fail ArgumentError, "Missing the required parameter 'product_id' when calling ProductsApi.delete_sku"
246
+ end
247
+ # verify the required parameter 'sku_id' is set
248
+ if @api_client.config.client_side_validation && sku_id.nil?
249
+ fail ArgumentError, "Missing the required parameter 'sku_id' when calling ProductsApi.delete_sku"
250
+ end
251
+ # resource path
252
+ local_var_path = '/v1/products/{productId}/skus/{skuId}'.sub('{' + 'productId' + '}', CGI.escape(product_id.to_s)).sub('{' + 'skuId' + '}', CGI.escape(sku_id.to_s))
253
+
254
+ # query parameters
255
+ query_params = opts[:query_params] || {}
256
+ query_params[:'force'] = opts[:'force'] if !opts[:'force'].nil?
257
+
258
+ # header parameters
259
+ header_params = opts[:header_params] || {}
260
+
261
+ # form parameters
262
+ form_params = opts[:form_params] || {}
263
+
264
+ # http body (model)
265
+ post_body = opts[:debug_body]
266
+
267
+ # return_type
268
+ return_type = opts[:debug_return_type]
269
+
270
+ # auth_names
271
+ auth_names = opts[:debug_auth_names] || ['X-App-Id', 'X-App-Token']
272
+
273
+ new_options = opts.merge(
274
+ :operation => :"ProductsApi.delete_sku",
275
+ :header_params => header_params,
276
+ :query_params => query_params,
277
+ :form_params => form_params,
278
+ :body => post_body,
279
+ :auth_names => auth_names,
280
+ :return_type => return_type
281
+ )
282
+
283
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
284
+ if @api_client.config.debugging
285
+ @api_client.config.logger.debug "API called: ProductsApi#delete_sku\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
286
+ end
287
+ return data, status_code, headers
288
+ end
289
+
290
+ # Get Product
291
+ # Retrieve product details.
292
+ # @param product_id [String] A Voucherify product ID or source ID.
293
+ # @param [Hash] opts the optional parameters
294
+ # @return [ProductsGetResponseBody]
295
+ def get_product(product_id, opts = {})
296
+ data, _status_code, _headers = get_product_with_http_info(product_id, opts)
297
+ data
298
+ end
299
+
300
+ # Get Product
301
+ # Retrieve product details.
302
+ # @param product_id [String] A Voucherify product ID or source ID.
303
+ # @param [Hash] opts the optional parameters
304
+ # @return [Array<(ProductsGetResponseBody, Integer, Hash)>] ProductsGetResponseBody data, response status code and response headers
305
+ private def get_product_with_http_info(product_id, opts = {})
306
+ if @api_client.config.debugging
307
+ @api_client.config.logger.debug 'Calling API: ProductsApi.get_product ...'
308
+ end
309
+ # verify the required parameter 'product_id' is set
310
+ if @api_client.config.client_side_validation && product_id.nil?
311
+ fail ArgumentError, "Missing the required parameter 'product_id' when calling ProductsApi.get_product"
312
+ end
313
+ # resource path
314
+ local_var_path = '/v1/products/{productId}'.sub('{' + 'productId' + '}', CGI.escape(product_id.to_s))
315
+
316
+ # query parameters
317
+ query_params = opts[:query_params] || {}
318
+
319
+ # header parameters
320
+ header_params = opts[:header_params] || {}
321
+ # HTTP header 'Accept' (if needed)
322
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
323
+
324
+ # form parameters
325
+ form_params = opts[:form_params] || {}
326
+
327
+ # http body (model)
328
+ post_body = opts[:debug_body]
329
+
330
+ # return_type
331
+ return_type = opts[:debug_return_type] || 'ProductsGetResponseBody'
332
+
333
+ # auth_names
334
+ auth_names = opts[:debug_auth_names] || ['X-App-Id', 'X-App-Token']
335
+
336
+ new_options = opts.merge(
337
+ :operation => :"ProductsApi.get_product",
338
+ :header_params => header_params,
339
+ :query_params => query_params,
340
+ :form_params => form_params,
341
+ :body => post_body,
342
+ :auth_names => auth_names,
343
+ :return_type => return_type
344
+ )
345
+
346
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
347
+ if @api_client.config.debugging
348
+ @api_client.config.logger.debug "API called: ProductsApi#get_product\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
349
+ end
350
+ return data, status_code, headers
351
+ end
352
+
353
+ # Get SKU
354
+ # Retrieve details of a SKU.
355
+ # @param sku_id [String] A Voucherify SKU identifier or SKU source ID.
356
+ # @param [Hash] opts the optional parameters
357
+ # @return [SkusGetResponseBody]
358
+ def get_sku(sku_id, opts = {})
359
+ data, _status_code, _headers = get_sku_with_http_info(sku_id, opts)
360
+ data
361
+ end
362
+
363
+ # Get SKU
364
+ # Retrieve details of a SKU.
365
+ # @param sku_id [String] A Voucherify SKU identifier or SKU source ID.
366
+ # @param [Hash] opts the optional parameters
367
+ # @return [Array<(SkusGetResponseBody, Integer, Hash)>] SkusGetResponseBody data, response status code and response headers
368
+ private def get_sku_with_http_info(sku_id, opts = {})
369
+ if @api_client.config.debugging
370
+ @api_client.config.logger.debug 'Calling API: ProductsApi.get_sku ...'
371
+ end
372
+ # verify the required parameter 'sku_id' is set
373
+ if @api_client.config.client_side_validation && sku_id.nil?
374
+ fail ArgumentError, "Missing the required parameter 'sku_id' when calling ProductsApi.get_sku"
375
+ end
376
+ # resource path
377
+ local_var_path = '/v1/skus/{skuId}'.sub('{' + 'skuId' + '}', CGI.escape(sku_id.to_s))
378
+
379
+ # query parameters
380
+ query_params = opts[:query_params] || {}
381
+
382
+ # header parameters
383
+ header_params = opts[:header_params] || {}
384
+ # HTTP header 'Accept' (if needed)
385
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
386
+
387
+ # form parameters
388
+ form_params = opts[:form_params] || {}
389
+
390
+ # http body (model)
391
+ post_body = opts[:debug_body]
392
+
393
+ # return_type
394
+ return_type = opts[:debug_return_type] || 'SkusGetResponseBody'
395
+
396
+ # auth_names
397
+ auth_names = opts[:debug_auth_names] || ['X-App-Id', 'X-App-Token']
398
+
399
+ new_options = opts.merge(
400
+ :operation => :"ProductsApi.get_sku",
401
+ :header_params => header_params,
402
+ :query_params => query_params,
403
+ :form_params => form_params,
404
+ :body => post_body,
405
+ :auth_names => auth_names,
406
+ :return_type => return_type
407
+ )
408
+
409
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
410
+ if @api_client.config.debugging
411
+ @api_client.config.logger.debug "API called: ProductsApi#get_sku\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
412
+ end
413
+ return data, status_code, headers
414
+ end
415
+
416
+ # Import Products using CSV
417
+ # Import products into the repository using a CSV file. 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.
418
+ # @param file [File] File path.
419
+ # @param [Hash] opts the optional parameters
420
+ # @return [ProductsImportCsvCreateResponseBody]
421
+ def import_products_using_csv(file, opts = {})
422
+ data, _status_code, _headers = import_products_using_csv_with_http_info(file, opts)
423
+ data
424
+ end
425
+
426
+ # Import Products using CSV
427
+ # Import products into the repository using a CSV file. 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.
428
+ # @param file [File] File path.
429
+ # @param [Hash] opts the optional parameters
430
+ # @return [Array<(ProductsImportCsvCreateResponseBody, Integer, Hash)>] ProductsImportCsvCreateResponseBody data, response status code and response headers
431
+ private def import_products_using_csv_with_http_info(file, opts = {})
432
+ if @api_client.config.debugging
433
+ @api_client.config.logger.debug 'Calling API: ProductsApi.import_products_using_csv ...'
434
+ end
435
+ # verify the required parameter 'file' is set
436
+ if @api_client.config.client_side_validation && file.nil?
437
+ fail ArgumentError, "Missing the required parameter 'file' when calling ProductsApi.import_products_using_csv"
438
+ end
439
+ # resource path
440
+ local_var_path = '/v1/products/importCSV'
441
+
442
+ # query parameters
443
+ query_params = opts[:query_params] || {}
444
+
445
+ # header parameters
446
+ header_params = opts[:header_params] || {}
447
+ # HTTP header 'Accept' (if needed)
448
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
449
+ # HTTP header 'Content-Type'
450
+ content_type = @api_client.select_header_content_type(['multipart/form-data'])
451
+ if !content_type.nil?
452
+ header_params['Content-Type'] = content_type
453
+ end
454
+
455
+ # form parameters
456
+ form_params = opts[:form_params] || {}
457
+ form_params['file'] = file
458
+
459
+ # http body (model)
460
+ post_body = opts[:debug_body]
461
+
462
+ # return_type
463
+ return_type = opts[:debug_return_type] || 'ProductsImportCsvCreateResponseBody'
464
+
465
+ # auth_names
466
+ auth_names = opts[:debug_auth_names] || ['X-App-Id', 'X-App-Token']
467
+
468
+ new_options = opts.merge(
469
+ :operation => :"ProductsApi.import_products_using_csv",
470
+ :header_params => header_params,
471
+ :query_params => query_params,
472
+ :form_params => form_params,
473
+ :body => post_body,
474
+ :auth_names => auth_names,
475
+ :return_type => return_type
476
+ )
477
+
478
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
479
+ if @api_client.config.debugging
480
+ @api_client.config.logger.debug "API called: ProductsApi#import_products_using_csv\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
481
+ end
482
+ return data, status_code, headers
483
+ end
484
+
485
+ # Import SKUs using CSV
486
+ # Import SKUs into the repository using a CSV file. The CSV file has to include headers in the first line. All properties which cannot be mapped to standard SKU fields will be added to the metadata object. You can find an example template [here](https://s3.amazonaws.com/helpscout.net/docs/assets/5902f1c12c7d3a057f88a36d/attachments/627b98d08c9b585083488a4c/Import_SKUS_template.csv). 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.
487
+ # @param file [File] File path.
488
+ # @param [Hash] opts the optional parameters
489
+ # @return [SkusImportCsvCreateResponseBody]
490
+ def import_skus_using_csv(file, opts = {})
491
+ data, _status_code, _headers = import_skus_using_csv_with_http_info(file, opts)
492
+ data
493
+ end
494
+
495
+ # Import SKUs using CSV
496
+ # Import SKUs into the repository using a CSV file. The CSV file has to include headers in the first line. All properties which cannot be mapped to standard SKU fields will be added to the metadata object. You can find an example template [here](https://s3.amazonaws.com/helpscout.net/docs/assets/5902f1c12c7d3a057f88a36d/attachments/627b98d08c9b585083488a4c/Import_SKUS_template.csv). 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.
497
+ # @param file [File] File path.
498
+ # @param [Hash] opts the optional parameters
499
+ # @return [Array<(SkusImportCsvCreateResponseBody, Integer, Hash)>] SkusImportCsvCreateResponseBody data, response status code and response headers
500
+ private def import_skus_using_csv_with_http_info(file, opts = {})
501
+ if @api_client.config.debugging
502
+ @api_client.config.logger.debug 'Calling API: ProductsApi.import_skus_using_csv ...'
503
+ end
504
+ # verify the required parameter 'file' is set
505
+ if @api_client.config.client_side_validation && file.nil?
506
+ fail ArgumentError, "Missing the required parameter 'file' when calling ProductsApi.import_skus_using_csv"
507
+ end
508
+ # resource path
509
+ local_var_path = '/v1/skus/importCSV'
510
+
511
+ # query parameters
512
+ query_params = opts[:query_params] || {}
513
+
514
+ # header parameters
515
+ header_params = opts[:header_params] || {}
516
+ # HTTP header 'Accept' (if needed)
517
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
518
+ # HTTP header 'Content-Type'
519
+ content_type = @api_client.select_header_content_type(['multipart/form-data'])
520
+ if !content_type.nil?
521
+ header_params['Content-Type'] = content_type
522
+ end
523
+
524
+ # form parameters
525
+ form_params = opts[:form_params] || {}
526
+ form_params['file'] = file
527
+
528
+ # http body (model)
529
+ post_body = opts[:debug_body]
530
+
531
+ # return_type
532
+ return_type = opts[:debug_return_type] || 'SkusImportCsvCreateResponseBody'
533
+
534
+ # auth_names
535
+ auth_names = opts[:debug_auth_names] || ['X-App-Id', 'X-App-Token']
536
+
537
+ new_options = opts.merge(
538
+ :operation => :"ProductsApi.import_skus_using_csv",
539
+ :header_params => header_params,
540
+ :query_params => query_params,
541
+ :form_params => form_params,
542
+ :body => post_body,
543
+ :auth_names => auth_names,
544
+ :return_type => return_type
545
+ )
546
+
547
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
548
+ if @api_client.config.debugging
549
+ @api_client.config.logger.debug "API called: ProductsApi#import_skus_using_csv\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
550
+ end
551
+ return data, status_code, headers
552
+ end
553
+
554
+ # List Products
555
+ # Retrieve a list of products.
556
+ # @param [Hash] opts the optional parameters
557
+ # @option opts [Integer] :limit A limit on the number of objects to be returned. Limit can range between 1 and 100 items.
558
+ # @option opts [Integer] :page Which page of results to return.
559
+ # @option opts [ParameterOrder] :order Sorts the results using one of the filtering options, where the dash - preceding a sorting option means sorting in a descending order.
560
+ # @option opts [Time] :start_date Timestamp representing the date and time which results must end on. Represented in ISO 8601 format.
561
+ # @option opts [Time] :end_date Timestamp representing the date and time which results must end on. Represented in ISO 8601 format.
562
+ # @return [ProductsListResponseBody]
563
+ def list_products(opts = {})
564
+ data, _status_code, _headers = list_products_with_http_info(opts)
565
+ data
566
+ end
567
+
568
+ # List Products
569
+ # Retrieve a list of products.
570
+ # @param [Hash] opts the optional parameters
571
+ # @option opts [Integer] :limit A limit on the number of objects to be returned. Limit can range between 1 and 100 items.
572
+ # @option opts [Integer] :page Which page of results to return.
573
+ # @option opts [ParameterOrder] :order Sorts the results using one of the filtering options, where the dash - preceding a sorting option means sorting in a descending order.
574
+ # @option opts [Time] :start_date Timestamp representing the date and time which results must end on. Represented in ISO 8601 format.
575
+ # @option opts [Time] :end_date Timestamp representing the date and time which results must end on. Represented in ISO 8601 format.
576
+ # @return [Array<(ProductsListResponseBody, Integer, Hash)>] ProductsListResponseBody data, response status code and response headers
577
+ private def list_products_with_http_info(opts = {})
578
+ if @api_client.config.debugging
579
+ @api_client.config.logger.debug 'Calling API: ProductsApi.list_products ...'
580
+ end
581
+ if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] > 100
582
+ fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling ProductsApi.list_products, must be smaller than or equal to 100.'
583
+ end
584
+
585
+ if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] < 1
586
+ fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling ProductsApi.list_products, must be greater than or equal to 1.'
587
+ end
588
+
589
+ if @api_client.config.client_side_validation && !opts[:'page'].nil? && opts[:'page'] > 100
590
+ fail ArgumentError, 'invalid value for "opts[:"page"]" when calling ProductsApi.list_products, must be smaller than or equal to 100.'
591
+ end
592
+
593
+ # resource path
594
+ local_var_path = '/v1/products'
595
+
596
+ # query parameters
597
+ query_params = opts[:query_params] || {}
598
+ query_params[:'limit'] = opts[:'limit'] if !opts[:'limit'].nil?
599
+ query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
600
+ query_params[:'order'] = opts[:'order'] if !opts[:'order'].nil?
601
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
602
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
603
+
604
+ # header parameters
605
+ header_params = opts[:header_params] || {}
606
+ # HTTP header 'Accept' (if needed)
607
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
608
+
609
+ # form parameters
610
+ form_params = opts[:form_params] || {}
611
+
612
+ # http body (model)
613
+ post_body = opts[:debug_body]
614
+
615
+ # return_type
616
+ return_type = opts[:debug_return_type] || 'ProductsListResponseBody'
617
+
618
+ # auth_names
619
+ auth_names = opts[:debug_auth_names] || ['X-App-Id', 'X-App-Token']
620
+
621
+ new_options = opts.merge(
622
+ :operation => :"ProductsApi.list_products",
623
+ :header_params => header_params,
624
+ :query_params => query_params,
625
+ :form_params => form_params,
626
+ :body => post_body,
627
+ :auth_names => auth_names,
628
+ :return_type => return_type
629
+ )
630
+
631
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
632
+ if @api_client.config.debugging
633
+ @api_client.config.logger.debug "API called: ProductsApi#list_products\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
634
+ end
635
+ return data, status_code, headers
636
+ end
637
+
638
+ # List SKUs in Product
639
+ # Retrieve all SKUs for a given product.
640
+ # @param product_id [String] A Voucherify product ID or product source ID.
641
+ # @param [Hash] opts the optional parameters
642
+ # @option opts [Integer] :limit A limit on the number of objects to be returned. Limit can range between 1 and 100 items.
643
+ # @option opts [Integer] :page Which page of results to return.
644
+ # @option opts [ParameterOrder] :order Sorts the results using one of the filtering options, where the dash - preceding a sorting option means sorting in a descending order.
645
+ # @option opts [Time] :start_date Timestamp representing the date and time which results must end on. Represented in ISO 8601 format.
646
+ # @option opts [Time] :end_date Timestamp representing the date and time which results must end on. Represented in ISO 8601 format.
647
+ # @return [ProductsSkusListResponseBody]
648
+ def list_skus_in_product(product_id, opts = {})
649
+ data, _status_code, _headers = list_skus_in_product_with_http_info(product_id, opts)
650
+ data
651
+ end
652
+
653
+ # List SKUs in Product
654
+ # Retrieve all SKUs for a given product.
655
+ # @param product_id [String] A Voucherify product ID or product source ID.
656
+ # @param [Hash] opts the optional parameters
657
+ # @option opts [Integer] :limit A limit on the number of objects to be returned. Limit can range between 1 and 100 items.
658
+ # @option opts [Integer] :page Which page of results to return.
659
+ # @option opts [ParameterOrder] :order Sorts the results using one of the filtering options, where the dash - preceding a sorting option means sorting in a descending order.
660
+ # @option opts [Time] :start_date Timestamp representing the date and time which results must end on. Represented in ISO 8601 format.
661
+ # @option opts [Time] :end_date Timestamp representing the date and time which results must end on. Represented in ISO 8601 format.
662
+ # @return [Array<(ProductsSkusListResponseBody, Integer, Hash)>] ProductsSkusListResponseBody data, response status code and response headers
663
+ private def list_skus_in_product_with_http_info(product_id, opts = {})
664
+ if @api_client.config.debugging
665
+ @api_client.config.logger.debug 'Calling API: ProductsApi.list_skus_in_product ...'
666
+ end
667
+ # verify the required parameter 'product_id' is set
668
+ if @api_client.config.client_side_validation && product_id.nil?
669
+ fail ArgumentError, "Missing the required parameter 'product_id' when calling ProductsApi.list_skus_in_product"
670
+ end
671
+ if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] > 100
672
+ fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling ProductsApi.list_skus_in_product, must be smaller than or equal to 100.'
673
+ end
674
+
675
+ if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] < 1
676
+ fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling ProductsApi.list_skus_in_product, must be greater than or equal to 1.'
677
+ end
678
+
679
+ if @api_client.config.client_side_validation && !opts[:'page'].nil? && opts[:'page'] > 100
680
+ fail ArgumentError, 'invalid value for "opts[:"page"]" when calling ProductsApi.list_skus_in_product, must be smaller than or equal to 100.'
681
+ end
682
+
683
+ # resource path
684
+ local_var_path = '/v1/products/{productId}/skus'.sub('{' + 'productId' + '}', CGI.escape(product_id.to_s))
685
+
686
+ # query parameters
687
+ query_params = opts[:query_params] || {}
688
+ query_params[:'limit'] = opts[:'limit'] if !opts[:'limit'].nil?
689
+ query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
690
+ query_params[:'order'] = opts[:'order'] if !opts[:'order'].nil?
691
+ query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
692
+ query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
693
+
694
+ # header parameters
695
+ header_params = opts[:header_params] || {}
696
+ # HTTP header 'Accept' (if needed)
697
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
698
+
699
+ # form parameters
700
+ form_params = opts[:form_params] || {}
701
+
702
+ # http body (model)
703
+ post_body = opts[:debug_body]
704
+
705
+ # return_type
706
+ return_type = opts[:debug_return_type] || 'ProductsSkusListResponseBody'
707
+
708
+ # auth_names
709
+ auth_names = opts[:debug_auth_names] || ['X-App-Id', 'X-App-Token']
710
+
711
+ new_options = opts.merge(
712
+ :operation => :"ProductsApi.list_skus_in_product",
713
+ :header_params => header_params,
714
+ :query_params => query_params,
715
+ :form_params => form_params,
716
+ :body => post_body,
717
+ :auth_names => auth_names,
718
+ :return_type => return_type
719
+ )
720
+
721
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
722
+ if @api_client.config.debugging
723
+ @api_client.config.logger.debug "API called: ProductsApi#list_skus_in_product\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
724
+ end
725
+ return data, status_code, headers
726
+ end
727
+
728
+ # Update Product
729
+ # Updates the specified product by setting the values of the parameters passed in the request body. Any parameters not provided in the payload will be left unchanged.
730
+ # @param product_id [String] A Voucherify product ID or source ID.
731
+ # @param [Hash] opts the optional parameters
732
+ # @option opts [ProductsUpdateRequestBody] :products_update_request_body Specify the parameters of the product that are to be updated.
733
+ # @return [ProductsUpdateResponseBody]
734
+ def update_product(product_id, opts = {})
735
+ data, _status_code, _headers = update_product_with_http_info(product_id, opts)
736
+ data
737
+ end
738
+
739
+ # Update Product
740
+ # Updates the specified product by setting the values of the parameters passed in the request body. Any parameters not provided in the payload will be left unchanged.
741
+ # @param product_id [String] A Voucherify product ID or source ID.
742
+ # @param [Hash] opts the optional parameters
743
+ # @option opts [ProductsUpdateRequestBody] :products_update_request_body Specify the parameters of the product that are to be updated.
744
+ # @return [Array<(ProductsUpdateResponseBody, Integer, Hash)>] ProductsUpdateResponseBody data, response status code and response headers
745
+ private def update_product_with_http_info(product_id, opts = {})
746
+ if @api_client.config.debugging
747
+ @api_client.config.logger.debug 'Calling API: ProductsApi.update_product ...'
748
+ end
749
+ # verify the required parameter 'product_id' is set
750
+ if @api_client.config.client_side_validation && product_id.nil?
751
+ fail ArgumentError, "Missing the required parameter 'product_id' when calling ProductsApi.update_product"
752
+ end
753
+ # resource path
754
+ local_var_path = '/v1/products/{productId}'.sub('{' + 'productId' + '}', CGI.escape(product_id.to_s))
755
+
756
+ # query parameters
757
+ query_params = opts[:query_params] || {}
758
+
759
+ # header parameters
760
+ header_params = opts[:header_params] || {}
761
+ # HTTP header 'Accept' (if needed)
762
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
763
+ # HTTP header 'Content-Type'
764
+ content_type = @api_client.select_header_content_type(['application/json'])
765
+ if !content_type.nil?
766
+ header_params['Content-Type'] = content_type
767
+ end
768
+
769
+ # form parameters
770
+ form_params = opts[:form_params] || {}
771
+
772
+ # http body (model)
773
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'products_update_request_body'])
774
+
775
+ # return_type
776
+ return_type = opts[:debug_return_type] || 'ProductsUpdateResponseBody'
777
+
778
+ # auth_names
779
+ auth_names = opts[:debug_auth_names] || ['X-App-Id', 'X-App-Token']
780
+
781
+ new_options = opts.merge(
782
+ :operation => :"ProductsApi.update_product",
783
+ :header_params => header_params,
784
+ :query_params => query_params,
785
+ :form_params => form_params,
786
+ :body => post_body,
787
+ :auth_names => auth_names,
788
+ :return_type => return_type
789
+ )
790
+
791
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
792
+ if @api_client.config.debugging
793
+ @api_client.config.logger.debug "API called: ProductsApi#update_product\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
794
+ end
795
+ return data, status_code, headers
796
+ end
797
+
798
+ # Update Products in bulk
799
+ # Update several products in one asynchronous operation. In one request, it is possible to update a maximum of **100** records. In the response body, you get a unique async action identifier. If a requested product object is not found, then an **upsert** occurs. This is reflected in the Get Async Action endpoint as follows: 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.
800
+ # @param [Hash] opts the optional parameters
801
+ # @option opts [Array<ProductsUpdateInBulkRequestBody>] :products_update_in_bulk_request_body Create an array of product objects, each with the parameters which you want to update.
802
+ # @return [ProductsUpdateInBulkResponseBody]
803
+ def update_products_in_bulk(opts = {})
804
+ data, _status_code, _headers = update_products_in_bulk_with_http_info(opts)
805
+ data
806
+ end
807
+
808
+ # Update Products in bulk
809
+ # Update several products in one asynchronous operation. In one request, it is possible to update a maximum of **100** records. In the response body, you get a unique async action identifier. If a requested product object is not found, then an **upsert** occurs. This is reflected in the Get Async Action endpoint as follows: 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.
810
+ # @param [Hash] opts the optional parameters
811
+ # @option opts [Array<ProductsUpdateInBulkRequestBody>] :products_update_in_bulk_request_body Create an array of product objects, each with the parameters which you want to update.
812
+ # @return [Array<(ProductsUpdateInBulkResponseBody, Integer, Hash)>] ProductsUpdateInBulkResponseBody data, response status code and response headers
813
+ private def update_products_in_bulk_with_http_info(opts = {})
814
+ if @api_client.config.debugging
815
+ @api_client.config.logger.debug 'Calling API: ProductsApi.update_products_in_bulk ...'
816
+ end
817
+ # resource path
818
+ local_var_path = '/v1/products/bulk/async'
819
+
820
+ # query parameters
821
+ query_params = opts[:query_params] || {}
822
+
823
+ # header parameters
824
+ header_params = opts[:header_params] || {}
825
+ # HTTP header 'Accept' (if needed)
826
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
827
+ # HTTP header 'Content-Type'
828
+ content_type = @api_client.select_header_content_type(['application/json'])
829
+ if !content_type.nil?
830
+ header_params['Content-Type'] = content_type
831
+ end
832
+
833
+ # form parameters
834
+ form_params = opts[:form_params] || {}
835
+
836
+ # http body (model)
837
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'products_update_in_bulk_request_body'])
838
+
839
+ # return_type
840
+ return_type = opts[:debug_return_type] || 'ProductsUpdateInBulkResponseBody'
841
+
842
+ # auth_names
843
+ auth_names = opts[:debug_auth_names] || ['X-App-Id', 'X-App-Token']
844
+
845
+ new_options = opts.merge(
846
+ :operation => :"ProductsApi.update_products_in_bulk",
847
+ :header_params => header_params,
848
+ :query_params => query_params,
849
+ :form_params => form_params,
850
+ :body => post_body,
851
+ :auth_names => auth_names,
852
+ :return_type => return_type
853
+ )
854
+
855
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
856
+ if @api_client.config.debugging
857
+ @api_client.config.logger.debug "API called: ProductsApi#update_products_in_bulk\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
858
+ end
859
+ return data, status_code, headers
860
+ end
861
+
862
+ # Update Products' Metadata in bulk
863
+ # Update several product metadata properties in one asynchronous operation. In one request, it is possible to update a maximum of **100** records. In the response body, you get a unique async action identifier. If a requested product object is not found, then an **upsert** occurs. This is reflected in the Get Async Action endpoint as follows: 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.
864
+ # @param [Hash] opts the optional parameters
865
+ # @option opts [ProductsMetadataUpdateInBulkRequestBody] :products_metadata_update_in_bulk_request_body Specify the list of product source IDs and the metadata key value pairs to be udpated for these products.
866
+ # @return [ProductsMetadataUpdateInBulkResponseBody]
867
+ def update_products_metadata_in_bulk(opts = {})
868
+ data, _status_code, _headers = update_products_metadata_in_bulk_with_http_info(opts)
869
+ data
870
+ end
871
+
872
+ # Update Products&#39; Metadata in bulk
873
+ # Update several product metadata properties in one asynchronous operation. In one request, it is possible to update a maximum of **100** records. In the response body, you get a unique async action identifier. If a requested product object is not found, then an **upsert** occurs. This is reflected in the Get Async Action endpoint as follows: 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.
874
+ # @param [Hash] opts the optional parameters
875
+ # @option opts [ProductsMetadataUpdateInBulkRequestBody] :products_metadata_update_in_bulk_request_body Specify the list of product source IDs and the metadata key value pairs to be udpated for these products.
876
+ # @return [Array<(ProductsMetadataUpdateInBulkResponseBody, Integer, Hash)>] ProductsMetadataUpdateInBulkResponseBody data, response status code and response headers
877
+ private def update_products_metadata_in_bulk_with_http_info(opts = {})
878
+ if @api_client.config.debugging
879
+ @api_client.config.logger.debug 'Calling API: ProductsApi.update_products_metadata_in_bulk ...'
880
+ end
881
+ # resource path
882
+ local_var_path = '/v1/products/metadata/async'
883
+
884
+ # query parameters
885
+ query_params = opts[:query_params] || {}
886
+
887
+ # header parameters
888
+ header_params = opts[:header_params] || {}
889
+ # HTTP header 'Accept' (if needed)
890
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
891
+ # HTTP header 'Content-Type'
892
+ content_type = @api_client.select_header_content_type(['application/json'])
893
+ if !content_type.nil?
894
+ header_params['Content-Type'] = content_type
895
+ end
896
+
897
+ # form parameters
898
+ form_params = opts[:form_params] || {}
899
+
900
+ # http body (model)
901
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'products_metadata_update_in_bulk_request_body'])
902
+
903
+ # return_type
904
+ return_type = opts[:debug_return_type] || 'ProductsMetadataUpdateInBulkResponseBody'
905
+
906
+ # auth_names
907
+ auth_names = opts[:debug_auth_names] || ['X-App-Id', 'X-App-Token']
908
+
909
+ new_options = opts.merge(
910
+ :operation => :"ProductsApi.update_products_metadata_in_bulk",
911
+ :header_params => header_params,
912
+ :query_params => query_params,
913
+ :form_params => form_params,
914
+ :body => post_body,
915
+ :auth_names => auth_names,
916
+ :return_type => return_type
917
+ )
918
+
919
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
920
+ if @api_client.config.debugging
921
+ @api_client.config.logger.debug "API called: ProductsApi#update_products_metadata_in_bulk\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
922
+ end
923
+ return data, status_code, headers
924
+ end
925
+
926
+ # Update SKU
927
+ # Updates the specified SKU 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 schema wont be modified. Even if provided, they will be silently skipped.
928
+ # @param product_id [String] A unique Voucherify product ID or product source ID.
929
+ # @param sku_id [String] A Voucherify SKU ID or SKU source ID.
930
+ # @param [Hash] opts the optional parameters
931
+ # @option opts [ProductsSkusUpdateRequestBody] :products_skus_update_request_body Specify the parameters to be updated.
932
+ # @return [ProductsSkusUpdateResponseBody]
933
+ def update_sku(product_id, sku_id, opts = {})
934
+ data, _status_code, _headers = update_sku_with_http_info(product_id, sku_id, opts)
935
+ data
936
+ end
937
+
938
+ # Update SKU
939
+ # Updates the specified SKU 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 schema wont be modified. Even if provided, they will be silently skipped.
940
+ # @param product_id [String] A unique Voucherify product ID or product source ID.
941
+ # @param sku_id [String] A Voucherify SKU ID or SKU source ID.
942
+ # @param [Hash] opts the optional parameters
943
+ # @option opts [ProductsSkusUpdateRequestBody] :products_skus_update_request_body Specify the parameters to be updated.
944
+ # @return [Array<(ProductsSkusUpdateResponseBody, Integer, Hash)>] ProductsSkusUpdateResponseBody data, response status code and response headers
945
+ private def update_sku_with_http_info(product_id, sku_id, opts = {})
946
+ if @api_client.config.debugging
947
+ @api_client.config.logger.debug 'Calling API: ProductsApi.update_sku ...'
948
+ end
949
+ # verify the required parameter 'product_id' is set
950
+ if @api_client.config.client_side_validation && product_id.nil?
951
+ fail ArgumentError, "Missing the required parameter 'product_id' when calling ProductsApi.update_sku"
952
+ end
953
+ # verify the required parameter 'sku_id' is set
954
+ if @api_client.config.client_side_validation && sku_id.nil?
955
+ fail ArgumentError, "Missing the required parameter 'sku_id' when calling ProductsApi.update_sku"
956
+ end
957
+ # resource path
958
+ local_var_path = '/v1/products/{productId}/skus/{skuId}'.sub('{' + 'productId' + '}', CGI.escape(product_id.to_s)).sub('{' + 'skuId' + '}', CGI.escape(sku_id.to_s))
959
+
960
+ # query parameters
961
+ query_params = opts[:query_params] || {}
962
+
963
+ # header parameters
964
+ header_params = opts[:header_params] || {}
965
+ # HTTP header 'Accept' (if needed)
966
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
967
+ # HTTP header 'Content-Type'
968
+ content_type = @api_client.select_header_content_type(['application/json'])
969
+ if !content_type.nil?
970
+ header_params['Content-Type'] = content_type
971
+ end
972
+
973
+ # form parameters
974
+ form_params = opts[:form_params] || {}
975
+
976
+ # http body (model)
977
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'products_skus_update_request_body'])
978
+
979
+ # return_type
980
+ return_type = opts[:debug_return_type] || 'ProductsSkusUpdateResponseBody'
981
+
982
+ # auth_names
983
+ auth_names = opts[:debug_auth_names] || ['X-App-Id', 'X-App-Token']
984
+
985
+ new_options = opts.merge(
986
+ :operation => :"ProductsApi.update_sku",
987
+ :header_params => header_params,
988
+ :query_params => query_params,
989
+ :form_params => form_params,
990
+ :body => post_body,
991
+ :auth_names => auth_names,
992
+ :return_type => return_type
993
+ )
994
+
995
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
996
+ if @api_client.config.debugging
997
+ @api_client.config.logger.debug "API called: ProductsApi#update_sku\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
998
+ end
999
+ return data, status_code, headers
1000
+ end
1001
+ end
1002
+ end