talon_one 7.0.0 → 9.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (360) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +27 -12
  3. data/docs/Achievement.md +6 -4
  4. data/docs/AchievementAdditionalProperties.md +5 -3
  5. data/docs/AchievementBase.md +35 -0
  6. data/docs/AchievementProgress.md +3 -15
  7. data/docs/AchievementProgressWithDefinition.md +45 -0
  8. data/docs/AchievementStatusEntry.md +45 -0
  9. data/docs/AddFreeItemEffectProps.md +3 -1
  10. data/docs/AdditionalCampaignProperties.md +4 -2
  11. data/docs/AnalyticsProduct.md +6 -6
  12. data/docs/AnalyticsSKU.md +23 -0
  13. data/docs/ApplicationCIF.md +1 -1
  14. data/docs/ApplicationCIFExpression.md +1 -1
  15. data/docs/ApplicationCIFReferences.md +19 -0
  16. data/docs/ApplicationEntity.md +1 -1
  17. data/docs/ApplicationEvent.md +1 -1
  18. data/docs/ApplicationReferee.md +1 -1
  19. data/docs/ApplicationSession.md +2 -2
  20. data/docs/Audience.md +1 -1
  21. data/docs/BaseLoyaltyProgram.md +1 -1
  22. data/docs/Binding.md +1 -1
  23. data/docs/Campaign.md +4 -2
  24. data/docs/CampaignDetail.md +19 -0
  25. data/docs/CampaignEvaluationGroup.md +1 -1
  26. data/docs/CampaignNotificationPolicy.md +3 -1
  27. data/docs/CampaignSet.md +1 -1
  28. data/docs/CampaignStoreBudget.md +1 -1
  29. data/docs/CampaignStoreBudgetLimitConfig.md +25 -0
  30. data/docs/CampaignTemplate.md +3 -1
  31. data/docs/CardExpiringPointsNotificationPolicy.md +3 -1
  32. data/docs/CatalogsStrikethroughNotificationPolicy.md +3 -1
  33. data/docs/CouponCreationJob.md +1 -1
  34. data/docs/CouponDeletionJob.md +1 -1
  35. data/docs/CouponsNotificationPolicy.md +5 -1
  36. data/docs/CreateAchievement.md +1 -1
  37. data/docs/CustomerInventory.md +1 -1
  38. data/docs/CustomerSession.md +1 -1
  39. data/docs/CustomerSessionV2.md +2 -4
  40. data/docs/Environment.md +1 -1
  41. data/docs/Event.md +1 -1
  42. data/docs/ExpiringCouponsNotificationPolicy.md +3 -1
  43. data/docs/ExpiringPointsNotificationPolicy.md +3 -1
  44. data/docs/HiddenConditionsEffects.md +23 -0
  45. data/docs/InlineResponse2001.md +3 -3
  46. data/docs/InlineResponse20010.md +3 -3
  47. data/docs/InlineResponse20011.md +3 -3
  48. data/docs/InlineResponse20012.md +1 -1
  49. data/docs/InlineResponse20013.md +1 -1
  50. data/docs/InlineResponse20014.md +1 -1
  51. data/docs/InlineResponse20015.md +3 -3
  52. data/docs/InlineResponse20016.md +3 -3
  53. data/docs/InlineResponse20017.md +3 -5
  54. data/docs/InlineResponse20018.md +2 -2
  55. data/docs/InlineResponse20019.md +3 -3
  56. data/docs/InlineResponse2002.md +3 -3
  57. data/docs/InlineResponse20020.md +5 -3
  58. data/docs/InlineResponse20021.md +3 -5
  59. data/docs/InlineResponse20022.md +2 -4
  60. data/docs/InlineResponse20023.md +3 -5
  61. data/docs/InlineResponse20024.md +5 -3
  62. data/docs/InlineResponse20025.md +4 -2
  63. data/docs/InlineResponse20026.md +3 -1
  64. data/docs/InlineResponse20027.md +1 -1
  65. data/docs/InlineResponse20028.md +3 -3
  66. data/docs/InlineResponse20029.md +1 -3
  67. data/docs/InlineResponse2003.md +1 -1
  68. data/docs/InlineResponse20030.md +2 -2
  69. data/docs/InlineResponse20031.md +3 -3
  70. data/docs/InlineResponse20032.md +1 -1
  71. data/docs/InlineResponse20033.md +3 -3
  72. data/docs/InlineResponse20034.md +1 -3
  73. data/docs/InlineResponse20035.md +5 -3
  74. data/docs/InlineResponse20036.md +1 -1
  75. data/docs/InlineResponse20037.md +5 -3
  76. data/docs/InlineResponse20038.md +1 -1
  77. data/docs/InlineResponse20039.md +1 -1
  78. data/docs/InlineResponse2004.md +1 -1
  79. data/docs/InlineResponse20040.md +1 -1
  80. data/docs/InlineResponse20041.md +2 -4
  81. data/docs/InlineResponse20042.md +1 -1
  82. data/docs/InlineResponse20043.md +1 -1
  83. data/docs/InlineResponse20044.md +4 -4
  84. data/docs/InlineResponse20045.md +3 -3
  85. data/docs/InlineResponse20046.md +3 -3
  86. data/docs/InlineResponse20047.md +5 -3
  87. data/docs/InlineResponse20048.md +19 -0
  88. data/docs/InlineResponse20049.md +19 -0
  89. data/docs/InlineResponse2005.md +3 -3
  90. data/docs/InlineResponse2006.md +3 -3
  91. data/docs/InlineResponse2007.md +1 -1
  92. data/docs/InlineResponse2008.md +1 -1
  93. data/docs/InlineResponse2009.md +3 -3
  94. data/docs/IntegrationApi.md +159 -19
  95. data/docs/LedgerInfo.md +4 -0
  96. data/docs/LedgerTransactionLogEntryIntegrationAPI.md +3 -1
  97. data/docs/LimitCounter.md +1 -1
  98. data/docs/LoyaltyBalance.md +3 -1
  99. data/docs/LoyaltyBalanceWithTier.md +2 -0
  100. data/docs/LoyaltyBalances.md +1 -1
  101. data/docs/LoyaltyBalancesWithTiers.md +1 -1
  102. data/docs/LoyaltyCardBalances.md +1 -1
  103. data/docs/LoyaltyLedger.md +1 -1
  104. data/docs/LoyaltyLedgerEntry.md +3 -1
  105. data/docs/LoyaltyLedgerEntryFlags.md +17 -0
  106. data/docs/LoyaltyProgram.md +1 -1
  107. data/docs/LoyaltyProgramBalance.md +5 -1
  108. data/docs/LoyaltyProgramTransaction.md +3 -1
  109. data/docs/LoyaltySubLedger.md +2 -0
  110. data/docs/ManagementApi.md +345 -436
  111. data/docs/ManagementKey.md +3 -1
  112. data/docs/MessageTest.md +27 -0
  113. data/docs/ModelReturn.md +1 -1
  114. data/docs/NewAudience.md +1 -1
  115. data/docs/NewCampaignSet.md +1 -1
  116. data/docs/NewLoyaltyProgram.md +1 -1
  117. data/docs/NewManagementKey.md +2 -0
  118. data/docs/NewMessageTest.md +29 -0
  119. data/docs/PendingPointsNotificationPolicy.md +3 -1
  120. data/docs/ProductSearchMatch.md +2 -2
  121. data/docs/ProductUnitAnalytics.md +4 -10
  122. data/docs/ProductUnitAnalyticsDataPoint.md +25 -0
  123. data/docs/ProductUnitAnalyticsTotals.md +17 -0
  124. data/docs/SkuUnitAnalytics.md +19 -0
  125. data/docs/SkuUnitAnalyticsDataPoint.md +23 -0
  126. data/docs/Store.md +1 -1
  127. data/docs/StrikethroughEffect.md +5 -1
  128. data/docs/StrikethroughLabelingNotification.md +6 -2
  129. data/docs/SummaryCampaignStoreBudget.md +3 -1
  130. data/docs/TemplateDef.md +1 -1
  131. data/docs/TierDowngradeNotificationPolicy.md +3 -1
  132. data/docs/TierUpgradeNotificationPolicy.md +3 -1
  133. data/docs/TierWillDowngradeNotificationPolicy.md +2 -0
  134. data/docs/UpdateAchievement.md +2 -2
  135. data/docs/UpdateLoyaltyProgram.md +1 -1
  136. data/lib/talon_one/api/integration_api.rb +223 -29
  137. data/lib/talon_one/api/management_api.rb +434 -518
  138. data/lib/talon_one/models/achievement.rb +27 -15
  139. data/lib/talon_one/models/achievement_additional_properties.rb +49 -10
  140. data/lib/talon_one/models/achievement_base.rb +377 -0
  141. data/lib/talon_one/models/achievement_progress.rb +4 -137
  142. data/lib/talon_one/models/achievement_progress_with_definition.rb +490 -0
  143. data/lib/talon_one/models/achievement_status_entry.rb +472 -0
  144. data/lib/talon_one/models/add_free_item_effect_props.rb +14 -4
  145. data/lib/talon_one/models/additional_campaign_properties.rb +16 -9
  146. data/lib/talon_one/models/analytics_product.rb +20 -21
  147. data/lib/talon_one/models/analytics_sku.rb +246 -0
  148. data/lib/talon_one/models/application_api_key.rb +2 -2
  149. data/lib/talon_one/models/application_cif.rb +1 -1
  150. data/lib/talon_one/models/application_cif_expression.rb +1 -1
  151. data/lib/talon_one/models/application_cif_references.rb +219 -0
  152. data/lib/talon_one/models/application_entity.rb +1 -1
  153. data/lib/talon_one/models/application_event.rb +1 -1
  154. data/lib/talon_one/models/application_referee.rb +1 -1
  155. data/lib/talon_one/models/application_session.rb +2 -2
  156. data/lib/talon_one/models/audience.rb +1 -1
  157. data/lib/talon_one/models/base_loyalty_program.rb +3 -3
  158. data/lib/talon_one/models/campaign.rb +14 -7
  159. data/lib/talon_one/models/campaign_detail.rb +232 -0
  160. data/lib/talon_one/models/campaign_evaluation_group.rb +1 -1
  161. data/lib/talon_one/models/campaign_notification_policy.rb +14 -4
  162. data/lib/talon_one/models/campaign_set.rb +1 -1
  163. data/lib/talon_one/models/campaign_store_budget.rb +1 -1
  164. data/lib/talon_one/models/campaign_store_budget_limit_config.rb +322 -0
  165. data/lib/talon_one/models/campaign_template.rb +16 -4
  166. data/lib/talon_one/models/card_expiring_points_notification_policy.rb +14 -4
  167. data/lib/talon_one/models/catalogs_strikethrough_notification_policy.rb +38 -4
  168. data/lib/talon_one/models/coupon_creation_job.rb +1 -1
  169. data/lib/talon_one/models/coupon_deletion_job.rb +1 -1
  170. data/lib/talon_one/models/coupons_notification_policy.rb +24 -4
  171. data/lib/talon_one/models/create_achievement.rb +0 -5
  172. data/lib/talon_one/models/create_application_api_key.rb +2 -2
  173. data/lib/talon_one/models/customer_inventory.rb +1 -1
  174. data/lib/talon_one/models/customer_session.rb +1 -1
  175. data/lib/talon_one/models/customer_session_v2.rb +5 -15
  176. data/lib/talon_one/models/delete_user_request.rb +0 -1
  177. data/lib/talon_one/models/environment.rb +1 -1
  178. data/lib/talon_one/models/event.rb +1 -1
  179. data/lib/talon_one/models/expiring_coupons_notification_policy.rb +14 -4
  180. data/lib/talon_one/models/expiring_points_notification_policy.rb +14 -4
  181. data/lib/talon_one/models/hidden_conditions_effects.rb +246 -0
  182. data/lib/talon_one/models/inline_response2001.rb +11 -11
  183. data/lib/talon_one/models/inline_response20010.rb +11 -11
  184. data/lib/talon_one/models/inline_response20011.rb +11 -11
  185. data/lib/talon_one/models/inline_response20012.rb +1 -1
  186. data/lib/talon_one/models/inline_response20013.rb +1 -1
  187. data/lib/talon_one/models/inline_response20014.rb +1 -1
  188. data/lib/talon_one/models/inline_response20015.rb +11 -11
  189. data/lib/talon_one/models/inline_response20016.rb +11 -13
  190. data/lib/talon_one/models/inline_response20017.rb +7 -11
  191. data/lib/talon_one/models/inline_response20018.rb +1 -1
  192. data/lib/talon_one/models/inline_response20019.rb +3 -1
  193. data/lib/talon_one/models/inline_response2002.rb +11 -11
  194. data/lib/talon_one/models/inline_response20020.rb +11 -7
  195. data/lib/talon_one/models/inline_response20021.rb +7 -11
  196. data/lib/talon_one/models/inline_response20022.rb +7 -11
  197. data/lib/talon_one/models/inline_response20023.rb +7 -11
  198. data/lib/talon_one/models/inline_response20024.rb +11 -7
  199. data/lib/talon_one/models/inline_response20025.rb +11 -7
  200. data/lib/talon_one/models/inline_response20026.rb +11 -2
  201. data/lib/talon_one/models/inline_response20027.rb +1 -1
  202. data/lib/talon_one/models/inline_response20028.rb +11 -11
  203. data/lib/talon_one/models/inline_response20029.rb +2 -11
  204. data/lib/talon_one/models/inline_response2003.rb +1 -1
  205. data/lib/talon_one/models/inline_response20030.rb +6 -1
  206. data/lib/talon_one/models/inline_response20031.rb +13 -8
  207. data/lib/talon_one/models/inline_response20032.rb +1 -1
  208. data/lib/talon_one/models/inline_response20033.rb +8 -13
  209. data/lib/talon_one/models/inline_response20034.rb +2 -11
  210. data/lib/talon_one/models/inline_response20035.rb +11 -7
  211. data/lib/talon_one/models/inline_response20036.rb +1 -1
  212. data/lib/talon_one/models/inline_response20037.rb +11 -7
  213. data/lib/talon_one/models/inline_response20038.rb +1 -1
  214. data/lib/talon_one/models/inline_response20039.rb +1 -1
  215. data/lib/talon_one/models/inline_response2004.rb +1 -1
  216. data/lib/talon_one/models/inline_response20040.rb +1 -1
  217. data/lib/talon_one/models/inline_response20041.rb +7 -11
  218. data/lib/talon_one/models/inline_response20042.rb +1 -1
  219. data/lib/talon_one/models/inline_response20043.rb +1 -1
  220. data/lib/talon_one/models/inline_response20044.rb +11 -11
  221. data/lib/talon_one/models/inline_response20045.rb +13 -8
  222. data/lib/talon_one/models/inline_response20046.rb +11 -11
  223. data/lib/talon_one/models/inline_response20047.rb +11 -7
  224. data/lib/talon_one/models/inline_response20048.rb +222 -0
  225. data/lib/talon_one/models/inline_response20049.rb +227 -0
  226. data/lib/talon_one/models/inline_response2005.rb +11 -11
  227. data/lib/talon_one/models/inline_response2006.rb +11 -11
  228. data/lib/talon_one/models/inline_response2007.rb +1 -1
  229. data/lib/talon_one/models/inline_response2008.rb +1 -1
  230. data/lib/talon_one/models/inline_response2009.rb +11 -11
  231. data/lib/talon_one/models/ledger_info.rb +31 -1
  232. data/lib/talon_one/models/ledger_transaction_log_entry_integration_api.rb +13 -4
  233. data/lib/talon_one/models/limit_counter.rb +1 -1
  234. data/lib/talon_one/models/loyalty_balance.rb +14 -4
  235. data/lib/talon_one/models/loyalty_balance_with_tier.rb +11 -1
  236. data/lib/talon_one/models/loyalty_ledger_entry.rb +13 -4
  237. data/lib/talon_one/models/loyalty_ledger_entry_flags.rb +208 -0
  238. data/lib/talon_one/models/loyalty_program.rb +3 -3
  239. data/lib/talon_one/models/loyalty_program_balance.rb +34 -4
  240. data/lib/talon_one/models/loyalty_program_transaction.rb +13 -4
  241. data/lib/talon_one/models/loyalty_sub_ledger.rb +16 -1
  242. data/lib/talon_one/models/management_key.rb +14 -4
  243. data/lib/talon_one/models/message_test.rb +227 -0
  244. data/lib/talon_one/models/model_return.rb +1 -1
  245. data/lib/talon_one/models/new_application_api_key.rb +2 -2
  246. data/lib/talon_one/models/new_audience.rb +1 -1
  247. data/lib/talon_one/models/new_campaign_set.rb +1 -1
  248. data/lib/talon_one/models/new_loyalty_program.rb +3 -3
  249. data/lib/talon_one/models/new_management_key.rb +11 -1
  250. data/lib/talon_one/models/new_message_test.rb +322 -0
  251. data/lib/talon_one/models/pending_points_notification_policy.rb +14 -4
  252. data/lib/talon_one/models/product.rb +0 -19
  253. data/lib/talon_one/models/product_search_match.rb +1 -6
  254. data/lib/talon_one/models/product_unit_analytics.rb +21 -65
  255. data/lib/talon_one/models/product_unit_analytics_data_point.rb +271 -0
  256. data/lib/talon_one/models/product_unit_analytics_totals.rb +206 -0
  257. data/lib/talon_one/models/sku_unit_analytics.rb +227 -0
  258. data/lib/talon_one/models/sku_unit_analytics_data_point.rb +256 -0
  259. data/lib/talon_one/models/store.rb +1 -1
  260. data/lib/talon_one/models/strikethrough_effect.rb +24 -4
  261. data/lib/talon_one/models/strikethrough_labeling_notification.rb +56 -2
  262. data/lib/talon_one/models/summary_campaign_store_budget.rb +18 -4
  263. data/lib/talon_one/models/template_def.rb +1 -1
  264. data/lib/talon_one/models/tier_downgrade_notification_policy.rb +14 -4
  265. data/lib/talon_one/models/tier_upgrade_notification_policy.rb +14 -4
  266. data/lib/talon_one/models/tier_will_downgrade_notification_policy.rb +11 -1
  267. data/lib/talon_one/models/update_achievement.rb +2 -2
  268. data/lib/talon_one/models/update_loyalty_program.rb +3 -3
  269. data/lib/talon_one/version.rb +1 -1
  270. data/lib/talon_one.rb +20 -5
  271. data/spec/api/integration_api_spec.rb +46 -9
  272. data/spec/api/management_api_spec.rb +132 -144
  273. data/spec/models/achievement_additional_properties_spec.rb +10 -0
  274. data/spec/models/achievement_base_spec.rb +103 -0
  275. data/spec/models/achievement_progress_spec.rb +1 -37
  276. data/spec/models/achievement_progress_with_definition_spec.rb +137 -0
  277. data/spec/models/achievement_spec.rb +10 -0
  278. data/spec/models/achievement_status_entry_spec.rb +137 -0
  279. data/spec/models/add_free_item_effect_props_spec.rb +6 -0
  280. data/spec/models/additional_campaign_properties_spec.rb +6 -0
  281. data/spec/models/analytics_product_spec.rb +3 -3
  282. data/spec/models/analytics_sku_spec.rb +59 -0
  283. data/spec/models/application_api_key_spec.rb +1 -1
  284. data/spec/models/application_cif_references_spec.rb +47 -0
  285. data/spec/models/base_loyalty_program_spec.rb +1 -1
  286. data/spec/models/campaign_detail_spec.rb +47 -0
  287. data/spec/models/campaign_notification_policy_spec.rb +6 -0
  288. data/spec/models/campaign_spec.rb +6 -0
  289. data/spec/models/campaign_store_budget_limit_config_spec.rb +73 -0
  290. data/spec/models/campaign_template_spec.rb +6 -0
  291. data/spec/models/card_expiring_points_notification_policy_spec.rb +6 -0
  292. data/spec/models/catalogs_strikethrough_notification_policy_spec.rb +6 -0
  293. data/spec/models/coupons_notification_policy_spec.rb +12 -0
  294. data/spec/models/create_application_api_key_spec.rb +1 -1
  295. data/spec/models/customer_session_v2_spec.rb +0 -6
  296. data/spec/models/expiring_coupons_notification_policy_spec.rb +6 -0
  297. data/spec/models/expiring_points_notification_policy_spec.rb +6 -0
  298. data/spec/models/hidden_conditions_effects_spec.rb +59 -0
  299. data/spec/models/inline_response20010_spec.rb +1 -1
  300. data/spec/models/inline_response20011_spec.rb +1 -1
  301. data/spec/models/inline_response20015_spec.rb +1 -1
  302. data/spec/models/inline_response20016_spec.rb +1 -1
  303. data/spec/models/inline_response20017_spec.rb +0 -6
  304. data/spec/models/inline_response2001_spec.rb +1 -1
  305. data/spec/models/inline_response20020_spec.rb +6 -0
  306. data/spec/models/inline_response20021_spec.rb +0 -6
  307. data/spec/models/inline_response20022_spec.rb +0 -6
  308. data/spec/models/inline_response20023_spec.rb +0 -6
  309. data/spec/models/inline_response20024_spec.rb +6 -0
  310. data/spec/models/inline_response20025_spec.rb +6 -0
  311. data/spec/models/inline_response20026_spec.rb +6 -0
  312. data/spec/models/inline_response20028_spec.rb +1 -1
  313. data/spec/models/inline_response20029_spec.rb +0 -6
  314. data/spec/models/inline_response2002_spec.rb +1 -1
  315. data/spec/models/inline_response20031_spec.rb +1 -1
  316. data/spec/models/inline_response20033_spec.rb +1 -1
  317. data/spec/models/inline_response20034_spec.rb +0 -6
  318. data/spec/models/inline_response20035_spec.rb +6 -0
  319. data/spec/models/inline_response20037_spec.rb +6 -0
  320. data/spec/models/inline_response20041_spec.rb +0 -6
  321. data/spec/models/inline_response20044_spec.rb +2 -2
  322. data/spec/models/inline_response20045_spec.rb +1 -1
  323. data/spec/models/inline_response20046_spec.rb +1 -1
  324. data/spec/models/inline_response20047_spec.rb +6 -0
  325. data/spec/models/inline_response20048_spec.rb +47 -0
  326. data/spec/models/inline_response20049_spec.rb +47 -0
  327. data/spec/models/inline_response2005_spec.rb +1 -1
  328. data/spec/models/inline_response2006_spec.rb +1 -1
  329. data/spec/models/inline_response2009_spec.rb +1 -1
  330. data/spec/models/ledger_info_spec.rb +12 -0
  331. data/spec/models/ledger_transaction_log_entry_integration_api_spec.rb +6 -0
  332. data/spec/models/loyalty_balance_spec.rb +6 -0
  333. data/spec/models/loyalty_balance_with_tier_spec.rb +6 -0
  334. data/spec/models/loyalty_ledger_entry_flags_spec.rb +41 -0
  335. data/spec/models/loyalty_ledger_entry_spec.rb +6 -0
  336. data/spec/models/loyalty_program_balance_spec.rb +12 -0
  337. data/spec/models/loyalty_program_spec.rb +1 -1
  338. data/spec/models/loyalty_program_transaction_spec.rb +6 -0
  339. data/spec/models/loyalty_sub_ledger_spec.rb +6 -0
  340. data/spec/models/management_key_spec.rb +6 -0
  341. data/spec/models/message_test_spec.rb +47 -0
  342. data/spec/models/new_application_api_key_spec.rb +1 -1
  343. data/spec/models/new_loyalty_program_spec.rb +1 -1
  344. data/spec/models/new_management_key_spec.rb +6 -0
  345. data/spec/models/new_message_test_spec.rb +79 -0
  346. data/spec/models/pending_points_notification_policy_spec.rb +6 -0
  347. data/spec/models/product_unit_analytics_data_point_spec.rb +65 -0
  348. data/spec/models/product_unit_analytics_spec.rb +2 -20
  349. data/spec/models/product_unit_analytics_totals_spec.rb +41 -0
  350. data/spec/models/revision_activation_request_spec.rb +47 -0
  351. data/spec/models/sku_unit_analytics_data_point_spec.rb +59 -0
  352. data/spec/models/sku_unit_analytics_spec.rb +47 -0
  353. data/spec/models/strikethrough_effect_spec.rb +12 -0
  354. data/spec/models/strikethrough_labeling_notification_spec.rb +16 -0
  355. data/spec/models/summary_campaign_store_budget_spec.rb +6 -0
  356. data/spec/models/tier_downgrade_notification_policy_spec.rb +6 -0
  357. data/spec/models/tier_upgrade_notification_policy_spec.rb +6 -0
  358. data/spec/models/tier_will_downgrade_notification_policy_spec.rb +6 -0
  359. data/spec/models/update_loyalty_program_spec.rb +1 -1
  360. metadata +578 -508
