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
@@ -13,6 +13,8 @@ Method | HTTP request | Description
13
13
  [**delete_coupon_reservation**](IntegrationApi.md#delete_coupon_reservation) | **DELETE** /v1/coupon_reservations/{couponValue} | Delete coupon reservations
14
14
  [**delete_customer_data**](IntegrationApi.md#delete_customer_data) | **DELETE** /v1/customer_data/{integrationId} | Delete customer's personal data
15
15
  [**generate_loyalty_card**](IntegrationApi.md#generate_loyalty_card) | **POST** /v1/loyalty_programs/{loyaltyProgramId}/cards | Generate loyalty card
16
+ [**get_customer_achievement_history**](IntegrationApi.md#get_customer_achievement_history) | **GET** /v1/customer_profiles/{integrationId}/achievements/{achievementId} | List customer's achievement history
17
+ [**get_customer_achievements**](IntegrationApi.md#get_customer_achievements) | **GET** /v1/customer_profiles/{integrationId}/achievements | List customer's available achievements
16
18
  [**get_customer_inventory**](IntegrationApi.md#get_customer_inventory) | **GET** /v1/customer_profiles/{integrationId}/inventory | List customer data
17
19
  [**get_customer_session**](IntegrationApi.md#get_customer_session) | **GET** /v2/customer_sessions/{customerSessionId} | Get customer session
18
20
  [**get_loyalty_balances**](IntegrationApi.md#get_loyalty_balances) | **GET** /v1/loyalty_programs/{loyaltyProgramId}/profile/{integrationId}/balances | Get customer's loyalty balances
@@ -152,7 +154,7 @@ Name | Type | Description | Notes
152
154
 
153
155
  Create referral code for an advocate
154
156
 
155
- Creates a referral code for an advocate. The code will be valid for the referral campaign for which is created, indicated in the `campaignId` parameter, and will be associated with the profile specified in the `advocateProfileIntegrationId` parameter as the advocate's profile.
157
+ Creates a referral code for an advocate. The code will be valid for the referral campaign for which is created, indicated in the `campaignId` parameter, and will be associated with the profile specified in the `advocateProfileIntegrationId` parameter as the advocate's profile. **Note:** Any [referral limits](https://docs.talon.one/docs/product/campaigns/settings/managing-campaign-budgets#referral-limits) set are ignored when you use this endpoint.
156
158
 
157
159
  ### Example
158
160
 
@@ -206,7 +208,7 @@ Name | Type | Description | Notes
206
208
 
207
209
  Create referral codes for multiple advocates
208
210
 
209
- Creates unique referral codes for multiple advocates. The code will be valid for the referral campaign for which it is created, indicated in the `campaignId` parameter, and one referral code will be associated with one advocate using the profile specified in the `advocateProfileIntegrationId` parameter as the advocate's profile.
211
+ Creates unique referral codes for multiple advocates. The code will be valid for the referral campaign for which it is created, indicated in the `campaignId` parameter, and one referral code will be associated with one advocate using the profile specified in the `advocateProfileIntegrationId` parameter as the advocate's profile. **Note:** Any [referral limits](https://docs.talon.one/docs/product/campaigns/settings/managing-campaign-budgets#referral-limits) set are ignored when you use this endpoint.
210
212
 
211
213
  ### Example
212
214
 
@@ -224,7 +226,7 @@ end
224
226
  api_instance = TalonOne::IntegrationApi.new
225
227
  body = TalonOne::NewReferralsForMultipleAdvocates.new # NewReferralsForMultipleAdvocates | body
226
228
  opts = {
227
- silent: 'yes' # String | Possible values: `yes` or `no`. - `yes`: Increases the perfomance of the API call by returning a 204 response. - `no`: Returns a 200 response that contains the updated customer profiles.
229
+ silent: 'yes' # String | Possible values: `yes` or `no`. - `yes`: Increases the performance of the API call by returning a 204 response. - `no`: Returns a 200 response that contains the updated customer profiles.
228
230
  }
229
231
 
230
232
  begin
@@ -242,7 +244,7 @@ end
242
244
  Name | Type | Description | Notes
243
245
  ------------- | ------------- | ------------- | -------------
244
246
  **body** | [**NewReferralsForMultipleAdvocates**](NewReferralsForMultipleAdvocates.md)| body |
245
- **silent** | **String**| Possible values: `yes` or `no`. - `yes`: Increases the perfomance of the API call by returning a 204 response. - `no`: Returns a 200 response that contains the updated customer profiles. | [optional] [default to 'yes']
247
+ **silent** | **String**| Possible values: `yes` or `no`. - `yes`: Increases the performance of the API call by returning a 204 response. - `no`: Returns a 200 response that contains the updated customer profiles. | [optional] [default to 'yes']
246
248
 
247
249
  ### Return type
248
250
 
@@ -528,6 +530,142 @@ Name | Type | Description | Notes
528
530
  - **Accept**: application/json
529
531
 
530
532
 
533
+ ## get_customer_achievement_history
534
+
535
+ > InlineResponse2002 get_customer_achievement_history(integration_id, achievement_id, opts)
536
+
537
+ List customer's achievement history
538
+
539
+ Retrieve all progress history of a given customer in the given achievement.
540
+
541
+ ### Example
542
+
543
+ ```ruby
544
+ # load the gem
545
+ require 'talon_one'
546
+ # setup authorization
547
+ TalonOne.configure do |config|
548
+ # Configure API key authorization: api_key_v1
549
+ config.api_key['Authorization'] = 'YOUR API KEY'
550
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
551
+ #config.api_key_prefix['Authorization'] = 'Bearer'
552
+ end
553
+
554
+ api_instance = TalonOne::IntegrationApi.new
555
+ integration_id = 'integration_id_example' # String | The integration identifier for this customer profile. Must be: - Unique within the deployment. - Stable for the customer. Do not use an ID that the customer can update themselves. For example, you can use a database ID. Once set, you cannot update this identifier.
556
+ achievement_id = 56 # Integer | The achievement identifier.
557
+ opts = {
558
+ progress_status: ['progress_status_example'], # Array<String> | Filter by customer progress status in the achievement.
559
+ start_date: DateTime.parse('2013-10-20T19:20:30+01:00'), # DateTime | Timestamp that filters the results to only contain achievements created on or after the start date.
560
+ end_date: DateTime.parse('2013-10-20T19:20:30+01:00'), # DateTime | Timestamp that filters the results to only contain achievements created before or on the end date.
561
+ page_size: 1000, # Integer | The number of items in the response.
562
+ skip: 56 # Integer | The number of items to skip when paging through large result sets.
563
+ }
564
+
565
+ begin
566
+ #List customer's achievement history
567
+ result = api_instance.get_customer_achievement_history(integration_id, achievement_id, opts)
568
+ p result
569
+ rescue TalonOne::ApiError => e
570
+ puts "Exception when calling IntegrationApi->get_customer_achievement_history: #{e}"
571
+ end
572
+ ```
573
+
574
+ ### Parameters
575
+
576
+
577
+ Name | Type | Description | Notes
578
+ ------------- | ------------- | ------------- | -------------
579
+ **integration_id** | **String**| The integration identifier for this customer profile. Must be: - Unique within the deployment. - Stable for the customer. Do not use an ID that the customer can update themselves. For example, you can use a database ID. Once set, you cannot update this identifier. |
580
+ **achievement_id** | **Integer**| The achievement identifier. |
581
+ **progress_status** | [**Array&lt;String&gt;**](String.md)| Filter by customer progress status in the achievement. | [optional]
582
+ **start_date** | **DateTime**| Timestamp that filters the results to only contain achievements created on or after the start date. | [optional]
583
+ **end_date** | **DateTime**| Timestamp that filters the results to only contain achievements created before or on the end date. | [optional]
584
+ **page_size** | **Integer**| The number of items in the response. | [optional] [default to 1000]
585
+ **skip** | **Integer**| The number of items to skip when paging through large result sets. | [optional]
586
+
587
+ ### Return type
588
+
589
+ [**InlineResponse2002**](InlineResponse2002.md)
590
+
591
+ ### Authorization
592
+
593
+ [api_key_v1](../README.md#api_key_v1)
594
+
595
+ ### HTTP request headers
596
+
597
+ - **Content-Type**: Not defined
598
+ - **Accept**: application/json
599
+
600
+
601
+ ## get_customer_achievements
602
+
603
+ > InlineResponse2001 get_customer_achievements(integration_id, opts)
604
+
605
+ List customer's available achievements
606
+
607
+ Retrieve all the achievements available to a given customer and their progress in them.
608
+
609
+ ### Example
610
+
611
+ ```ruby
612
+ # load the gem
613
+ require 'talon_one'
614
+ # setup authorization
615
+ TalonOne.configure do |config|
616
+ # Configure API key authorization: api_key_v1
617
+ config.api_key['Authorization'] = 'YOUR API KEY'
618
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
619
+ #config.api_key_prefix['Authorization'] = 'Bearer'
620
+ end
621
+
622
+ api_instance = TalonOne::IntegrationApi.new
623
+ integration_id = 'integration_id_example' # String | The integration identifier for this customer profile. Must be: - Unique within the deployment. - Stable for the customer. Do not use an ID that the customer can update themselves. For example, you can use a database ID. Once set, you cannot update this identifier.
624
+ opts = {
625
+ campaign_ids: ['campaign_ids_example'], # Array<String> | Filter by one or more Campaign IDs, separated by a comma. **Note:** If no campaigns are specified, data for all the campaigns in the Application is returned.
626
+ achievement_ids: ['achievement_ids_example'], # Array<String> | Filter by one or more Achievement IDs, separated by a comma. **Note:** If no achievements are specified, data for all the achievements in the Application is returned.
627
+ achievement_status: ['achievement_status_example'], # Array<String> | Filter by status of the achievement. **Note:** If the achievement status is not specified, only data for all active achievements in the Application is returned.
628
+ current_progress_status: ['current_progress_status_example'], # Array<String> | Filter by customer progress status in the achievement.
629
+ page_size: 1000, # Integer | The number of items in the response.
630
+ skip: 56 # Integer | The number of items to skip when paging through large result sets.
631
+ }
632
+
633
+ begin
634
+ #List customer's available achievements
635
+ result = api_instance.get_customer_achievements(integration_id, opts)
636
+ p result
637
+ rescue TalonOne::ApiError => e
638
+ puts "Exception when calling IntegrationApi->get_customer_achievements: #{e}"
639
+ end
640
+ ```
641
+
642
+ ### Parameters
643
+
644
+
645
+ Name | Type | Description | Notes
646
+ ------------- | ------------- | ------------- | -------------
647
+ **integration_id** | **String**| The integration identifier for this customer profile. Must be: - Unique within the deployment. - Stable for the customer. Do not use an ID that the customer can update themselves. For example, you can use a database ID. Once set, you cannot update this identifier. |
648
+ **campaign_ids** | [**Array&lt;String&gt;**](String.md)| Filter by one or more Campaign IDs, separated by a comma. **Note:** If no campaigns are specified, data for all the campaigns in the Application is returned. | [optional]
649
+ **achievement_ids** | [**Array&lt;String&gt;**](String.md)| Filter by one or more Achievement IDs, separated by a comma. **Note:** If no achievements are specified, data for all the achievements in the Application is returned. | [optional]
650
+ **achievement_status** | [**Array&lt;String&gt;**](String.md)| Filter by status of the achievement. **Note:** If the achievement status is not specified, only data for all active achievements in the Application is returned. | [optional]
651
+ **current_progress_status** | [**Array&lt;String&gt;**](String.md)| Filter by customer progress status in the achievement. | [optional]
652
+ **page_size** | **Integer**| The number of items in the response. | [optional] [default to 1000]
653
+ **skip** | **Integer**| The number of items to skip when paging through large result sets. | [optional]
654
+
655
+ ### Return type
656
+
657
+ [**InlineResponse2001**](InlineResponse2001.md)
658
+
659
+ ### Authorization
660
+
661
+ [api_key_v1](../README.md#api_key_v1)
662
+
663
+ ### HTTP request headers
664
+
665
+ - **Content-Type**: Not defined
666
+ - **Accept**: application/json
667
+
668
+
531
669
  ## get_customer_inventory
532
670
 
533
671
  > CustomerInventory get_customer_inventory(integration_id, opts)
@@ -780,7 +918,7 @@ Name | Type | Description | Notes
780
918
 
781
919
  ## get_loyalty_card_points
782
920
 
783
- > InlineResponse2003 get_loyalty_card_points(loyalty_program_id, loyalty_card_id, opts)
921
+ > InlineResponse2005 get_loyalty_card_points(loyalty_program_id, loyalty_card_id, opts)
784
922
 
785
923
  List card's unused loyalty points
786
924
 
@@ -832,7 +970,7 @@ Name | Type | Description | Notes
832
970
 
833
971
  ### Return type
834
972
 
835
- [**InlineResponse2003**](InlineResponse2003.md)
973
+ [**InlineResponse2005**](InlineResponse2005.md)
836
974
 
837
975
  ### Authorization
838
976
 
@@ -846,7 +984,7 @@ Name | Type | Description | Notes
846
984
 
847
985
  ## get_loyalty_card_transactions
848
986
 
849
- > InlineResponse2001 get_loyalty_card_transactions(loyalty_program_id, loyalty_card_id, opts)
987
+ > InlineResponse2003 get_loyalty_card_transactions(loyalty_program_id, loyalty_card_id, opts)
850
988
 
851
989
  List card's transactions
852
990
 
@@ -873,7 +1011,7 @@ opts = {
873
1011
  loyalty_transaction_type: 'loyalty_transaction_type_example', # String | Filter results by loyalty transaction type: - `manual`: Loyalty transaction that was done manually. - `session`: Loyalty transaction that resulted from a customer session. - `import`: Loyalty transaction that was imported from a CSV file.
874
1012
  start_date: DateTime.parse('2013-10-20T19:20:30+01:00'), # DateTime | Date and time from which results are returned. Results are filtered by transaction creation date. **Note:** - It must be an RFC3339 timestamp string. - You can include a time component in your string, for example, `T23:59:59` to specify the end of the day. The time zone setting considered is `UTC`. If you do not include a time component, a default time value of `T00:00:00` (midnight) in `UTC` is considered.
875
1013
  end_date: DateTime.parse('2013-10-20T19:20:30+01:00'), # DateTime | Date and time by which results are returned. Results are filtered by transaction creation date. **Note:** - It must be an RFC3339 timestamp string. - You can include a time component in your string, for example, `T23:59:59` to specify the end of the day. The time zone setting considered is `UTC`. If you do not include a time component, a default time value of `T00:00:00` (midnight) in `UTC` is considered.
876
- page_size: 1000, # Integer | The number of items in the response.
1014
+ page_size: 50, # Integer | The number of items in the response.
877
1015
  skip: 56 # Integer | The number of items to skip when paging through large result sets.
878
1016
  }
879
1017
 
@@ -897,12 +1035,12 @@ Name | Type | Description | Notes
897
1035
  **loyalty_transaction_type** | **String**| Filter results by loyalty transaction type: - &#x60;manual&#x60;: Loyalty transaction that was done manually. - &#x60;session&#x60;: Loyalty transaction that resulted from a customer session. - &#x60;import&#x60;: Loyalty transaction that was imported from a CSV file. | [optional]
898
1036
  **start_date** | **DateTime**| Date and time from which results are returned. Results are filtered by transaction creation date. **Note:** - It must be an RFC3339 timestamp string. - You can include a time component in your string, for example, &#x60;T23:59:59&#x60; to specify the end of the day. The time zone setting considered is &#x60;UTC&#x60;. If you do not include a time component, a default time value of &#x60;T00:00:00&#x60; (midnight) in &#x60;UTC&#x60; is considered. | [optional]
899
1037
  **end_date** | **DateTime**| Date and time by which results are returned. Results are filtered by transaction creation date. **Note:** - It must be an RFC3339 timestamp string. - You can include a time component in your string, for example, &#x60;T23:59:59&#x60; to specify the end of the day. The time zone setting considered is &#x60;UTC&#x60;. If you do not include a time component, a default time value of &#x60;T00:00:00&#x60; (midnight) in &#x60;UTC&#x60; is considered. | [optional]
900
- **page_size** | **Integer**| The number of items in the response. | [optional] [default to 1000]
1038
+ **page_size** | **Integer**| The number of items in the response. | [optional] [default to 50]
901
1039
  **skip** | **Integer**| The number of items to skip when paging through large result sets. | [optional]
902
1040
 
903
1041
  ### Return type
904
1042
 
905
- [**InlineResponse2001**](InlineResponse2001.md)
1043
+ [**InlineResponse2003**](InlineResponse2003.md)
906
1044
 
907
1045
  ### Authorization
908
1046
 
@@ -916,7 +1054,7 @@ Name | Type | Description | Notes
916
1054
 
917
1055
  ## get_loyalty_program_profile_points
918
1056
 
919
- > InlineResponse2004 get_loyalty_program_profile_points(loyalty_program_id, integration_id, opts)
1057
+ > InlineResponse2006 get_loyalty_program_profile_points(loyalty_program_id, integration_id, opts)
920
1058
 
921
1059
  List customer's unused loyalty points
922
1060
 
@@ -968,7 +1106,7 @@ Name | Type | Description | Notes
968
1106
 
969
1107
  ### Return type
970
1108
 
971
- [**InlineResponse2004**](InlineResponse2004.md)
1109
+ [**InlineResponse2006**](InlineResponse2006.md)
972
1110
 
973
1111
  ### Authorization
974
1112
 
@@ -982,7 +1120,7 @@ Name | Type | Description | Notes
982
1120
 
983
1121
  ## get_loyalty_program_profile_transactions
984
1122
 
985
- > InlineResponse2002 get_loyalty_program_profile_transactions(loyalty_program_id, integration_id, opts)
1123
+ > InlineResponse2004 get_loyalty_program_profile_transactions(loyalty_program_id, integration_id, opts)
986
1124
 
987
1125
  List customer's loyalty transactions
988
1126
 
@@ -1038,7 +1176,7 @@ Name | Type | Description | Notes
1038
1176
 
1039
1177
  ### Return type
1040
1178
 
1041
- [**InlineResponse2002**](InlineResponse2002.md)
1179
+ [**InlineResponse2004**](InlineResponse2004.md)
1042
1180
 
1043
1181
  ### Authorization
1044
1182
 
@@ -1356,8 +1494,9 @@ end
1356
1494
  api_instance = TalonOne::IntegrationApi.new
1357
1495
  body = TalonOne::IntegrationEventV2Request.new # IntegrationEventV2Request | body
1358
1496
  opts = {
1359
- silent: 'yes', # String | Possible values: `yes` or `no`. - `yes`: Increases the perfomance of the API call by returning a 204 response. - `no`: Returns a 200 response that contains the updated customer profiles.
1360
- dry: true # Boolean | Indicates whether to persist the changes. Changes are ignored when `dry=true`.
1497
+ silent: 'yes', # String | Possible values: `yes` or `no`. - `yes`: Increases the performance of the API call by returning a 204 response. - `no`: Returns a 200 response that contains the updated customer profiles.
1498
+ dry: true, # Boolean | Indicates whether to persist the changes. Changes are ignored when `dry=true`.
1499
+ force_complete_evaluation: false # Boolean | Forces evaluation for all matching campaigns regardless of the [campaign evaluation mode](https://docs.talon.one/docs/product/applications/managing-campaign-evaluation#setting-campaign-evaluation-mode). Requires `dry=true`.
1361
1500
  }
1362
1501
 
1363
1502
  begin
@@ -1375,8 +1514,9 @@ end
1375
1514
  Name | Type | Description | Notes
1376
1515
  ------------- | ------------- | ------------- | -------------
1377
1516
  **body** | [**IntegrationEventV2Request**](IntegrationEventV2Request.md)| body |
1378
- **silent** | **String**| Possible values: &#x60;yes&#x60; or &#x60;no&#x60;. - &#x60;yes&#x60;: Increases the perfomance of the API call by returning a 204 response. - &#x60;no&#x60;: Returns a 200 response that contains the updated customer profiles. | [optional] [default to &#39;yes&#39;]
1517
+ **silent** | **String**| Possible values: &#x60;yes&#x60; or &#x60;no&#x60;. - &#x60;yes&#x60;: Increases the performance of the API call by returning a 204 response. - &#x60;no&#x60;: Returns a 200 response that contains the updated customer profiles. | [optional] [default to &#39;yes&#39;]
1379
1518
  **dry** | **Boolean**| Indicates whether to persist the changes. Changes are ignored when &#x60;dry&#x3D;true&#x60;. | [optional]
1519
+ **force_complete_evaluation** | **Boolean**| Forces evaluation for all matching campaigns regardless of the [campaign evaluation mode](https://docs.talon.one/docs/product/applications/managing-campaign-evaluation#setting-campaign-evaluation-mode). Requires &#x60;dry&#x3D;true&#x60;. | [optional] [default to false]
1380
1520
 
1381
1521
  ### Return type
1382
1522
 
@@ -1642,7 +1782,7 @@ end
1642
1782
  api_instance = TalonOne::IntegrationApi.new
1643
1783
  body = TalonOne::MultipleCustomerProfileIntegrationRequest.new # MultipleCustomerProfileIntegrationRequest | body
1644
1784
  opts = {
1645
- silent: 'yes' # String | Possible values: `yes` or `no`. - `yes`: Increases the perfomance of the API call by returning a 204 response. - `no`: Returns a 200 response that contains the updated customer profiles.
1785
+ silent: 'yes' # String | Possible values: `yes` or `no`. - `yes`: Increases the performance of the API call by returning a 204 response. - `no`: Returns a 200 response that contains the updated customer profiles.
1646
1786
  }
1647
1787
 
1648
1788
  begin
@@ -1660,7 +1800,7 @@ end
1660
1800
  Name | Type | Description | Notes
1661
1801
  ------------- | ------------- | ------------- | -------------
1662
1802
  **body** | [**MultipleCustomerProfileIntegrationRequest**](MultipleCustomerProfileIntegrationRequest.md)| body |
1663
- **silent** | **String**| Possible values: &#x60;yes&#x60; or &#x60;no&#x60;. - &#x60;yes&#x60;: Increases the perfomance of the API call by returning a 204 response. - &#x60;no&#x60;: Returns a 200 response that contains the updated customer profiles. | [optional] [default to &#39;yes&#39;]
1803
+ **silent** | **String**| Possible values: &#x60;yes&#x60; or &#x60;no&#x60;. - &#x60;yes&#x60;: Increases the performance of the API call by returning a 204 response. - &#x60;no&#x60;: Returns a 200 response that contains the updated customer profiles. | [optional] [default to &#39;yes&#39;]
1664
1804
 
1665
1805
  ### Return type
1666
1806
 
data/docs/LedgerInfo.md CHANGED
@@ -6,10 +6,12 @@ Name | Type | Description | Notes
6
6
  ------------ | ------------- | ------------- | -------------
7
7
  **current_balance** | **Float** | Sum of currently active points. |
8
8
  **pending_balance** | **Float** | Sum of pending points. |
9
+ **negative_balance** | **Float** | Sum of negative points. This implies that &#x60;currentBalance&#x60; is &#x60;0&#x60;. |
9
10
  **expired_balance** | **Float** | **DEPRECATED** Value is shown as 0. |
10
11
  **spent_balance** | **Float** | **DEPRECATED** Value is shown as 0. |
11
12
  **tentative_current_balance** | **Float** | The tentative points balance, reflecting the &#x60;currentBalance&#x60; and all point additions and deductions within the current open customer session. When the session is closed, the effects are applied and the &#x60;currentBalance&#x60; is updated to this value. **Note:** Tentative balances are specific to the current session and do not take into account other open sessions for the given customer. |
12
13
  **tentative_pending_balance** | **Float** | The tentative points balance, reflecting the &#x60;pendingBalance&#x60; and all point additions with a future activation date within the current open customer session. When the session is closed, the effects are applied and the &#x60;pendingBalance&#x60; is updated to this value. **Note:** Tentative balances are specific to the current session and do not take into account other open sessions for the given customer. | [optional]
14
+ **tentative_negative_balance** | **Float** | The tentative negative balance after all additions and deductions from the current customer session are applied to &#x60;negativeBalance&#x60;. When the session is closed, the tentative effects are applied and &#x60;negativeBalance&#x60; is updated to this value. **Note:** Tentative balances are specific to the current session and do not take into account other open sessions for the given customer. |
13
15
  **current_tier** | [**Tier**](Tier.md) | | [optional]
14
16
  **points_to_next_tier** | **Float** | Points required to move up a tier. | [optional]
15
17
 
@@ -20,10 +22,12 @@ require 'TalonOne'
20
22
 
21
23
  instance = TalonOne::LedgerInfo.new(current_balance: 100.0,
22
24
  pending_balance: 10.0,
25
+ negative_balance: 10.0,
23
26
  expired_balance: 0.0,
24
27
  spent_balance: 0.0,
25
28
  tentative_current_balance: 100.0,
26
29
  tentative_pending_balance: 20.0,
30
+ tentative_negative_balance: 100.0,
27
31
  current_tier: null,
28
32
  points_to_next_tier: 20.0)
29
33
  ```
@@ -16,6 +16,7 @@ Name | Type | Description | Notes
16
16
  **id** | **Integer** | ID of the loyalty ledger transaction. |
17
17
  **ruleset_id** | **Integer** | The ID of the ruleset containing the rule that triggered this effect. | [optional]
18
18
  **rule_name** | **String** | The name of the rule that triggered this effect. | [optional]
19
+ **flags** | [**LoyaltyLedgerEntryFlags**](LoyaltyLedgerEntryFlags.md) | | [optional]
19
20
 
20
21
  ## Code Sample
21
22
 
@@ -33,7 +34,8 @@ instance = TalonOne::LedgerTransactionLogEntryIntegrationAPI.new(created: null,
33
34
  amount: 10.25,
34
35
  id: 123,
35
36
  ruleset_id: 11,
36
- rule_name: Add 2 points)
37
+ rule_name: Add 2 points,
38
+ flags: null)
37
39
  ```
38
40
 
39
41
 
data/docs/LimitCounter.md CHANGED
@@ -5,7 +5,7 @@
5
5
  Name | Type | Description | Notes
6
6
  ------------ | ------------- | ------------- | -------------
7
7
  **campaign_id** | **Integer** | The ID of the campaign that owns this entity. |
8
- **application_id** | **Integer** | The ID of the application that owns this entity. |
8
+ **application_id** | **Integer** | The ID of the Application that owns this entity. |
9
9
  **account_id** | **Integer** | The ID of the account that owns this entity. |
10
10
  **id** | **Integer** | Unique ID for this entity. |
11
11
  **action** | **String** | The limitable action of the limit counter. |
@@ -8,6 +8,7 @@ Name | Type | Description | Notes
8
8
  **pending_points** | **Float** | Total amount of points awarded to this customer but not available until their start date. | [optional]
9
9
  **spent_points** | **Float** | Total amount of points already spent by this customer. | [optional]
10
10
  **expired_points** | **Float** | Total amount of points awarded but never redeemed. They cannot be used anymore. | [optional]
11
+ **negative_points** | **Float** | Total amount of negative points. This implies that &#x60;activePoints&#x60; is &#x60;0&#x60;. | [optional]
11
12
 
12
13
  ## Code Sample
13
14
 
@@ -17,7 +18,8 @@ require 'TalonOne'
17
18
  instance = TalonOne::LoyaltyBalance.new(active_points: 286.0,
18
19
  pending_points: 50.0,
19
20
  spent_points: 150.0,
20
- expired_points: 286.0)
21
+ expired_points: 286.0,
22
+ negative_points: 286.0)
21
23
  ```
22
24
 
23
25
 
@@ -8,6 +8,7 @@ Name | Type | Description | Notes
8
8
  **pending_points** | **Float** | Total amount of points awarded to this customer but not available until their start date. | [optional]
9
9
  **spent_points** | **Float** | Total amount of points already spent by this customer. | [optional]
10
10
  **expired_points** | **Float** | Total amount of points awarded but never redeemed. They cannot be used anymore. | [optional]
11
+ **negative_points** | **Float** | Total amount of negative points. This implies that &#x60;activePoints&#x60; is &#x60;0&#x60;. | [optional]
11
12
  **current_tier** | [**Tier**](Tier.md) | | [optional]
12
13
  **projected_tier** | [**ProjectedTier**](ProjectedTier.md) | | [optional]
13
14
  **points_to_next_tier** | **Float** | The number of points required to move up a tier. | [optional]
@@ -22,6 +23,7 @@ instance = TalonOne::LoyaltyBalanceWithTier.new(active_points: 286.0,
22
23
  pending_points: 50.0,
23
24
  spent_points: 150.0,
24
25
  expired_points: 286.0,
26
+ negative_points: 286.0,
25
27
  current_tier: null,
26
28
  projected_tier: null,
27
29
  points_to_next_tier: 20.0,
@@ -13,7 +13,7 @@ Name | Type | Description | Notes
13
13
  require 'TalonOne'
14
14
 
15
15
  instance = TalonOne::LoyaltyBalances.new(balance: null,
16
- subledger_balances: {&quot;mysubledger&quot;:{&quot;activePoints&quot;:286,&quot;pendingPoints&quot;:50,&quot;spentPoints&quot;:150,&quot;expiredPoints&quot;:25}})
16
+ subledger_balances: {&quot;mysubledger&quot;:{&quot;activePoints&quot;:286,&quot;pendingPoints&quot;:50,&quot;spentPoints&quot;:150,&quot;expiredPoints&quot;:25,&quot;negativePoints&quot;:0}})
17
17
  ```
18
18
 
19
19
 
@@ -13,7 +13,7 @@ Name | Type | Description | Notes
13
13
  require 'TalonOne'
14
14
 
15
15
  instance = TalonOne::LoyaltyBalancesWithTiers.new(balance: null,
16
- subledger_balances: {&quot;mysubledger&quot;:{&quot;activePoints&quot;:286,&quot;pendingPoints&quot;:50,&quot;spentPoints&quot;:150,&quot;expiredPoints&quot;:25}})
16
+ subledger_balances: {&quot;mysubledger&quot;:{&quot;activePoints&quot;:286,&quot;pendingPoints&quot;:50,&quot;spentPoints&quot;:150,&quot;expiredPoints&quot;:25,&quot;negativePoints&quot;:0}})
17
17
  ```
18
18
 
19
19
 
@@ -14,7 +14,7 @@ Name | Type | Description | Notes
14
14
  require 'TalonOne'
15
15
 
16
16
  instance = TalonOne::LoyaltyCardBalances.new(balance: null,
17
- subledger_balances: {&quot;mysubledger&quot;:{&quot;activePoints&quot;:286,&quot;pendingPoints&quot;:50,&quot;spentPoints&quot;:150,&quot;expiredPoints&quot;:25}},
17
+ subledger_balances: {&quot;mysubledger&quot;:{&quot;activePoints&quot;:286,&quot;pendingPoints&quot;:50,&quot;spentPoints&quot;:150,&quot;expiredPoints&quot;:25,&quot;negativePoints&quot;:0}},
18
18
  profiles: null)
19
19
  ```
20
20
 
@@ -13,7 +13,7 @@ Name | Type | Description | Notes
13
13
  require 'TalonOne'
14
14
 
15
15
  instance = TalonOne::LoyaltyLedger.new(ledger: null,
16
- sub_ledgers: {&quot;mysubledger&quot;:{&quot;total&quot;:0,&quot;totalActivePoints&quot;:286,&quot;totalPendingPoints&quot;:50,&quot;totalSpentPoints&quot;:150,&quot;totalExpiredPoints&quot;:25}})
16
+ sub_ledgers: {&quot;mysubledger&quot;:{&quot;total&quot;:0,&quot;totalActivePoints&quot;:286,&quot;totalPendingPoints&quot;:50,&quot;totalSpentPoints&quot;:150,&quot;totalExpiredPoints&quot;:25,&quot;totalNegativePoints&quot;:0}})
17
17
  ```
18
18
 
19
19
 
@@ -18,6 +18,7 @@ Name | Type | Description | Notes
18
18
  **sub_ledger_id** | **String** | This specifies if we are adding loyalty points to the main ledger or a subledger. |
19
19
  **user_id** | **Integer** | This is the ID of the user who created this entry, if the addition or subtraction was done manually. | [optional]
20
20
  **archived** | **Boolean** | Indicates if the entry belongs to the archived session. | [optional]
21
+ **flags** | [**LoyaltyLedgerEntryFlags**](LoyaltyLedgerEntryFlags.md) | | [optional]
21
22
 
22
23
  ## Code Sample
23
24
 
@@ -37,7 +38,8 @@ instance = TalonOne::LoyaltyLedgerEntry.new(created: 2021-07-20T22:00Z,
37
38
  name: Add points on purchase,
38
39
  sub_ledger_id: mysubledger,
39
40
  user_id: 499,
40
- archived: false)
41
+ archived: false,
42
+ flags: null)
41
43
  ```
42
44
 
43
45
 
@@ -0,0 +1,17 @@
1
+ # TalonOne::LoyaltyLedgerEntryFlags
2
+
3
+ ## Properties
4
+
5
+ Name | Type | Description | Notes
6
+ ------------ | ------------- | ------------- | -------------
7
+ **creates_negative_balance** | **Boolean** | Set to true if the entry creates negative balance. | [optional]
8
+
9
+ ## Code Sample
10
+
11
+ ```ruby
12
+ require 'TalonOne'
13
+
14
+ instance = TalonOne::LoyaltyLedgerEntryFlags.new(creates_negative_balance: null)
15
+ ```
16
+
17
+
@@ -20,7 +20,7 @@ Name | Type | Description | Notes
20
20
  **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: &#x60;30s&#x60;, &#x60;40m&#x60;, &#x60;1h&#x60;, &#x60;5D&#x60;, &#x60;7W&#x60;, &#x60;10M&#x60;, &#x60;15Y&#x60;. Available units: - &#x60;s&#x60;: seconds - &#x60;m&#x60;: minutes - &#x60;h&#x60;: hours - &#x60;D&#x60;: days - &#x60;W&#x60;: weeks - &#x60;M&#x60;: months - &#x60;Y&#x60;: years You can round certain units up or down: - &#x60;_D&#x60; for rounding down days only. Signifies the start of the day. - &#x60;_U&#x60; for rounding up days, weeks, months and years. Signifies the end of the day, week, month or year. | [optional]
21
21
  **tiers_downgrade_policy** | **String** | The policy that defines how customer tiers are downgraded in the loyalty program after tier reevaluation. - &#x60;one_down&#x60;: If the customer doesn&#39;t have enough points to stay in the current tier, they are downgraded by one tier. - &#x60;balance_based&#x60;: The customer&#39;s tier is reevaluated based on the amount of active points they have at the moment. | [optional]
22
22
  **card_code_settings** | [**CodeGeneratorSettings**](CodeGeneratorSettings.md) | | [optional]
23
- **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). - &#x60;only_pending&#x60;: Only pending points can be rolled back. - &#x60;within_balance&#x60;: Available active points can be rolled back if there aren&#39;t enough pending points. The active balance of the customer cannot be negative. | [optional]
23
+ **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). - &#x60;only_pending&#x60;: Only pending points can be rolled back. - &#x60;within_balance&#x60;: Available active points can be rolled back if there aren&#39;t enough pending points. The active balance of the customer cannot be negative. - &#x60;unlimited&#x60;: Allows negative balance without any limit. | [optional]
24
24
  **account_id** | **Integer** | The ID of the Talon.One account that owns this program. |
25
25
  **name** | **String** | The internal name for the Loyalty Program. This is an immutable value. |
26
26
  **tiers** | [**Array&lt;LoyaltyTier&gt;**](LoyaltyTier.md) | The tiers in this loyalty program. | [optional]
@@ -6,10 +6,12 @@ Name | Type | Description | Notes
6
6
  ------------ | ------------- | ------------- | -------------
7
7
  **current_balance** | **Float** | Sum of currently active points. |
8
8
  **pending_balance** | **Float** | Sum of pending points. |
9
+ **negative_balance** | **Float** | Sum of negative points. This implies that &#x60;currentBalance&#x60; is &#x60;0&#x60;. |
9
10
  **expired_balance** | **Float** | **DEPRECATED** Value is shown as 0. |
10
11
  **spent_balance** | **Float** | **DEPRECATED** Value is shown as 0. |
11
12
  **tentative_current_balance** | **Float** | The tentative points balance, reflecting the &#x60;currentBalance&#x60; and all point additions and deductions within the current open customer session. When the session is closed, the effects are applied and the &#x60;currentBalance&#x60; is updated to this value. **Note:** Tentative balances are specific to the current session and do not take into account other open sessions for the given customer. |
12
13
  **tentative_pending_balance** | **Float** | The tentative points balance, reflecting the &#x60;pendingBalance&#x60; and all point additions with a future activation date within the current open customer session. When the session is closed, the effects are applied and the &#x60;pendingBalance&#x60; is updated to this value. **Note:** Tentative balances are specific to the current session and do not take into account other open sessions for the given customer. | [optional]
14
+ **tentative_negative_balance** | **Float** | The tentative negative balance after all additions and deductions from the current customer session are applied to &#x60;negativeBalance&#x60;. When the session is closed, the tentative effects are applied and &#x60;negativeBalance&#x60; is updated to this value. **Note:** Tentative balances are specific to the current session and do not take into account other open sessions for the given customer. |
13
15
 
14
16
  ## Code Sample
15
17
 
@@ -18,10 +20,12 @@ require 'TalonOne'
18
20
 
19
21
  instance = TalonOne::LoyaltyProgramBalance.new(current_balance: 100.0,
20
22
  pending_balance: 10.0,
23
+ negative_balance: 10.0,
21
24
  expired_balance: 0.0,
22
25
  spent_balance: 0.0,
23
26
  tentative_current_balance: 100.0,
24
- tentative_pending_balance: 20.0)
27
+ tentative_pending_balance: 20.0,
28
+ tentative_negative_balance: 100.0)
25
29
  ```
26
30
 
27
31
 
@@ -22,6 +22,7 @@ Name | Type | Description | Notes
22
22
  **user_email** | **String** | The email of the Campaign Manager account that manually added or deducted points. Applies only to manual transactions. | [optional]
23
23
  **ruleset_id** | **Integer** | ID of the ruleset containing the rule that triggered the effect. Applies only for transactions that resulted from a customer session. | [optional]
24
24
  **rule_name** | **String** | Name of the rule that triggered the effect. Applies only for transactions that resulted from a customer session. | [optional]
25
+ **flags** | [**LoyaltyLedgerEntryFlags**](LoyaltyLedgerEntryFlags.md) | | [optional]
25
26
 
26
27
  ## Code Sample
27
28
 
@@ -45,7 +46,8 @@ instance = TalonOne::LoyaltyProgramTransaction.new(id: 123,
45
46
  user_id: 5,
46
47
  user_email: john.doe@example.com,
47
48
  ruleset_id: 11,
48
- rule_name: 10 points for every $100 spent)
49
+ rule_name: 10 points for every $100 spent,
50
+ flags: null)
49
51
  ```
50
52
 
51
53
 
@@ -9,6 +9,7 @@ Name | Type | Description | Notes
9
9
  **total_pending_points** | **Float** | Total amount of pending points, which are not active yet but will become active in the future. |
10
10
  **total_spent_points** | **Float** | Total amount of points already spent by this customer. |
11
11
  **total_expired_points** | **Float** | Total amount of points, that expired without ever being spent. |
12
+ **total_negative_points** | **Float** | Total amount of negative points. This implies that &#x60;totalActivePoints&#x60; is &#x60;0&#x60;. |
12
13
  **transactions** | [**Array&lt;LoyaltyLedgerEntry&gt;**](LoyaltyLedgerEntry.md) | List of all events that have happened such as additions, subtractions and expiries. | [optional]
13
14
  **expiring_points** | [**Array&lt;LoyaltyLedgerEntry&gt;**](LoyaltyLedgerEntry.md) | List of all points that will expire. | [optional]
14
15
  **active_points** | [**Array&lt;LoyaltyLedgerEntry&gt;**](LoyaltyLedgerEntry.md) | List of all currently active points. | [optional]
@@ -26,6 +27,7 @@ instance = TalonOne::LoyaltySubLedger.new(total: null,
26
27
  total_pending_points: null,
27
28
  total_spent_points: null,
28
29
  total_expired_points: null,
30
+ total_negative_points: null,
29
31
  transactions: null,
30
32
  expiring_points: null,
31
33
  active_points: null,