@@ -12,6 +12,7 @@ Name | Type | Description | Notes
12
12
  **created_by** | **Integer** | ID of the user who created it. |
13
13
  **account_id** | **Integer** | ID of account the key is used for. |
14
14
  **created** | **DateTime** | The date the management key was created. |
15
+ **disabled** | **Boolean** | The management key is disabled (this property is set to `true`) when the user who created the key is disabled or deleted. | [optional]
15
16
 
16
17
  ## Code Sample
17
18
 
@@ -25,7 +26,8 @@ instance = TalonOne::ManagementKey.new(name: My generated key,
25
26
  id: 34,
26
27
  created_by: 280,
27
28
  account_id: 13,
28
- created: 2022-03-02T16:46:17.758585Z)
29
+ created: 2022-03-02T16:46:17.758585Z,
30
+ disabled: true)
29
31
  ```
30
32
 
31
33
 
@@ -0,0 +1,27 @@
1
+ # TalonOne::MessageTest
2
+
3
+ ## Properties
4
+
5
+ Name | Type | Description | Notes
6
+ ------------ | ------------- | ------------- | -------------
7
+ **http_response** | **String** | The returned http response. |
8
+ **http_status** | **Integer** | The returned http status code. |
9
+
10
+ ## Code Sample
11
+
12
+ ```ruby
13
+ require 'TalonOne'
14
+
15
+ instance = TalonOne::MessageTest.new(http_response: HTTP/1.1 200 OK
16
+ Content-Type: application/json
17
+ Content-Length: 256
18
+
19
+ {
20
+ "message": "Hello, world!",
21
+ "status": "success"
22
+ }
23
+ ,
24
+ http_status: 200)
25
+ ```
26
+
27
+
data/docs/ModelReturn.md CHANGED
@@ -6,7 +6,7 @@ Name | Type | Description | Notes
6
6
  ------------ | ------------- | ------------- | -------------
7
7
  **id** | **Integer** | Internal ID of this entity. |
8
8
  **created** | **DateTime** | The time this entity was created. |
9
- **application_id** | **Integer** | The ID of the application that owns this entity. |
9
+ **application_id** | **Integer** | The ID of the Application that owns this entity. |
10
10
  **account_id** | **Integer** | The ID of the account that owns this entity. |
11
11
  **returned_cart_items** | [**Array<ReturnedCartItem>**](ReturnedCartItem.md) | List of cart items to be returned. |
12
12
  **event_id** | **Integer** | The event ID of that was generated for this return. |
data/docs/NewAudience.md CHANGED
@@ -7,7 +7,7 @@ Name | Type | Description | Notes
7
7
  **name** | **String** | The human-friendly display name for this audience. |
8
8
  **sandbox** | **Boolean** | Indicates if this is a live or sandbox Application. | [optional]
9
9
  **description** | **String** | A description of the audience. | [optional]
10
- **integration** | **String** | The Talon.One-supported [3rd-party platform](https://docs.talon.one/docs/dev/technology-partners/overview) that this audience was created in. For example, `mParticle`, `Segment`, `Selligent`, `Braze`, or `Iterable`. **Note:** If you do not integrate with any of these platforms, do not use this property. | [optional]
10
+ **integration** | **String** | The Talon.One-supported [3rd-party platform](https://docs.talon.one/docs/dev/technology-partners/overview) that this audience was created in. For example, `mParticle`, `Segment`, `Shopify`, `Braze`, or `Iterable`. **Note:** If you do not integrate with any of these platforms, do not use this property. | [optional]
11
11
  **integration_id** | **String** | The ID of this audience in the third-party integration. **Note:** To create an audience that doesn't come from a 3rd party platform, do not use this property. | [optional]
12
12
  **created_in3rd_party** | **Boolean** | Determines if this audience is a 3rd party audience or not. | [optional]
13
13
  **last_update** | **DateTime** | The last time that the audience memberships changed. | [optional]
@@ -4,7 +4,7 @@
4
4
 
5
5
  Name | Type | Description | Notes
6
6
  ------------ | ------------- | ------------- | -------------
7
- **application_id** | **Integer** | The ID of the application that owns this entity. |
7
+ **application_id** | **Integer** | The ID of the Application that owns this entity. |
8
8
  **version** | **Integer** | Version of the campaign set. |
9
9
  **set** | [**CampaignSetBranchNode**](CampaignSetBranchNode.md) | |
10
10
 
@@ -18,7 +18,7 @@ Name | Type | Description | Notes
18
18
  **tiers_expire_in** | **String** | The amount of time after which the tier expires and is reevaluated. The time format is an **integer** followed by one letter indicating the time unit. Examples: `30s`, `40m`, `1h`, `5D`, `7W`, `10M`, `15Y`. Available units: - `s`: seconds - `m`: minutes - `h`: hours - `D`: days - `W`: weeks - `M`: months - `Y`: years You can round certain units up or down: - `_D` for rounding down days only. Signifies the start of the day. - `_U` for rounding up days, weeks, months and years. Signifies the end of the day, week, month or year. | [optional]
19
19
  **tiers_downgrade_policy** | **String** | The policy that defines how customer tiers are downgraded in the loyalty program after tier reevaluation. - `one_down`: If the customer doesn't have enough points to stay in the current tier, they are downgraded by one tier. - `balance_based`: The customer's tier is reevaluated based on the amount of active points they have at the moment. | [optional]
20
20
  **card_code_settings** | [**CodeGeneratorSettings**](CodeGeneratorSettings.md) | | [optional]
21
- **return_policy** | **String** | The policy that defines the rollback of points in case of a partially returned, cancelled, or reopened [customer session](https://docs.talon.one/docs/dev/concepts/entities/customer-sessions). - `only_pending`: Only pending points can be rolled back. - `within_balance`: Available active points can be rolled back if there aren't enough pending points. The active balance of the customer cannot be negative. | [optional]
21
+ **return_policy** | **String** | The policy that defines the rollback of points in case of a partially returned, cancelled, or reopened [customer session](https://docs.talon.one/docs/dev/concepts/entities/customer-sessions). - `only_pending`: Only pending points can be rolled back. - `within_balance`: Available active points can be rolled back if there aren't enough pending points. The active balance of the customer cannot be negative. - `unlimited`: Allows negative balance without any limit. | [optional]
22
22
  **name** | **String** | The internal name for the Loyalty Program. This is an immutable value. |
23
23
  **tiers** | [**Array<NewLoyaltyTier>**](NewLoyaltyTier.md) | The tiers in this loyalty program. | [optional]
24
24
  **timezone** | **String** | A string containing an IANA timezone descriptor. |
@@ -12,6 +12,7 @@ Name | Type | Description | Notes
12
12
  **created_by** | **Integer** | ID of the user who created it. |
13
13
  **account_id** | **Integer** | ID of account the key is used for. |
14
14
  **created** | **DateTime** | The date the management key was created. |
15
+ **disabled** | **Boolean** | The management key is disabled (this property is set to `true`) when the user who created the key is disabled or deleted. | [optional]
15
16
  **key** | **String** | The management key. |
16
17
 
17
18
  ## Code Sample
@@ -27,6 +28,7 @@ instance = TalonOne::NewManagementKey.new(name: My generated key,
27
28
  created_by: 280,
28
29
  account_id: 13,
29
30
  created: 2022-03-02T16:46:17.758585Z,
31
+ disabled: true,
30
32
  key: f45f90d21dcd9bac965c45e547e9754a3196891d09948e35adbcbedc4e9e4b01)
31
33
  ```
32
34
 
@@ -0,0 +1,29 @@
1
+ # TalonOne::NewMessageTest
2
+
3
+ ## Properties
4
+
5
+ Name | Type | Description | Notes
6
+ ------------ | ------------- | ------------- | -------------
7
+ **type** | **String** | The message type. |
8
+ **_query_params** | **Hash<String, String>** | Array of query parameters. | [optional]
9
+ **headers** | **Hash<String, String>** | List of API HTTP headers for the given message. | [optional]
10
+ **verb** | **String** | API method for this message. |
11
+ **url** | **String** | API URL for the given message. |
12
+ **payload** | **String** | API payload of this message. | [optional]
13
+
14
+ ## Code Sample
15
+
16
+ ```ruby
17
+ require 'TalonOne'
18
+
19
+ instance = TalonOne::NewMessageTest.new(type: loyalty_added_deducted_points,
20
+ _query_params: {"param1":"value1","param2":"value2"},
21
+ headers: {"content-type":"application/json"},
22
+ verb: POST,
23
+ url: www.my-company.com/my-endpoint-name,
24
+ payload: {
25
+ "integrationId": "${$Profile.IntegrationId}"
26
+ })
27
+ ```
28
+
29
+
@@ -6,6 +6,7 @@ Name | Type | Description | Notes
6
6
  ------------ | ------------- | ------------- | -------------
7
7
  **name** | **String** | Notification name. |
8
8
  **batching_enabled** | **Boolean** | Indicates whether batching is activated. | [optional] [default to true]
9
+ **batch_size** | **Integer** | The required size of each batch of data. This value applies only when `batchingEnabled` is `true`. | [optional]
9
10
 
10
11
  ## Code Sample
11
12
 
@@ -13,7 +14,8 @@ Name | Type | Description | Notes
13
14
  require 'TalonOne'
14
15
 
15
16
  instance = TalonOne::PendingPointsNotificationPolicy.new(name: Christmas Sale,
16
- batching_enabled: false)
17
+ batching_enabled: false,
18
+ batch_size: 1000)
17
19
  ```
18
20
 
19
21
 
@@ -4,9 +4,9 @@
4
4
 
5
5
  Name | Type | Description | Notes
6
6
  ------------ | ------------- | ------------- | -------------
7
- **product_id** | **Integer** | The ID of the product. |
7
+ **product_id** | **Integer** | The ID of the product. | [optional]
8
8
  **value** | **String** | The string matching the given value. Either a product name or SKU. |
9
- **product_sku_id** | **Integer** | The ID of the SKU linked to a product. If empty, this is an analytics-level product. | [optional]
9
+ **product_sku_id** | **Integer** | The ID of the SKU linked to a product. If empty, this is an product. | [optional]
10
10
 
11
11
  ## Code Sample
12
12
 
@@ -4,22 +4,16 @@
4
4
 
5
5
  Name | Type | Description | Notes
6
6
  ------------ | ------------- | ------------- | -------------
7
- **start_time** | **DateTime** | The start of the aggregation time frame in UTC. |
8
- **end_time** | **DateTime** | The end of the aggregation time frame in UTC. |
9
- **purchased_units** | [**AnalyticsDataPointWithTrend**](AnalyticsDataPointWithTrend.md) | |
10
- **product_id** | **Integer** | The ID of the analytics-level product. |
11
- **product_name** | **String** | The name of the analytics-level product. |
7
+ **data** | [**Array<ProductUnitAnalyticsDataPoint>**](ProductUnitAnalyticsDataPoint.md) | |
8
+ **totals** | [**ProductUnitAnalyticsTotals**](ProductUnitAnalyticsTotals.md) | |
12
9
 
13
10
  ## Code Sample
14
11
 
15
12
  ```ruby
16
13
  require 'TalonOne'
17
14
 
18
- instance = TalonOne::ProductUnitAnalytics.new(start_time: 2024-02-01T00:00Z,
19
- end_time: null,
20
- purchased_units: null,
21
- product_id: 1,
22
- product_name: MyProduct)
15
+ instance = TalonOne::ProductUnitAnalytics.new(data: null,
16
+ totals: null)
23
17
  ```
24
18
 
25
19
 
@@ -0,0 +1,25 @@
1
+ # TalonOne::ProductUnitAnalyticsDataPoint
2
+
3
+ ## Properties
4
+
5
+ Name | Type | Description | Notes
6
+ ------------ | ------------- | ------------- | -------------
7
+ **start_time** | **DateTime** | The start of the aggregation time frame in UTC. |
8
+ **end_time** | **DateTime** | The end of the aggregation time frame in UTC. |
9
+ **units_sold** | [**AnalyticsDataPointWithTrend**](AnalyticsDataPointWithTrend.md) | |
10
+ **product_id** | **Integer** | The ID of the product. |
11
+ **product_name** | **String** | The name of the product. |
12
+
13
+ ## Code Sample
14
+
15
+ ```ruby
16
+ require 'TalonOne'
17
+
18
+ instance = TalonOne::ProductUnitAnalyticsDataPoint.new(start_time: 2024-02-01T00:00Z,
19
+ end_time: null,
20
+ units_sold: null,
21
+ product_id: 1,
22
+ product_name: MyProduct)
23
+ ```
24
+
25
+
@@ -0,0 +1,17 @@
1
+ # TalonOne::ProductUnitAnalyticsTotals
2
+
3
+ ## Properties
4
+
5
+ Name | Type | Description | Notes
6
+ ------------ | ------------- | ------------- | -------------
7
+ **units_sold** | [**AnalyticsDataPointWithTrend**](AnalyticsDataPointWithTrend.md) | | [optional]
8
+
9
+ ## Code Sample
10
+
11
+ ```ruby
12
+ require 'TalonOne'
13
+
14
+ instance = TalonOne::ProductUnitAnalyticsTotals.new(units_sold: null)
15
+ ```
16
+
17
+
@@ -0,0 +1,19 @@
1
+ # TalonOne::SkuUnitAnalytics
2
+
3
+ ## Properties
4
+
5
+ Name | Type | Description | Notes
6
+ ------------ | ------------- | ------------- | -------------
7
+ **data** | [**Array<SkuUnitAnalyticsDataPoint>**](SkuUnitAnalyticsDataPoint.md) | |
8
+ **totals** | [**ProductUnitAnalyticsTotals**](ProductUnitAnalyticsTotals.md) | |
9
+
10
+ ## Code Sample
11
+
12
+ ```ruby
13
+ require 'TalonOne'
14
+
15
+ instance = TalonOne::SkuUnitAnalytics.new(data: null,
16
+ totals: null)
17
+ ```
18
+
19
+
@@ -0,0 +1,23 @@
1
+ # TalonOne::SkuUnitAnalyticsDataPoint
2
+
3
+ ## Properties
4
+
5
+ Name | Type | Description | Notes
6
+ ------------ | ------------- | ------------- | -------------
7
+ **start_time** | **DateTime** | The start of the aggregation time frame in UTC. |
8
+ **end_time** | **DateTime** | The end of the aggregation time frame in UTC. |
9
+ **units_sold** | [**AnalyticsDataPointWithTrend**](AnalyticsDataPointWithTrend.md) | |
10
+ **sku** | **String** | The SKU linked to the application. |
11
+
12
+ ## Code Sample
13
+
14
+ ```ruby
15
+ require 'TalonOne'
16
+
17
+ instance = TalonOne::SkuUnitAnalyticsDataPoint.new(start_time: 2024-02-01T00:00Z,
18
+ end_time: null,
19
+ units_sold: null,
20
+ sku: SKU-123)
21
+ ```
22
+
23
+
data/docs/Store.md CHANGED
@@ -10,7 +10,7 @@ Name | Type | Description | Notes
10
10
  **description** | **String** | The description of the store. |
11
11
  **attributes** | [**Object**](.md) | The attributes of the store. | [optional]
12
12
  **integration_id** | **String** | The integration ID of the store. You choose this ID when you create a store. **Note**: You cannot edit the `integrationId` after the store has been created. |
13
- **application_id** | **Integer** | The ID of the application that owns this entity. |
13
+ **application_id** | **Integer** | The ID of the Application that owns this entity. |
14
14
  **updated** | **DateTime** | Timestamp of the most recent update on this entity. |
15
15
  **linked_campaign_ids** | **Array<Integer>** | A list of IDs of the campaigns that are linked with current store. | [optional]
16
16
 
@@ -10,6 +10,8 @@ Name | Type | Description | Notes
10
10
  **rule_name** | **String** | The name of the rule that triggered this effect. |
11
11
  **type** | **String** | The type of this effect. |
12
12
  **props** | [**Object**](.md) | |
13
+ **start_time** | **DateTime** | The start of the time frame where the effect is active in UTC. | [optional]
14
+ **end_time** | **DateTime** | The end of the time frame where the effect is active in UTC. | [optional]
13
15
 
14
16
  ## Code Sample
15
17
 
@@ -21,7 +23,9 @@ instance = TalonOne::StrikethroughEffect.new(campaign_id: 3,
21
23
  rule_index: 2,
22
24
  rule_name: Add 2 points,
23
25
  type: setDiscountPerItem,
24
- props: null)
26
+ props: null,
27
+ start_time: 2021-07-20T22:00Z,
28
+ end_time: 2021-10-01T02:00Z)
25
29
  ```
26
30
 
27
31
 
@@ -4,7 +4,9 @@
4
4
 
5
5
  Name | Type | Description | Notes
6
6
  ------------ | ------------- | ------------- | -------------
7
- **application_id** | **Integer** | The ID of the application that catalog items labels belongs to. |
7
+ **version** | **String** | The version of the strikethrough pricing notification. | [optional]
8
+ **valid_from** | **DateTime** | Timestamp at which the strikethrough pricing update becomes valid. Set for **scheduled** strikethrough pricing updates (version: v2) only. | [optional]
9
+ **application_id** | **Integer** | The ID of the Application to which the catalog items labels belongs. |
8
10
  **current_batch** | **Integer** | The batch number of the notification. Notifications might be sent in different batches. |
9
11
  **total_batches** | **Integer** | The total number of batches for the notification. |
10
12
  **trigger** | [**StrikethroughTrigger**](StrikethroughTrigger.md) | |
@@ -15,7 +17,9 @@ Name | Type | Description | Notes
15
17
  ```ruby
16
18
  require 'TalonOne'
17
19
 
18
- instance = TalonOne::StrikethroughLabelingNotification.new(application_id: 322,
20
+ instance = TalonOne::StrikethroughLabelingNotification.new(version: null,
21
+ valid_from: 2021-07-20T22:00Z,
22
+ application_id: 322,
19
23
  current_batch: 1,
20
24
  total_batches: 10,
21
25
  trigger: null,
@@ -7,6 +7,7 @@ Name | Type | Description | Notes
7
7
  **action** | **String** | |
8
8
  **period** | **String** | | [optional]
9
9
  **store_count** | **Integer** | |
10
+ **imported** | **Boolean** | |
10
11
 
11
12
  ## Code Sample
12
13
 
@@ -15,7 +16,8 @@ require 'TalonOne'
15
16
 
16
17
  instance = TalonOne::SummaryCampaignStoreBudget.new(action: null,
17
18
  period: null,
18
- store_count: null)
19
+ store_count: null,
20
+ imported: null)
19
21
  ```
20
22
 
21
23
 
data/docs/TemplateDef.md CHANGED
@@ -6,7 +6,7 @@ Name | Type | Description | Notes
6
6
  ------------ | ------------- | ------------- | -------------
7
7
  **id** | **Integer** | Internal ID of this entity. |
8
8
  **created** | **DateTime** | The time this entity was created. |
9
- **application_id** | **Integer** | The ID of the application that owns this entity. |
9
+ **application_id** | **Integer** | The ID of the Application that owns this entity. |
10
10
  **title** | **String** | Campaigner-friendly name for the template that will be shown in the rule editor. |
11
11
  **description** | **String** | A short description of the template that will be shown in the rule editor. |
12
12
  **help** | **String** | Extended help text for the template. |
@@ -6,6 +6,7 @@ Name | Type | Description | Notes
6
6
  ------------ | ------------- | ------------- | -------------
7
7
  **name** | **String** | The name of the notification. |
8
8
  **batching_enabled** | **Boolean** | Indicates whether batching is activated. | [optional] [default to true]
9
+ **batch_size** | **Integer** | The required size of each batch of data. This value applies only when `batchingEnabled` is `true`. | [optional]
9
10
 
10
11
  ## Code Sample
11
12
 
@@ -13,7 +14,8 @@ Name | Type | Description | Notes
13
14
  require 'TalonOne'
14
15
 
15
16
  instance = TalonOne::TierDowngradeNotificationPolicy.new(name: Christmas Sale,
16
- batching_enabled: false)
17
+ batching_enabled: false,
18
+ batch_size: 1000)
17
19
  ```
18
20
 
19
21
 
@@ -6,6 +6,7 @@ Name | Type | Description | Notes
6
6
  ------------ | ------------- | ------------- | -------------
7
7
  **name** | **String** | Notification name. |
8
8
  **batching_enabled** | **Boolean** | Indicates whether batching is activated. | [optional] [default to true]
9
+ **batch_size** | **Integer** | The required size of each batch of data. This value applies only when `batchingEnabled` is `true`. | [optional]
9
10
 
10
11
  ## Code Sample
11
12
 
@@ -13,7 +14,8 @@ Name | Type | Description | Notes
13
14
  require 'TalonOne'
14
15
 
15
16
  instance = TalonOne::TierUpgradeNotificationPolicy.new(name: Christmas Sale,
16
- batching_enabled: false)
17
+ batching_enabled: false,
18
+ batch_size: 1000)
17
19
  ```
18
20
 
19
21
 
@@ -6,6 +6,7 @@ Name | Type | Description | Notes
6
6
  ------------ | ------------- | ------------- | -------------
7
7
  **name** | **String** | The name of the notification. |
8
8
  **batching_enabled** | **Boolean** | Indicates whether batching is activated. | [optional] [default to true]
9
+ **batch_size** | **Integer** | The required size of each batch of data. This value applies only when `batchingEnabled` is `true`. | [optional]
9
10
  **triggers** | [**Array<TierWillDowngradeNotificationTrigger>**](TierWillDowngradeNotificationTrigger.md) | |
10
11
 
11
12
  ## Code Sample
@@ -15,6 +16,7 @@ require 'TalonOne'
15
16
 
16
17
  instance = TalonOne::TierWillDowngradeNotificationPolicy.new(name: Notification to Google,
17
18
  batching_enabled: false,
19
+ batch_size: 1000,
18
20
  triggers: null)
19
21
  ```
20
22
 
@@ -4,11 +4,11 @@
4
4
 
5
5
  Name | Type | Description | Notes
6
6
  ------------ | ------------- | ------------- | -------------
7
- **name** | **String** | The internal name of the achievement used in API requests. | [optional]
7
+ **name** | **String** | The internal name of the achievement used in API requests. **Note**: The name should start with a letter. This cannot be changed after the achievement has been created. | [optional]
8
8
  **title** | **String** | The display name for the achievement in the Campaign Manager. | [optional]
9
9
  **description** | **String** | A description of the achievement. | [optional]
10
10
  **target** | **Float** | The required number of actions or the transactional milestone to complete the achievement. | [optional]
11
- **period** | **String** | The relative duration after which the achievement ends and resets for a particular customer profile. | [optional]
11
+ **period** | **String** | The relative duration after which the achievement ends and resets for a particular customer profile. **Note**: The `period` does not start when the achievement is created. The period is a **positive real number** followed by one letter indicating the time unit. Examples: `30s`, `40m`, `1h`, `5D`, `7W`, `10M`, `15Y`. Available units: - `s`: seconds - `m`: minutes - `h`: hours - `D`: days - `W`: weeks - `M`: months - `Y`: years You can also round certain units down to the beginning of period and up to the end of period.: - `_D` for rounding down days only. Signifies the start of the day. Example: `30D_D` - `_U` for rounding up days, weeks, months and years. Signifies the end of the day, week, month or year. Example: `23W_U` **Note**: You can either use the round down and round up option or set an absolute period. | [optional]
12
12
  **period_end_override** | [**TimePoint**](TimePoint.md) | | [optional]
13
13
  **recurrence_policy** | **String** | The policy that determines if and how the achievement recurs. - `no_recurrence`: The achievement can be completed only once. - `on_expiration`: The achievement resets after it expires and becomes available again. | [optional]
14
14
  **activation_policy** | **String** | The policy that determines how the achievement starts, ends, or resets. - `user_action`: The achievement ends or resets relative to when the customer started the achievement. - `fixed_schedule`: The achievement starts, ends, or resets for all customers following a fixed schedule. | [optional]
@@ -18,7 +18,7 @@ Name | Type | Description | Notes
18
18
  **tiers_expire_in** | **String** | The amount of time after which the tier expires and is reevaluated. The time format is an **integer** followed by one letter indicating the time unit. Examples: `30s`, `40m`, `1h`, `5D`, `7W`, `10M`, `15Y`. Available units: - `s`: seconds - `m`: minutes - `h`: hours - `D`: days - `W`: weeks - `M`: months - `Y`: years You can round certain units up or down: - `_D` for rounding down days only. Signifies the start of the day. - `_U` for rounding up days, weeks, months and years. Signifies the end of the day, week, month or year. | [optional]
19
19
  **tiers_downgrade_policy** | **String** | The policy that defines how customer tiers are downgraded in the loyalty program after tier reevaluation. - `one_down`: If the customer doesn't have enough points to stay in the current tier, they are downgraded by one tier. - `balance_based`: The customer's tier is reevaluated based on the amount of active points they have at the moment. | [optional]
20
20
  **card_code_settings** | [**CodeGeneratorSettings**](CodeGeneratorSettings.md) | | [optional]
21
- **return_policy** | **String** | The policy that defines the rollback of points in case of a partially returned, cancelled, or reopened [customer session](https://docs.talon.one/docs/dev/concepts/entities/customer-sessions). - `only_pending`: Only pending points can be rolled back. - `within_balance`: Available active points can be rolled back if there aren't enough pending points. The active balance of the customer cannot be negative. | [optional]
21
+ **return_policy** | **String** | The policy that defines the rollback of points in case of a partially returned, cancelled, or reopened [customer session](https://docs.talon.one/docs/dev/concepts/entities/customer-sessions). - `only_pending`: Only pending points can be rolled back. - `within_balance`: Available active points can be rolled back if there aren't enough pending points. The active balance of the customer cannot be negative. - `unlimited`: Allows negative balance without any limit. | [optional]
22
22
  **tiers** | [**Array<NewLoyaltyTier>**](NewLoyaltyTier.md) | The tiers in this loyalty program. | [optional]
23
23
 
24
24
  ## Code Sample