talon_one 2.5.1 → 3.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1133) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +164 -56
  3. data/docs/AcceptCouponEffectProps.md +1 -1
  4. data/docs/AcceptReferralEffectProps.md +1 -1
  5. data/docs/AccessLogEntry.md +15 -10
  6. data/docs/Account.md +6 -6
  7. data/docs/AccountAdditionalCost.md +10 -10
  8. data/docs/AccountAnalytics.md +19 -19
  9. data/docs/AccountDashboardStatistic.md +27 -0
  10. data/docs/AccountDashboardStatisticApiCalls.md +19 -0
  11. data/docs/AccountDashboardStatisticCampaigns.md +19 -0
  12. data/docs/AccountDashboardStatisticDiscount.md +21 -0
  13. data/docs/AccountDashboardStatisticLoyaltyPoints.md +19 -0
  14. data/docs/AccountDashboardStatisticReferrals.md +19 -0
  15. data/docs/AccountDashboardStatisticRevenue.md +21 -0
  16. data/docs/AccountLimits.md +12 -12
  17. data/docs/AddFreeItemEffectProps.md +2 -2
  18. data/docs/AddItemCatalogAction.md +23 -0
  19. data/docs/AddLoyaltyPoints.md +31 -0
  20. data/docs/AddLoyaltyPointsEffectProps.md +8 -4
  21. data/docs/AddedDeductedPointsNotificationPolicy.md +19 -0
  22. data/docs/Application.md +13 -13
  23. data/docs/ApplicationAPIKey.md +7 -7
  24. data/docs/ApplicationApiHealth.md +2 -2
  25. data/docs/ApplicationCampaignStats.md +6 -6
  26. data/docs/ApplicationCustomer.md +9 -7
  27. data/docs/ApplicationEvent.md +3 -3
  28. data/docs/ApplicationReferee.md +4 -4
  29. data/docs/ApplicationSession.md +5 -5
  30. data/docs/ApplicationSessionEntity.md +1 -1
  31. data/docs/Attribute.md +17 -13
  32. data/docs/Audience.md +14 -6
  33. data/docs/AudienceAnalytics.md +19 -0
  34. data/docs/AudienceCustomer.md +41 -0
  35. data/docs/AudienceIntegrationID.md +17 -0
  36. data/docs/AudienceMembership.md +2 -2
  37. data/docs/AwardGiveawayEffectProps.md +5 -5
  38. data/docs/BaseLoyaltyProgram.md +7 -5
  39. data/docs/BaseNotification.md +21 -0
  40. data/docs/BaseNotificationEntity.md +17 -0
  41. data/docs/BaseNotificationWebhook.md +25 -0
  42. data/docs/BaseNotifications.md +17 -0
  43. data/docs/BaseSamlConnection.md +1 -1
  44. data/docs/BulkApplicationNotification.md +1 -1
  45. data/docs/BulkCampaignNotification.md +1 -1
  46. data/docs/Campaign.md +27 -25
  47. data/docs/CampaignActivationRequest.md +17 -0
  48. data/docs/CampaignAnalytics.md +8 -8
  49. data/docs/CampaignCollection.md +3 -3
  50. data/docs/CampaignCollectionWithoutPayload.md +3 -3
  51. data/docs/CampaignCopy.md +8 -8
  52. data/docs/CampaignCreatedNotification.md +5 -1
  53. data/docs/CampaignDeletedNotification.md +3 -1
  54. data/docs/CampaignEditedNotification.md +3 -1
  55. data/docs/CampaignGroup.md +8 -8
  56. data/docs/CampaignNotification.md +1 -1
  57. data/docs/CampaignPrioritiesChangedNotification.md +4 -4
  58. data/docs/CampaignRulesetChangedNotification.md +1 -1
  59. data/docs/CampaignSearch.md +1 -1
  60. data/docs/CampaignSet.md +7 -5
  61. data/docs/CampaignSetBranchNode.md +6 -6
  62. data/docs/CampaignSetIDs.md +1 -1
  63. data/docs/CampaignSetLeafNode.md +1 -1
  64. data/docs/CampaignSetNode.md +1 -1
  65. data/docs/CampaignSetV2.md +4 -4
  66. data/docs/CampaignStateChangedNotification.md +4 -2
  67. data/docs/CampaignTemplate.md +23 -21
  68. data/docs/CampaignTemplateParams.md +5 -3
  69. data/docs/CardLedgerTransactionLogEntry.md +41 -0
  70. data/docs/CardLedgerTransactionLogEntryIntegrationAPI.md +41 -0
  71. data/docs/CartItem.md +15 -13
  72. data/docs/Catalog.md +8 -8
  73. data/docs/CatalogAction.md +19 -0
  74. data/docs/CatalogActionFilter.md +21 -0
  75. data/docs/CatalogItem.md +29 -0
  76. data/docs/CatalogSyncRequest.md +19 -0
  77. data/docs/CatalogsStrikethroughNotificationPolicy.md +17 -0
  78. data/docs/Change.md +10 -8
  79. data/docs/ChangeProfilePassword.md +2 -2
  80. data/docs/CodeGeneratorSettings.md +2 -2
  81. data/docs/Collection.md +3 -3
  82. data/docs/CollectionItem.md +17 -0
  83. data/docs/CollectionWithoutPayload.md +3 -3
  84. data/docs/Coupon.md +18 -12
  85. data/docs/CouponConstraints.md +6 -4
  86. data/docs/CouponCreatedEffectProps.md +2 -2
  87. data/docs/CouponCreationJob.md +16 -14
  88. data/docs/CouponReservations.md +2 -2
  89. data/docs/CouponSearch.md +1 -1
  90. data/docs/CouponsNotificationPolicy.md +19 -0
  91. data/docs/CreateApplicationAPIKey.md +2 -2
  92. data/docs/CreateManagementKey.md +23 -0
  93. data/docs/CreateTemplateCampaign.md +2 -0
  94. data/docs/CustomEffect.md +9 -7
  95. data/docs/CustomEffectProps.md +11 -3
  96. data/docs/CustomerActivityReport.md +2 -2
  97. data/docs/CustomerAnalytics.md +7 -7
  98. data/docs/CustomerProfile.md +10 -8
  99. data/docs/CustomerProfileIntegrationRequestV2.md +4 -2
  100. data/docs/CustomerProfileUpdateV2Response.md +17 -0
  101. data/docs/CustomerSession.md +10 -10
  102. data/docs/CustomerSessionV2.md +17 -15
  103. data/docs/DeductLoyaltyPoints.md +23 -0
  104. data/docs/DeductLoyaltyPointsEffectProps.md +7 -7
  105. data/docs/Effect.md +9 -7
  106. data/docs/EffectEntity.md +9 -7
  107. data/docs/Endpoint.md +17 -0
  108. data/docs/Entity.md +2 -2
  109. data/docs/EntityWithTalangVisibleID.md +2 -2
  110. data/docs/Environment.md +3 -3
  111. data/docs/ErrorSource.md +1 -1
  112. data/docs/EvaluableCampaignIds.md +17 -0
  113. data/docs/Event.md +6 -6
  114. data/docs/EventType.md +8 -8
  115. data/docs/EventV2.md +6 -4
  116. data/docs/ExpiringPointsNotificationPolicy.md +19 -0
  117. data/docs/ExpiringPointsNotificationTrigger.md +19 -0
  118. data/docs/Export.md +5 -5
  119. data/docs/FeatureFlag.md +7 -7
  120. data/docs/FeedNotification.md +6 -6
  121. data/docs/FrontendState.md +16 -0
  122. data/docs/Giveaway.md +10 -6
  123. data/docs/GiveawaysPool.md +8 -6
  124. data/docs/Import.md +4 -4
  125. data/docs/ImportEntity.md +1 -1
  126. data/docs/InlineResponse200.md +1 -1
  127. data/docs/InlineResponse2001.md +3 -3
  128. data/docs/InlineResponse20010.md +2 -2
  129. data/docs/InlineResponse20011.md +2 -2
  130. data/docs/InlineResponse20012.md +3 -3
  131. data/docs/InlineResponse20013.md +3 -5
  132. data/docs/InlineResponse20014.md +3 -3
  133. data/docs/InlineResponse20015.md +4 -2
  134. data/docs/InlineResponse20016.md +1 -1
  135. data/docs/InlineResponse20017.md +3 -1
  136. data/docs/InlineResponse20018.md +1 -1
  137. data/docs/InlineResponse20019.md +2 -2
  138. data/docs/InlineResponse2002.md +3 -3
  139. data/docs/InlineResponse20020.md +3 -5
  140. data/docs/InlineResponse20021.md +5 -5
  141. data/docs/InlineResponse20022.md +5 -3
  142. data/docs/InlineResponse20023.md +5 -3
  143. data/docs/InlineResponse20024.md +3 -3
  144. data/docs/InlineResponse20025.md +3 -3
  145. data/docs/InlineResponse20026.md +3 -3
  146. data/docs/InlineResponse20027.md +3 -3
  147. data/docs/InlineResponse20028.md +2 -2
  148. data/docs/InlineResponse20029.md +4 -4
  149. data/docs/InlineResponse2003.md +2 -2
  150. data/docs/InlineResponse20030.md +5 -3
  151. data/docs/InlineResponse20031.md +2 -2
  152. data/docs/InlineResponse20032.md +19 -0
  153. data/docs/InlineResponse20033.md +19 -0
  154. data/docs/InlineResponse20034.md +19 -0
  155. data/docs/InlineResponse20035.md +19 -0
  156. data/docs/InlineResponse20036.md +19 -0
  157. data/docs/InlineResponse20037.md +19 -0
  158. data/docs/InlineResponse20038.md +21 -0
  159. data/docs/InlineResponse20039.md +19 -0
  160. data/docs/InlineResponse2004.md +2 -2
  161. data/docs/InlineResponse20040.md +19 -0
  162. data/docs/InlineResponse2005.md +3 -3
  163. data/docs/InlineResponse2006.md +3 -3
  164. data/docs/InlineResponse2007.md +2 -2
  165. data/docs/InlineResponse2008.md +3 -5
  166. data/docs/InlineResponse2009.md +3 -5
  167. data/docs/InlineResponse201.md +1 -1
  168. data/docs/IntegrationApi.md +516 -87
  169. data/docs/IntegrationCoupon.md +59 -0
  170. data/docs/IntegrationCustomerSessionResponse.md +3 -1
  171. data/docs/IntegrationEntity.md +2 -2
  172. data/docs/IntegrationEvent.md +2 -2
  173. data/docs/IntegrationEventV2Request.md +6 -4
  174. data/docs/IntegrationProfileEntity.md +1 -1
  175. data/docs/IntegrationRequest.md +1 -1
  176. data/docs/IntegrationStateV2.md +2 -2
  177. data/docs/InventoryCoupon.md +18 -12
  178. data/docs/InventoryReferral.md +6 -6
  179. data/docs/ItemAttribute.md +21 -0
  180. data/docs/LedgerEntry.md +12 -12
  181. data/docs/LedgerInfo.md +12 -12
  182. data/docs/LedgerTransactionLogEntryIntegrationAPI.md +39 -0
  183. data/docs/LimitCounter.md +9 -9
  184. data/docs/LoyaltyBalance.md +23 -0
  185. data/docs/LoyaltyBalances.md +19 -0
  186. data/docs/LoyaltyCard.md +13 -9
  187. data/docs/LoyaltyCardProfileRegistration.md +3 -3
  188. data/docs/LoyaltyCardRegistration.md +1 -1
  189. data/docs/LoyaltyDashboardData.md +6 -6
  190. data/docs/LoyaltyDashboardPointsBreakdown.md +2 -2
  191. data/docs/LoyaltyLedger.md +1 -1
  192. data/docs/LoyaltyLedgerEntry.md +17 -15
  193. data/docs/LoyaltyLedgerTransactions.md +19 -0
  194. data/docs/LoyaltyProgram.md +8 -6
  195. data/docs/LoyaltyProgramBalance.md +11 -9
  196. data/docs/LoyaltyProgramLedgers.md +4 -4
  197. data/docs/LoyaltyProgramTransaction.md +49 -0
  198. data/docs/LoyaltyStatistics.md +6 -6
  199. data/docs/LoyaltySubLedger.md +1 -1
  200. data/docs/LoyaltyTier.md +3 -3
  201. data/docs/ManagementApi.md +2621 -736
  202. data/docs/ManagementKey.md +31 -0
  203. data/docs/ModelReturn.md +3 -3
  204. data/docs/MultiApplicationEntity.md +1 -1
  205. data/docs/MultipleAudiences.md +19 -0
  206. data/docs/MultipleAudiencesItem.md +25 -0
  207. data/docs/MultipleCustomerProfileIntegrationRequestItem.md +2 -2
  208. data/docs/MultipleCustomerProfileIntegrationResponseV2.md +1 -1
  209. data/docs/MultipleNewAudiences.md +17 -0
  210. data/docs/MutableEntity.md +1 -1
  211. data/docs/NewAdditionalCost.md +8 -8
  212. data/docs/NewApplication.md +10 -10
  213. data/docs/NewApplicationAPIKey.md +8 -8
  214. data/docs/NewAttribute.md +15 -11
  215. data/docs/NewAudience.md +12 -4
  216. data/docs/NewBaseNotification.md +19 -0
  217. data/docs/NewCampaign.md +6 -6
  218. data/docs/NewCampaignGroup.md +5 -5
  219. data/docs/NewCampaignSet.md +2 -2
  220. data/docs/NewCampaignSetV2.md +2 -2
  221. data/docs/NewCampaignTemplate.md +7 -5
  222. data/docs/NewCatalog.md +5 -5
  223. data/docs/NewCouponCreationJob.md +8 -6
  224. data/docs/NewCoupons.md +14 -10
  225. data/docs/NewCouponsForMultipleRecipients.md +12 -10
  226. data/docs/NewCustomEffect.md +4 -2
  227. data/docs/NewCustomerProfile.md +1 -1
  228. data/docs/NewCustomerSession.md +6 -6
  229. data/docs/NewCustomerSessionV2.md +7 -5
  230. data/docs/NewEvent.md +2 -2
  231. data/docs/NewEventType.md +6 -6
  232. data/docs/NewGiveawaysPool.md +6 -4
  233. data/docs/NewInternalAudience.md +21 -0
  234. data/docs/NewInvitation.md +4 -4
  235. data/docs/NewLoyaltyProgram.md +7 -5
  236. data/docs/NewLoyaltyTier.md +1 -1
  237. data/docs/NewManagementKey.md +33 -0
  238. data/docs/NewMultipleAudiencesItem.md +19 -0
  239. data/docs/NewNotificationWebhook.md +4 -4
  240. data/docs/NewOutgoingIntegrationWebhook.md +19 -0
  241. data/docs/NewPassword.md +2 -2
  242. data/docs/NewPicklist.md +19 -0
  243. data/docs/NewReferral.md +3 -3
  244. data/docs/NewReferralsForMultipleAdvocates.md +4 -4
  245. data/docs/NewReturn.md +1 -1
  246. data/docs/NewRole.md +8 -8
  247. data/docs/NewRuleset.md +3 -1
  248. data/docs/NewSamlConnection.md +1 -1
  249. data/docs/NewWebhook.md +17 -15
  250. data/docs/Notification.md +3 -3
  251. data/docs/NotificationWebhook.md +7 -7
  252. data/docs/OutgoingIntegrationBrazePolicy.md +19 -0
  253. data/docs/OutgoingIntegrationConfiguration.md +23 -0
  254. data/docs/OutgoingIntegrationType.md +25 -0
  255. data/docs/OutgoingIntegrationTypes.md +17 -0
  256. data/docs/OutgoingIntegrationWebhookTemplate.md +29 -0
  257. data/docs/OutgoingIntegrationWebhookTemplates.md +17 -0
  258. data/docs/PatchItemCatalogAction.md +23 -0
  259. data/docs/PatchManyItemsCatalogAction.md +21 -0
  260. data/docs/Picklist.md +31 -0
  261. data/docs/PriorityPosition.md +19 -0
  262. data/docs/ProfileAudiencesChanges.md +2 -2
  263. data/docs/RedeemReferralEffectProps.md +2 -2
  264. data/docs/Referral.md +6 -6
  265. data/docs/ReferralConstraints.md +1 -1
  266. data/docs/ReferralCreatedEffectProps.md +1 -1
  267. data/docs/ReferralRejectionReason.md +1 -1
  268. data/docs/RejectCouponEffectProps.md +5 -5
  269. data/docs/RejectReferralEffectProps.md +5 -5
  270. data/docs/RemoveItemCatalogAction.md +17 -0
  271. data/docs/RemoveManyItemsCatalogAction.md +17 -0
  272. data/docs/ReopenSessionResponse.md +17 -0
  273. data/docs/ReserveCouponEffectProps.md +21 -0
  274. data/docs/ReturnIntegrationRequest.md +1 -1
  275. data/docs/ReturnedCartItem.md +1 -1
  276. data/docs/Role.md +13 -13
  277. data/docs/RoleAssign.md +4 -4
  278. data/docs/RoleMembership.md +2 -2
  279. data/docs/RoleV2.md +25 -0
  280. data/docs/RoleV2ApplicationDetails.md +21 -0
  281. data/docs/RoleV2PermissionSet.md +19 -0
  282. data/docs/RoleV2Permissions.md +19 -0
  283. data/docs/RoleV2PermissionsRoles.md +21 -0
  284. data/docs/RollbackAddedLoyaltyPointsEffectProps.md +8 -8
  285. data/docs/RollbackCouponEffectProps.md +1 -1
  286. data/docs/RollbackDeductedLoyaltyPointsEffectProps.md +10 -10
  287. data/docs/RollbackDiscountEffectProps.md +3 -3
  288. data/docs/RollbackReferralEffectProps.md +1 -1
  289. data/docs/Rule.md +5 -1
  290. data/docs/RuleFailureReason.md +12 -12
  291. data/docs/Ruleset.md +7 -5
  292. data/docs/SamlConnection.md +3 -3
  293. data/docs/Session.md +2 -2
  294. data/docs/SetDiscountEffectProps.md +4 -4
  295. data/docs/SetDiscountPerAdditionalCostEffectProps.md +5 -5
  296. data/docs/SetDiscountPerAdditionalCostPerItemEffectProps.md +5 -5
  297. data/docs/SetDiscountPerItemEffectProps.md +9 -5
  298. data/docs/ShowBundleMetadataEffectProps.md +3 -3
  299. data/docs/ShowNotificationEffectProps.md +3 -3
  300. data/docs/StrikethroughChangedItem.md +29 -0
  301. data/docs/StrikethroughCustomEffectPerItemProps.md +21 -0
  302. data/docs/StrikethroughEffect.md +27 -0
  303. data/docs/StrikethroughLabelingNotification.md +25 -0
  304. data/docs/StrikethroughSetDiscountPerItemEffectProps.md +19 -0
  305. data/docs/StrikethroughTrigger.md +25 -0
  306. data/docs/TalangAttribute.md +33 -0
  307. data/docs/TalangAttributeVisibility.md +19 -0
  308. data/docs/TemplateArgDef.md +5 -1
  309. data/docs/TemplateDef.md +2 -2
  310. data/docs/Tier.md +2 -2
  311. data/docs/TransferLoyaltyCard.md +17 -0
  312. data/docs/TriggerWebhookEffectProps.md +2 -2
  313. data/docs/UpdateAccount.md +2 -2
  314. data/docs/UpdateApplication.md +9 -9
  315. data/docs/UpdateAttributeEffectProps.md +2 -2
  316. data/docs/UpdateAudience.md +1 -1
  317. data/docs/UpdateCampaign.md +12 -12
  318. data/docs/UpdateCampaignGroup.md +5 -5
  319. data/docs/UpdateCampaignTemplate.md +16 -14
  320. data/docs/UpdateCatalog.md +2 -2
  321. data/docs/UpdateCoupon.md +12 -8
  322. data/docs/UpdateCouponBatch.md +7 -5
  323. data/docs/UpdateCustomEffect.md +4 -2
  324. data/docs/UpdateLoyaltyCard.md +2 -2
  325. data/docs/UpdateLoyaltyProgram.md +7 -5
  326. data/docs/UpdatePicklist.md +19 -0
  327. data/docs/UpdateReferral.md +3 -3
  328. data/docs/UpdateReferralBatch.md +2 -2
  329. data/docs/UpdateRole.md +8 -8
  330. data/docs/UpdateUser.md +7 -7
  331. data/docs/UpdateUserLatestFeedTimestamp.md +1 -1
  332. data/docs/User.md +5 -5
  333. data/docs/UserEntity.md +2 -2
  334. data/docs/UserFeedNotifications.md +2 -2
  335. data/docs/Webhook.md +20 -18
  336. data/docs/WebhookActivationLogEntry.md +9 -9
  337. data/docs/WebhookLogEntry.md +18 -15
  338. data/docs/WillAwardGiveawayEffectProps.md +3 -3
  339. data/lib/talon_one/api/integration_api.rb +640 -99
  340. data/lib/talon_one/api/management_api.rb +2432 -799
  341. data/lib/talon_one/api_client.rb +2 -2
  342. data/lib/talon_one/api_error.rb +2 -2
  343. data/lib/talon_one/configuration.rb +12 -5
  344. data/lib/talon_one/models/accept_coupon_effect_props.rb +3 -3
  345. data/lib/talon_one/models/accept_referral_effect_props.rb +3 -3
  346. data/lib/talon_one/models/access_log_entry.rb +6 -6
  347. data/lib/talon_one/models/account.rb +8 -8
  348. data/lib/talon_one/models/account_additional_cost.rb +7 -7
  349. data/lib/talon_one/models/account_analytics.rb +21 -21
  350. data/lib/talon_one/models/account_dashboard_statistic.rb +271 -0
  351. data/lib/talon_one/models/account_dashboard_statistic_api_calls.rb +227 -0
  352. data/lib/talon_one/models/account_dashboard_statistic_campaigns.rb +227 -0
  353. data/lib/talon_one/models/account_dashboard_statistic_discount.rb +242 -0
  354. data/lib/talon_one/models/account_dashboard_statistic_loyalty_points.rb +227 -0
  355. data/lib/talon_one/models/account_dashboard_statistic_referrals.rb +227 -0
  356. data/lib/talon_one/models/account_dashboard_statistic_revenue.rb +242 -0
  357. data/lib/talon_one/models/account_entity.rb +2 -2
  358. data/lib/talon_one/models/account_limits.rb +14 -14
  359. data/lib/talon_one/models/add_free_item_effect_props.rb +4 -4
  360. data/lib/talon_one/models/add_item_catalog_action.rb +245 -0
  361. data/lib/talon_one/models/add_loyalty_points.rb +311 -0
  362. data/lib/talon_one/models/add_loyalty_points_effect_props.rb +43 -8
  363. data/lib/talon_one/models/added_deducted_points_notification_policy.rb +269 -0
  364. data/lib/talon_one/models/additional_cost.rb +2 -2
  365. data/lib/talon_one/models/api_error.rb +2 -2
  366. data/lib/talon_one/models/application.rb +7 -7
  367. data/lib/talon_one/models/application_api_health.rb +5 -5
  368. data/lib/talon_one/models/application_api_key.rb +11 -11
  369. data/lib/talon_one/models/application_campaign_stats.rb +9 -9
  370. data/lib/talon_one/models/application_customer.rb +20 -10
  371. data/lib/talon_one/models/application_customer_entity.rb +2 -2
  372. data/lib/talon_one/models/application_entity.rb +2 -2
  373. data/lib/talon_one/models/application_event.rb +5 -5
  374. data/lib/talon_one/models/application_notification.rb +2 -2
  375. data/lib/talon_one/models/application_referee.rb +6 -6
  376. data/lib/talon_one/models/application_session.rb +7 -7
  377. data/lib/talon_one/models/application_session_entity.rb +2 -2
  378. data/lib/talon_one/models/async_coupon_creation_response.rb +2 -2
  379. data/lib/talon_one/models/attribute.rb +30 -6
  380. data/lib/talon_one/models/attributes_mandatory.rb +2 -2
  381. data/lib/talon_one/models/attributes_settings.rb +2 -2
  382. data/lib/talon_one/models/audience.rb +50 -10
  383. data/lib/talon_one/models/audience_analytics.rb +218 -0
  384. data/lib/talon_one/models/audience_customer.rb +395 -0
  385. data/lib/talon_one/models/{loyalty_projection_data.rb → audience_integration_id.rb} +33 -59
  386. data/lib/talon_one/models/audience_membership.rb +2 -2
  387. data/lib/talon_one/models/award_giveaway_effect_props.rb +2 -2
  388. data/lib/talon_one/models/base_loyalty_program.rb +19 -9
  389. data/lib/talon_one/models/base_notification.rb +260 -0
  390. data/lib/talon_one/models/base_notification_entity.rb +211 -0
  391. data/lib/talon_one/models/base_notification_webhook.rb +275 -0
  392. data/lib/talon_one/models/base_notifications.rb +209 -0
  393. data/lib/talon_one/models/base_saml_connection.rb +2 -2
  394. data/lib/talon_one/models/binding.rb +2 -2
  395. data/lib/talon_one/models/bulk_application_notification.rb +2 -2
  396. data/lib/talon_one/models/bulk_campaign_notification.rb +2 -2
  397. data/lib/talon_one/models/campaign.rb +18 -8
  398. data/lib/talon_one/models/campaign_activation_request.rb +214 -0
  399. data/lib/talon_one/models/campaign_analytics.rb +2 -2
  400. data/lib/talon_one/models/campaign_collection.rb +5 -5
  401. data/lib/talon_one/models/campaign_collection_without_payload.rb +5 -5
  402. data/lib/talon_one/models/campaign_copy.rb +4 -4
  403. data/lib/talon_one/models/campaign_created_notification.rb +29 -6
  404. data/lib/talon_one/models/campaign_deleted_notification.rb +21 -6
  405. data/lib/talon_one/models/campaign_edited_notification.rb +15 -6
  406. data/lib/talon_one/models/campaign_entity.rb +2 -2
  407. data/lib/talon_one/models/campaign_group.rb +7 -7
  408. data/lib/talon_one/models/campaign_group_entity.rb +2 -2
  409. data/lib/talon_one/models/campaign_notification.rb +2 -2
  410. data/lib/talon_one/models/campaign_priorities_changed_notification.rb +17 -22
  411. data/lib/talon_one/models/campaign_priorities_v2.rb +2 -2
  412. data/lib/talon_one/models/campaign_ruleset_changed_notification.rb +2 -7
  413. data/lib/talon_one/models/campaign_search.rb +3 -3
  414. data/lib/talon_one/models/campaign_set.rb +19 -9
  415. data/lib/talon_one/models/campaign_set_branch_node.rb +5 -5
  416. data/lib/talon_one/models/campaign_set_i_ds.rb +2 -2
  417. data/lib/talon_one/models/campaign_set_leaf_node.rb +3 -3
  418. data/lib/talon_one/models/campaign_set_node.rb +2 -2
  419. data/lib/talon_one/models/campaign_set_v2.rb +5 -5
  420. data/lib/talon_one/models/campaign_state_changed_notification.rb +15 -6
  421. data/lib/talon_one/models/campaign_template.rb +25 -15
  422. data/lib/talon_one/models/campaign_template_collection.rb +2 -2
  423. data/lib/talon_one/models/campaign_template_params.rb +16 -6
  424. data/lib/talon_one/models/card_ledger_transaction_log_entry.rb +508 -0
  425. data/lib/talon_one/models/card_ledger_transaction_log_entry_integration_api.rb +508 -0
  426. data/lib/talon_one/models/cart_item.rb +28 -47
  427. data/lib/talon_one/models/catalog.rb +7 -7
  428. data/lib/talon_one/models/catalog_action.rb +261 -0
  429. data/lib/talon_one/models/catalog_action_filter.rb +277 -0
  430. data/lib/talon_one/models/catalog_item.rb +313 -0
  431. data/lib/talon_one/models/catalog_sync_request.rb +238 -0
  432. data/lib/talon_one/models/catalogs_strikethrough_notification_policy.rb +231 -0
  433. data/lib/talon_one/models/change.rb +20 -10
  434. data/lib/talon_one/models/change_profile_password.rb +2 -2
  435. data/lib/talon_one/models/code_generator_settings.rb +3 -3
  436. data/lib/talon_one/models/collection.rb +5 -5
  437. data/lib/talon_one/models/collection_item.rb +212 -0
  438. data/lib/talon_one/models/collection_without_payload.rb +5 -5
  439. data/lib/talon_one/models/coupon.rb +68 -12
  440. data/lib/talon_one/models/coupon_constraints.rb +39 -5
  441. data/lib/talon_one/models/coupon_created_effect_props.rb +4 -4
  442. data/lib/talon_one/models/coupon_creation_job.rb +58 -15
  443. data/lib/talon_one/models/coupon_limit_configs.rb +2 -2
  444. data/lib/talon_one/models/coupon_rejection_reason.rb +4 -4
  445. data/lib/talon_one/models/coupon_reservations.rb +3 -3
  446. data/lib/talon_one/models/coupon_search.rb +3 -3
  447. data/lib/talon_one/models/coupon_value.rb +2 -2
  448. data/lib/talon_one/models/coupons_notification_policy.rb +269 -0
  449. data/lib/talon_one/models/create_application_api_key.rb +6 -6
  450. data/lib/talon_one/models/create_management_key.rb +256 -0
  451. data/lib/talon_one/models/create_template_campaign.rb +15 -3
  452. data/lib/talon_one/models/create_template_campaign_response.rb +2 -2
  453. data/lib/talon_one/models/custom_effect.rb +18 -8
  454. data/lib/talon_one/models/custom_effect_props.rb +44 -4
  455. data/lib/talon_one/models/customer_activity_report.rb +5 -5
  456. data/lib/talon_one/models/customer_analytics.rb +10 -10
  457. data/lib/talon_one/models/customer_inventory.rb +2 -2
  458. data/lib/talon_one/models/customer_profile.rb +23 -13
  459. data/lib/talon_one/models/customer_profile_audience_request.rb +2 -2
  460. data/lib/talon_one/models/customer_profile_audience_request_item.rb +2 -2
  461. data/lib/talon_one/models/customer_profile_integration_request_v2.rb +17 -5
  462. data/lib/talon_one/models/customer_profile_search_query.rb +2 -2
  463. data/lib/talon_one/models/customer_profile_update_v2_response.rb +212 -0
  464. data/lib/talon_one/models/customer_session.rb +8 -8
  465. data/lib/talon_one/models/customer_session_v2.rb +27 -15
  466. data/lib/talon_one/models/{loyalty_points.rb → deduct_loyalty_points.rb} +23 -33
  467. data/lib/talon_one/models/deduct_loyalty_points_effect_props.rb +23 -8
  468. data/lib/talon_one/models/effect.rb +20 -9
  469. data/lib/talon_one/models/effect_entity.rb +23 -13
  470. data/lib/talon_one/models/email_entity.rb +2 -2
  471. data/lib/talon_one/models/endpoint.rb +212 -0
  472. data/lib/talon_one/models/entity.rb +4 -4
  473. data/lib/talon_one/models/entity_with_talang_visible_id.rb +2 -2
  474. data/lib/talon_one/models/environment.rb +5 -5
  475. data/lib/talon_one/models/error_effect_props.rb +2 -2
  476. data/lib/talon_one/models/error_response.rb +2 -2
  477. data/lib/talon_one/models/error_response_with_status.rb +2 -2
  478. data/lib/talon_one/models/error_source.rb +3 -3
  479. data/lib/talon_one/models/evaluable_campaign_ids.rb +209 -0
  480. data/lib/talon_one/models/event.rb +6 -6
  481. data/lib/talon_one/models/event_type.rb +7 -7
  482. data/lib/talon_one/models/event_v2.rb +18 -6
  483. data/lib/talon_one/models/expiring_points_notification_policy.rb +247 -0
  484. data/lib/talon_one/models/expiring_points_notification_trigger.rb +280 -0
  485. data/lib/talon_one/models/export.rb +6 -6
  486. data/lib/talon_one/models/feature_flag.rb +6 -6
  487. data/lib/talon_one/models/features_feed.rb +2 -2
  488. data/lib/talon_one/models/feed_notification.rb +9 -9
  489. data/lib/talon_one/models/frontend_state.rb +39 -0
  490. data/lib/talon_one/models/func_arg_def.rb +4 -4
  491. data/lib/talon_one/models/function_def.rb +2 -2
  492. data/lib/talon_one/models/giveaway.rb +28 -8
  493. data/lib/talon_one/models/giveaways_pool.rb +22 -7
  494. data/lib/talon_one/models/import.rb +5 -5
  495. data/lib/talon_one/models/import_entity.rb +2 -2
  496. data/lib/talon_one/models/inline_response200.rb +2 -2
  497. data/lib/talon_one/models/inline_response2001.rb +13 -13
  498. data/lib/talon_one/models/inline_response20010.rb +3 -3
  499. data/lib/talon_one/models/inline_response20011.rb +3 -3
  500. data/lib/talon_one/models/inline_response20012.rb +13 -13
  501. data/lib/talon_one/models/inline_response20013.rb +9 -13
  502. data/lib/talon_one/models/inline_response20014.rb +5 -3
  503. data/lib/talon_one/models/inline_response20015.rb +13 -9
  504. data/lib/talon_one/models/inline_response20016.rb +3 -3
  505. data/lib/talon_one/models/inline_response20017.rb +13 -4
  506. data/lib/talon_one/models/inline_response20018.rb +3 -3
  507. data/lib/talon_one/models/inline_response20019.rb +3 -3
  508. data/lib/talon_one/models/inline_response2002.rb +13 -13
  509. data/lib/talon_one/models/inline_response20020.rb +9 -13
  510. data/lib/talon_one/models/inline_response20021.rb +13 -23
  511. data/lib/talon_one/models/inline_response20022.rb +13 -9
  512. data/lib/talon_one/models/inline_response20023.rb +13 -9
  513. data/lib/talon_one/models/inline_response20024.rb +13 -13
  514. data/lib/talon_one/models/inline_response20025.rb +13 -13
  515. data/lib/talon_one/models/inline_response20026.rb +10 -15
  516. data/lib/talon_one/models/inline_response20027.rb +13 -13
  517. data/lib/talon_one/models/inline_response20028.rb +3 -3
  518. data/lib/talon_one/models/inline_response20029.rb +13 -13
  519. data/lib/talon_one/models/inline_response2003.rb +3 -3
  520. data/lib/talon_one/models/inline_response20030.rb +13 -9
  521. data/lib/talon_one/models/inline_response20031.rb +3 -3
  522. data/lib/talon_one/models/inline_response20032.rb +227 -0
  523. data/lib/talon_one/models/inline_response20033.rb +227 -0
  524. data/lib/talon_one/models/inline_response20034.rb +227 -0
  525. data/lib/talon_one/models/inline_response20035.rb +227 -0
  526. data/lib/talon_one/models/inline_response20036.rb +227 -0
  527. data/lib/talon_one/models/inline_response20037.rb +227 -0
  528. data/lib/talon_one/models/inline_response20038.rb +231 -0
  529. data/lib/talon_one/models/inline_response20039.rb +227 -0
  530. data/lib/talon_one/models/inline_response2004.rb +3 -3
  531. data/lib/talon_one/models/inline_response20040.rb +227 -0
  532. data/lib/talon_one/models/inline_response2005.rb +13 -13
  533. data/lib/talon_one/models/inline_response2006.rb +13 -13
  534. data/lib/talon_one/models/inline_response2007.rb +3 -3
  535. data/lib/talon_one/models/inline_response2008.rb +9 -13
  536. data/lib/talon_one/models/inline_response2009.rb +9 -13
  537. data/lib/talon_one/models/inline_response201.rb +2 -2
  538. data/lib/talon_one/models/integration_coupon.rb +569 -0
  539. data/lib/talon_one/models/integration_customer_session_response.rb +17 -6
  540. data/lib/talon_one/models/integration_entity.rb +4 -4
  541. data/lib/talon_one/models/integration_event.rb +3 -3
  542. data/lib/talon_one/models/integration_event_v2_request.rb +18 -6
  543. data/lib/talon_one/models/integration_profile_entity.rb +3 -3
  544. data/lib/talon_one/models/integration_request.rb +3 -3
  545. data/lib/talon_one/models/integration_state.rb +2 -2
  546. data/lib/talon_one/models/integration_state_v2.rb +5 -4
  547. data/lib/talon_one/models/inventory_coupon.rb +65 -9
  548. data/lib/talon_one/models/inventory_referral.rb +6 -6
  549. data/lib/talon_one/models/item_attribute.rb +243 -0
  550. data/lib/talon_one/models/ledger_entry.rb +11 -11
  551. data/lib/talon_one/models/ledger_info.rb +21 -20
  552. data/lib/talon_one/models/ledger_transaction_log_entry_integration_api.rb +474 -0
  553. data/lib/talon_one/models/library_attribute.rb +2 -2
  554. data/lib/talon_one/models/limit_config.rb +2 -2
  555. data/lib/talon_one/models/limit_counter.rb +4 -4
  556. data/lib/talon_one/models/login_params.rb +2 -2
  557. data/lib/talon_one/models/loyalty.rb +2 -2
  558. data/lib/talon_one/models/loyalty_balance.rb +238 -0
  559. data/lib/talon_one/models/loyalty_balances.rb +219 -0
  560. data/lib/talon_one/models/loyalty_card.rb +81 -12
  561. data/lib/talon_one/models/loyalty_card_profile_registration.rb +4 -4
  562. data/lib/talon_one/models/loyalty_card_registration.rb +2 -2
  563. data/lib/talon_one/models/loyalty_dashboard_data.rb +2 -2
  564. data/lib/talon_one/models/loyalty_dashboard_points_breakdown.rb +2 -2
  565. data/lib/talon_one/models/loyalty_ledger.rb +2 -2
  566. data/lib/talon_one/models/loyalty_ledger_entry.rb +18 -8
  567. data/lib/talon_one/models/loyalty_ledger_transactions.rb +220 -0
  568. data/lib/talon_one/models/loyalty_membership.rb +2 -2
  569. data/lib/talon_one/models/loyalty_program.rb +23 -8
  570. data/lib/talon_one/models/loyalty_program_balance.rb +21 -11
  571. data/lib/talon_one/models/loyalty_program_entity.rb +2 -2
  572. data/lib/talon_one/models/loyalty_program_ledgers.rb +6 -6
  573. data/lib/talon_one/models/loyalty_program_transaction.rb +553 -0
  574. data/lib/talon_one/models/loyalty_statistics.rb +2 -2
  575. data/lib/talon_one/models/loyalty_sub_ledger.rb +3 -3
  576. data/lib/talon_one/models/loyalty_tier.rb +5 -5
  577. data/lib/talon_one/models/management_key.rb +317 -0
  578. data/lib/talon_one/models/manager_config.rb +2 -2
  579. data/lib/talon_one/models/meta.rb +2 -2
  580. data/lib/talon_one/models/model_return.rb +5 -5
  581. data/lib/talon_one/models/multi_application_entity.rb +3 -3
  582. data/lib/talon_one/models/multiple_attribute.rb +2 -2
  583. data/lib/talon_one/models/{loyalty_projection.rb → multiple_audiences.rb} +27 -38
  584. data/lib/talon_one/models/multiple_audiences_item.rb +354 -0
  585. data/lib/talon_one/models/multiple_customer_profile_integration_request.rb +2 -2
  586. data/lib/talon_one/models/multiple_customer_profile_integration_request_item.rb +4 -4
  587. data/lib/talon_one/models/multiple_customer_profile_integration_response_v2.rb +3 -3
  588. data/lib/talon_one/models/multiple_new_attribute.rb +2 -2
  589. data/lib/talon_one/models/multiple_new_audiences.rb +213 -0
  590. data/lib/talon_one/models/mutable_entity.rb +3 -3
  591. data/lib/talon_one/models/new_account.rb +2 -2
  592. data/lib/talon_one/models/new_account_sign_up.rb +2 -2
  593. data/lib/talon_one/models/new_additional_cost.rb +5 -5
  594. data/lib/talon_one/models/new_application.rb +4 -4
  595. data/lib/talon_one/models/new_application_api_key.rb +12 -12
  596. data/lib/talon_one/models/new_attribute.rb +31 -7
  597. data/lib/talon_one/models/new_audience.rb +49 -8
  598. data/lib/talon_one/models/new_base_notification.rb +226 -0
  599. data/lib/talon_one/models/new_campaign.rb +6 -6
  600. data/lib/talon_one/models/new_campaign_collection.rb +2 -2
  601. data/lib/talon_one/models/new_campaign_group.rb +4 -4
  602. data/lib/talon_one/models/new_campaign_set.rb +3 -3
  603. data/lib/talon_one/models/new_campaign_set_v2.rb +3 -3
  604. data/lib/talon_one/models/new_campaign_template.rb +20 -10
  605. data/lib/talon_one/models/new_catalog.rb +4 -4
  606. data/lib/talon_one/models/new_collection.rb +2 -2
  607. data/lib/talon_one/models/new_coupon_creation_job.rb +50 -7
  608. data/lib/talon_one/models/new_coupons.rb +57 -11
  609. data/lib/talon_one/models/new_coupons_for_multiple_recipients.rb +41 -7
  610. data/lib/talon_one/models/new_custom_effect.rb +15 -5
  611. data/lib/talon_one/models/new_customer_profile.rb +3 -3
  612. data/lib/talon_one/models/new_customer_session.rb +5 -5
  613. data/lib/talon_one/models/new_customer_session_v2.rb +21 -9
  614. data/lib/talon_one/models/new_event.rb +3 -3
  615. data/lib/talon_one/models/new_event_type.rb +5 -5
  616. data/lib/talon_one/models/new_giveaways_pool.rb +22 -7
  617. data/lib/talon_one/models/new_internal_audience.rb +251 -0
  618. data/lib/talon_one/models/new_invitation.rb +5 -5
  619. data/lib/talon_one/models/new_invite_email.rb +2 -2
  620. data/lib/talon_one/models/new_loyalty_program.rb +22 -7
  621. data/lib/talon_one/models/new_loyalty_tier.rb +4 -4
  622. data/lib/talon_one/models/new_management_key.rb +332 -0
  623. data/lib/talon_one/models/new_multiple_audiences_item.rb +266 -0
  624. data/lib/talon_one/models/new_notification_webhook.rb +4 -4
  625. data/lib/talon_one/models/new_outgoing_integration_webhook.rb +229 -0
  626. data/lib/talon_one/models/new_password.rb +2 -2
  627. data/lib/talon_one/models/new_password_email.rb +2 -2
  628. data/lib/talon_one/models/new_picklist.rb +263 -0
  629. data/lib/talon_one/models/new_referral.rb +4 -4
  630. data/lib/talon_one/models/new_referrals_for_multiple_advocates.rb +4 -4
  631. data/lib/talon_one/models/new_return.rb +3 -3
  632. data/lib/talon_one/models/new_role.rb +6 -6
  633. data/lib/talon_one/models/new_ruleset.rb +15 -3
  634. data/lib/talon_one/models/new_saml_connection.rb +2 -2
  635. data/lib/talon_one/models/new_template_def.rb +2 -2
  636. data/lib/talon_one/models/new_user.rb +2 -2
  637. data/lib/talon_one/models/new_webhook.rb +10 -10
  638. data/lib/talon_one/models/notification.rb +5 -5
  639. data/lib/talon_one/models/notification_webhook.rb +7 -7
  640. data/lib/talon_one/models/outgoing_integration_braze_policy.rb +227 -0
  641. data/lib/talon_one/models/outgoing_integration_configuration.rb +256 -0
  642. data/lib/talon_one/models/outgoing_integration_type.rb +357 -0
  643. data/lib/talon_one/models/outgoing_integration_types.rb +209 -0
  644. data/lib/talon_one/models/outgoing_integration_webhook_template.rb +377 -0
  645. data/lib/talon_one/models/outgoing_integration_webhook_templates.rb +209 -0
  646. data/lib/talon_one/models/patch_item_catalog_action.rb +245 -0
  647. data/lib/talon_one/models/patch_many_items_catalog_action.rb +230 -0
  648. data/lib/talon_one/models/picklist.rb +339 -0
  649. data/lib/talon_one/models/priority_position.rb +264 -0
  650. data/lib/talon_one/models/profile_audiences_changes.rb +2 -2
  651. data/lib/talon_one/models/redeem_referral_effect_props.rb +5 -5
  652. data/lib/talon_one/models/referral.rb +6 -6
  653. data/lib/talon_one/models/referral_constraints.rb +3 -3
  654. data/lib/talon_one/models/referral_created_effect_props.rb +3 -3
  655. data/lib/talon_one/models/referral_rejection_reason.rb +4 -4
  656. data/lib/talon_one/models/reject_coupon_effect_props.rb +7 -7
  657. data/lib/talon_one/models/reject_referral_effect_props.rb +7 -7
  658. data/lib/talon_one/models/remove_item_catalog_action.rb +213 -0
  659. data/lib/talon_one/models/remove_many_items_catalog_action.rb +210 -0
  660. data/lib/talon_one/models/reopen_session_response.rb +215 -0
  661. data/lib/talon_one/models/reserve_coupon_effect_props.rb +243 -0
  662. data/lib/talon_one/models/return_integration_request.rb +3 -3
  663. data/lib/talon_one/models/returned_cart_item.rb +3 -3
  664. data/lib/talon_one/models/role.rb +10 -10
  665. data/lib/talon_one/models/role_assign.rb +4 -4
  666. data/lib/talon_one/models/role_membership.rb +4 -4
  667. data/lib/talon_one/models/role_v2.rb +248 -0
  668. data/lib/talon_one/models/role_v2_application_details.rb +227 -0
  669. data/lib/talon_one/models/role_v2_permission_set.rb +228 -0
  670. data/lib/talon_one/models/role_v2_permissions.rb +218 -0
  671. data/lib/talon_one/models/role_v2_permissions_roles.rb +230 -0
  672. data/lib/talon_one/models/rollback_added_loyalty_points_effect_props.rb +23 -8
  673. data/lib/talon_one/models/rollback_coupon_effect_props.rb +3 -3
  674. data/lib/talon_one/models/rollback_deducted_loyalty_points_effect_props.rb +25 -10
  675. data/lib/talon_one/models/rollback_discount_effect_props.rb +5 -5
  676. data/lib/talon_one/models/rollback_referral_effect_props.rb +3 -3
  677. data/lib/talon_one/models/rule.rb +23 -3
  678. data/lib/talon_one/models/rule_failure_reason.rb +14 -14
  679. data/lib/talon_one/models/ruleset.rb +18 -6
  680. data/lib/talon_one/models/saml_connection.rb +4 -4
  681. data/lib/talon_one/models/saml_connection_metadata.rb +2 -2
  682. data/lib/talon_one/models/saml_login_endpoint.rb +2 -2
  683. data/lib/talon_one/models/session.rb +3 -3
  684. data/lib/talon_one/models/set_discount_effect_props.rb +6 -6
  685. data/lib/talon_one/models/set_discount_per_additional_cost_effect_props.rb +7 -7
  686. data/lib/talon_one/models/set_discount_per_additional_cost_per_item_effect_props.rb +7 -7
  687. data/lib/talon_one/models/set_discount_per_item_effect_props.rb +30 -10
  688. data/lib/talon_one/models/show_bundle_metadata_effect_props.rb +6 -6
  689. data/lib/talon_one/models/show_notification_effect_props.rb +5 -5
  690. data/lib/talon_one/models/slot_def.rb +2 -2
  691. data/lib/talon_one/models/strikethrough_changed_item.rb +318 -0
  692. data/lib/talon_one/models/strikethrough_custom_effect_per_item_props.rb +243 -0
  693. data/lib/talon_one/models/strikethrough_effect.rb +287 -0
  694. data/lib/talon_one/models/strikethrough_labeling_notification.rb +273 -0
  695. data/lib/talon_one/models/strikethrough_set_discount_per_item_effect_props.rb +228 -0
  696. data/lib/talon_one/models/strikethrough_trigger.rb +273 -0
  697. data/lib/talon_one/models/talang_attribute.rb +363 -0
  698. data/lib/talon_one/models/talang_attribute_visibility.rb +221 -0
  699. data/lib/talon_one/models/template_arg_def.rb +28 -8
  700. data/lib/talon_one/models/template_def.rb +4 -4
  701. data/lib/talon_one/models/template_limit_config.rb +2 -2
  702. data/lib/talon_one/models/tier.rb +4 -4
  703. data/lib/talon_one/models/transfer_loyalty_card.rb +231 -0
  704. data/lib/talon_one/models/trigger_webhook_effect_props.rb +4 -4
  705. data/lib/talon_one/models/update_account.rb +4 -4
  706. data/lib/talon_one/models/update_application.rb +3 -3
  707. data/lib/talon_one/models/update_attribute_effect_props.rb +4 -4
  708. data/lib/talon_one/models/update_audience.rb +2 -2
  709. data/lib/talon_one/models/update_campaign.rb +4 -4
  710. data/lib/talon_one/models/update_campaign_collection.rb +2 -2
  711. data/lib/talon_one/models/update_campaign_group.rb +4 -4
  712. data/lib/talon_one/models/update_campaign_template.rb +23 -13
  713. data/lib/talon_one/models/update_catalog.rb +4 -4
  714. data/lib/talon_one/models/update_collection.rb +2 -2
  715. data/lib/talon_one/models/update_coupon.rb +56 -10
  716. data/lib/talon_one/models/update_coupon_batch.rb +40 -6
  717. data/lib/talon_one/models/update_custom_effect.rb +15 -5
  718. data/lib/talon_one/models/update_loyalty_card.rb +3 -3
  719. data/lib/talon_one/models/update_loyalty_program.rb +17 -7
  720. data/lib/talon_one/models/update_picklist.rb +264 -0
  721. data/lib/talon_one/models/update_referral.rb +5 -5
  722. data/lib/talon_one/models/update_referral_batch.rb +4 -4
  723. data/lib/talon_one/models/update_role.rb +6 -6
  724. data/lib/talon_one/models/update_user.rb +5 -5
  725. data/lib/talon_one/models/update_user_latest_feed_timestamp.rb +4 -4
  726. data/lib/talon_one/models/user.rb +7 -7
  727. data/lib/talon_one/models/user_entity.rb +3 -3
  728. data/lib/talon_one/models/user_feed_notifications.rb +5 -5
  729. data/lib/talon_one/models/webhook.rb +13 -13
  730. data/lib/talon_one/models/webhook_activation_log_entry.rb +7 -7
  731. data/lib/talon_one/models/webhook_log_entry.rb +8 -8
  732. data/lib/talon_one/models/will_award_giveaway_effect_props.rb +2 -2
  733. data/lib/talon_one/version.rb +3 -3
  734. data/lib/talon_one.rb +92 -5
  735. data/spec/api/integration_api_spec.rb +151 -49
  736. data/spec/api/management_api_spec.rb +564 -260
  737. data/spec/api_client_spec.rb +2 -2
  738. data/spec/configuration_spec.rb +5 -5
  739. data/spec/models/accept_coupon_effect_props_spec.rb +2 -2
  740. data/spec/models/accept_referral_effect_props_spec.rb +2 -2
  741. data/spec/models/access_log_entry_spec.rb +2 -2
  742. data/spec/models/account_additional_cost_spec.rb +2 -2
  743. data/spec/models/account_analytics_spec.rb +2 -2
  744. data/spec/models/account_dashboard_statistic_api_calls_spec.rb +47 -0
  745. data/spec/models/account_dashboard_statistic_campaigns_spec.rb +47 -0
  746. data/spec/models/account_dashboard_statistic_discount_spec.rb +53 -0
  747. data/spec/models/account_dashboard_statistic_loyalty_points_spec.rb +47 -0
  748. data/spec/models/account_dashboard_statistic_referrals_spec.rb +47 -0
  749. data/spec/models/account_dashboard_statistic_revenue_spec.rb +53 -0
  750. data/spec/models/account_dashboard_statistic_spec.rb +71 -0
  751. data/spec/models/account_entity_spec.rb +2 -2
  752. data/spec/models/account_limits_spec.rb +2 -2
  753. data/spec/models/account_spec.rb +2 -2
  754. data/spec/models/add_free_item_effect_props_spec.rb +2 -2
  755. data/spec/models/{loyalty_projection_data_spec.rb → add_item_catalog_action_spec.rb} +12 -12
  756. data/spec/models/add_loyalty_points_effect_props_spec.rb +14 -2
  757. data/spec/models/add_loyalty_points_spec.rb +83 -0
  758. data/spec/models/added_deducted_points_notification_policy_spec.rb +51 -0
  759. data/spec/models/additional_cost_spec.rb +2 -2
  760. data/spec/models/api_error_spec.rb +2 -2
  761. data/spec/models/application_api_health_spec.rb +2 -2
  762. data/spec/models/application_api_key_spec.rb +3 -3
  763. data/spec/models/application_campaign_stats_spec.rb +2 -2
  764. data/spec/models/application_customer_entity_spec.rb +2 -2
  765. data/spec/models/application_customer_spec.rb +8 -2
  766. data/spec/models/application_entity_spec.rb +2 -2
  767. data/spec/models/application_event_spec.rb +2 -2
  768. data/spec/models/application_notification_spec.rb +2 -2
  769. data/spec/models/application_referee_spec.rb +2 -2
  770. data/spec/models/application_session_entity_spec.rb +2 -2
  771. data/spec/models/application_session_spec.rb +2 -2
  772. data/spec/models/application_spec.rb +2 -2
  773. data/spec/models/async_coupon_creation_response_spec.rb +2 -2
  774. data/spec/models/attribute_spec.rb +18 -2
  775. data/spec/models/attributes_mandatory_spec.rb +2 -2
  776. data/spec/models/attributes_settings_spec.rb +2 -2
  777. data/spec/models/audience_analytics_spec.rb +47 -0
  778. data/spec/models/audience_customer_spec.rb +113 -0
  779. data/spec/models/audience_integration_id_spec.rb +41 -0
  780. data/spec/models/audience_membership_spec.rb +2 -2
  781. data/spec/models/audience_spec.rb +26 -2
  782. data/spec/models/award_giveaway_effect_props_spec.rb +2 -2
  783. data/spec/models/base_loyalty_program_spec.rb +8 -2
  784. data/spec/models/base_notification_entity_spec.rb +41 -0
  785. data/spec/models/{loyalty_projection_spec.rb → base_notification_spec.rb} +11 -11
  786. data/spec/models/base_notification_webhook_spec.rb +65 -0
  787. data/spec/models/base_notifications_spec.rb +41 -0
  788. data/spec/models/base_saml_connection_spec.rb +2 -2
  789. data/spec/models/binding_spec.rb +2 -2
  790. data/spec/models/bulk_application_notification_spec.rb +2 -2
  791. data/spec/models/bulk_campaign_notification_spec.rb +2 -2
  792. data/spec/models/campaign_activation_request_spec.rb +41 -0
  793. data/spec/models/campaign_analytics_spec.rb +2 -2
  794. data/spec/models/campaign_collection_spec.rb +2 -2
  795. data/spec/models/campaign_collection_without_payload_spec.rb +2 -2
  796. data/spec/models/campaign_copy_spec.rb +2 -2
  797. data/spec/models/campaign_created_notification_spec.rb +14 -2
  798. data/spec/models/campaign_deleted_notification_spec.rb +8 -2
  799. data/spec/models/campaign_edited_notification_spec.rb +8 -2
  800. data/spec/models/campaign_entity_spec.rb +2 -2
  801. data/spec/models/campaign_group_entity_spec.rb +2 -2
  802. data/spec/models/campaign_group_spec.rb +2 -2
  803. data/spec/models/campaign_notification_spec.rb +2 -2
  804. data/spec/models/campaign_priorities_changed_notification_spec.rb +3 -3
  805. data/spec/models/campaign_priorities_v2_spec.rb +2 -2
  806. data/spec/models/campaign_ruleset_changed_notification_spec.rb +2 -2
  807. data/spec/models/campaign_search_spec.rb +2 -2
  808. data/spec/models/campaign_set_branch_node_spec.rb +2 -2
  809. data/spec/models/campaign_set_i_ds_spec.rb +2 -2
  810. data/spec/models/campaign_set_leaf_node_spec.rb +2 -2
  811. data/spec/models/campaign_set_node_spec.rb +2 -2
  812. data/spec/models/campaign_set_spec.rb +8 -2
  813. data/spec/models/campaign_set_v2_spec.rb +2 -2
  814. data/spec/models/campaign_spec.rb +9 -3
  815. data/spec/models/campaign_state_changed_notification_spec.rb +8 -2
  816. data/spec/models/campaign_template_collection_spec.rb +2 -2
  817. data/spec/models/campaign_template_params_spec.rb +8 -2
  818. data/spec/models/campaign_template_spec.rb +9 -3
  819. data/spec/models/card_ledger_transaction_log_entry_integration_api_spec.rb +117 -0
  820. data/spec/models/card_ledger_transaction_log_entry_spec.rb +117 -0
  821. data/spec/models/cart_item_spec.rb +8 -2
  822. data/spec/models/catalog_action_filter_spec.rb +57 -0
  823. data/spec/models/catalog_action_spec.rb +51 -0
  824. data/spec/models/catalog_item_spec.rb +77 -0
  825. data/spec/models/catalog_spec.rb +2 -2
  826. data/spec/models/catalog_sync_request_spec.rb +47 -0
  827. data/spec/models/catalogs_strikethrough_notification_policy_spec.rb +41 -0
  828. data/spec/models/change_profile_password_spec.rb +2 -2
  829. data/spec/models/change_spec.rb +8 -2
  830. data/spec/models/code_generator_settings_spec.rb +2 -2
  831. data/spec/models/collection_item_spec.rb +41 -0
  832. data/spec/models/collection_spec.rb +2 -2
  833. data/spec/models/collection_without_payload_spec.rb +2 -2
  834. data/spec/models/coupon_constraints_spec.rb +8 -2
  835. data/spec/models/coupon_created_effect_props_spec.rb +2 -2
  836. data/spec/models/coupon_creation_job_spec.rb +8 -2
  837. data/spec/models/coupon_limit_configs_spec.rb +2 -2
  838. data/spec/models/coupon_rejection_reason_spec.rb +3 -3
  839. data/spec/models/coupon_reservations_spec.rb +2 -2
  840. data/spec/models/coupon_search_spec.rb +2 -2
  841. data/spec/models/coupon_spec.rb +20 -2
  842. data/spec/models/coupon_value_spec.rb +2 -2
  843. data/spec/models/coupons_notification_policy_spec.rb +51 -0
  844. data/spec/models/create_application_api_key_spec.rb +3 -3
  845. data/spec/models/create_management_key_spec.rb +59 -0
  846. data/spec/models/create_template_campaign_response_spec.rb +2 -2
  847. data/spec/models/create_template_campaign_spec.rb +8 -2
  848. data/spec/models/custom_effect_props_spec.rb +26 -2
  849. data/spec/models/custom_effect_spec.rb +8 -2
  850. data/spec/models/customer_activity_report_spec.rb +2 -2
  851. data/spec/models/customer_analytics_spec.rb +2 -2
  852. data/spec/models/customer_inventory_spec.rb +2 -2
  853. data/spec/models/customer_profile_audience_request_item_spec.rb +2 -2
  854. data/spec/models/customer_profile_audience_request_spec.rb +2 -2
  855. data/spec/models/customer_profile_integration_request_v2_spec.rb +8 -2
  856. data/spec/models/customer_profile_search_query_spec.rb +2 -2
  857. data/spec/models/customer_profile_spec.rb +8 -2
  858. data/spec/models/customer_profile_update_v2_response_spec.rb +41 -0
  859. data/spec/models/customer_session_spec.rb +2 -2
  860. data/spec/models/customer_session_v2_spec.rb +8 -2
  861. data/spec/models/deduct_loyalty_points_effect_props_spec.rb +2 -2
  862. data/spec/models/deduct_loyalty_points_spec.rb +59 -0
  863. data/spec/models/effect_entity_spec.rb +8 -2
  864. data/spec/models/effect_spec.rb +8 -2
  865. data/spec/models/email_entity_spec.rb +2 -2
  866. data/spec/models/endpoint_spec.rb +41 -0
  867. data/spec/models/entity_spec.rb +2 -2
  868. data/spec/models/entity_with_talang_visible_id_spec.rb +2 -2
  869. data/spec/models/environment_spec.rb +2 -2
  870. data/spec/models/error_effect_props_spec.rb +2 -2
  871. data/spec/models/error_response_spec.rb +2 -2
  872. data/spec/models/error_response_with_status_spec.rb +2 -2
  873. data/spec/models/error_source_spec.rb +2 -2
  874. data/spec/models/evaluable_campaign_ids_spec.rb +41 -0
  875. data/spec/models/event_spec.rb +2 -2
  876. data/spec/models/event_type_spec.rb +2 -2
  877. data/spec/models/event_v2_spec.rb +8 -2
  878. data/spec/models/expiring_points_notification_policy_spec.rb +47 -0
  879. data/spec/models/expiring_points_notification_trigger_spec.rb +51 -0
  880. data/spec/models/export_spec.rb +2 -2
  881. data/spec/models/feature_flag_spec.rb +2 -2
  882. data/spec/models/features_feed_spec.rb +2 -2
  883. data/spec/models/feed_notification_spec.rb +2 -2
  884. data/spec/models/frontend_state_spec.rb +35 -0
  885. data/spec/models/func_arg_def_spec.rb +3 -3
  886. data/spec/models/function_def_spec.rb +2 -2
  887. data/spec/models/giveaway_spec.rb +14 -2
  888. data/spec/models/giveaways_pool_spec.rb +8 -2
  889. data/spec/models/import_entity_spec.rb +2 -2
  890. data/spec/models/import_spec.rb +2 -2
  891. data/spec/models/inline_response20010_spec.rb +2 -2
  892. data/spec/models/inline_response20011_spec.rb +2 -2
  893. data/spec/models/inline_response20012_spec.rb +3 -3
  894. data/spec/models/inline_response20013_spec.rb +2 -8
  895. data/spec/models/inline_response20014_spec.rb +2 -2
  896. data/spec/models/inline_response20015_spec.rb +8 -2
  897. data/spec/models/inline_response20016_spec.rb +2 -2
  898. data/spec/models/inline_response20017_spec.rb +8 -2
  899. data/spec/models/inline_response20018_spec.rb +2 -2
  900. data/spec/models/inline_response20019_spec.rb +2 -2
  901. data/spec/models/inline_response2001_spec.rb +3 -3
  902. data/spec/models/inline_response20020_spec.rb +2 -8
  903. data/spec/models/inline_response20021_spec.rb +4 -4
  904. data/spec/models/inline_response20022_spec.rb +8 -2
  905. data/spec/models/inline_response20023_spec.rb +8 -2
  906. data/spec/models/inline_response20024_spec.rb +3 -3
  907. data/spec/models/inline_response20025_spec.rb +3 -3
  908. data/spec/models/inline_response20026_spec.rb +3 -3
  909. data/spec/models/inline_response20027_spec.rb +3 -3
  910. data/spec/models/inline_response20028_spec.rb +2 -2
  911. data/spec/models/inline_response20029_spec.rb +4 -4
  912. data/spec/models/inline_response2002_spec.rb +3 -3
  913. data/spec/models/inline_response20030_spec.rb +8 -2
  914. data/spec/models/inline_response20031_spec.rb +2 -2
  915. data/spec/models/inline_response20032_spec.rb +47 -0
  916. data/spec/models/inline_response20033_spec.rb +47 -0
  917. data/spec/models/inline_response20034_spec.rb +47 -0
  918. data/spec/models/inline_response20035_spec.rb +47 -0
  919. data/spec/models/inline_response20036_spec.rb +47 -0
  920. data/spec/models/inline_response20037_spec.rb +47 -0
  921. data/spec/models/inline_response20038_spec.rb +53 -0
  922. data/spec/models/inline_response20039_spec.rb +47 -0
  923. data/spec/models/inline_response2003_spec.rb +2 -2
  924. data/spec/models/inline_response20040_spec.rb +47 -0
  925. data/spec/models/inline_response2004_spec.rb +2 -2
  926. data/spec/models/inline_response2005_spec.rb +3 -3
  927. data/spec/models/inline_response2006_spec.rb +3 -3
  928. data/spec/models/inline_response2007_spec.rb +2 -2
  929. data/spec/models/inline_response2008_spec.rb +2 -8
  930. data/spec/models/inline_response2009_spec.rb +2 -8
  931. data/spec/models/inline_response200_spec.rb +2 -2
  932. data/spec/models/inline_response201_spec.rb +2 -2
  933. data/spec/models/integration_coupon_spec.rb +167 -0
  934. data/spec/models/integration_customer_session_response_spec.rb +8 -2
  935. data/spec/models/integration_entity_spec.rb +2 -2
  936. data/spec/models/integration_event_spec.rb +2 -2
  937. data/spec/models/integration_event_v2_request_spec.rb +8 -2
  938. data/spec/models/integration_profile_entity_spec.rb +2 -2
  939. data/spec/models/integration_request_spec.rb +2 -2
  940. data/spec/models/integration_state_spec.rb +2 -2
  941. data/spec/models/integration_state_v2_spec.rb +2 -2
  942. data/spec/models/inventory_coupon_spec.rb +20 -2
  943. data/spec/models/inventory_referral_spec.rb +2 -2
  944. data/spec/models/item_attribute_spec.rb +53 -0
  945. data/spec/models/ledger_entry_spec.rb +2 -2
  946. data/spec/models/ledger_info_spec.rb +5 -5
  947. data/spec/models/ledger_transaction_log_entry_integration_api_spec.rb +111 -0
  948. data/spec/models/library_attribute_spec.rb +2 -2
  949. data/spec/models/limit_config_spec.rb +2 -2
  950. data/spec/models/limit_counter_spec.rb +2 -2
  951. data/spec/models/login_params_spec.rb +2 -2
  952. data/spec/models/loyalty_balance_spec.rb +59 -0
  953. data/spec/models/loyalty_balances_spec.rb +47 -0
  954. data/spec/models/loyalty_card_profile_registration_spec.rb +2 -2
  955. data/spec/models/loyalty_card_registration_spec.rb +2 -2
  956. data/spec/models/loyalty_card_spec.rb +14 -2
  957. data/spec/models/loyalty_dashboard_data_spec.rb +2 -2
  958. data/spec/models/loyalty_dashboard_points_breakdown_spec.rb +2 -2
  959. data/spec/models/loyalty_ledger_entry_spec.rb +8 -2
  960. data/spec/models/loyalty_ledger_spec.rb +2 -2
  961. data/spec/models/loyalty_ledger_transactions_spec.rb +47 -0
  962. data/spec/models/loyalty_membership_spec.rb +2 -2
  963. data/spec/models/loyalty_program_balance_spec.rb +8 -2
  964. data/spec/models/loyalty_program_entity_spec.rb +2 -2
  965. data/spec/models/loyalty_program_ledgers_spec.rb +2 -2
  966. data/spec/models/loyalty_program_spec.rb +8 -2
  967. data/spec/models/loyalty_program_transaction_spec.rb +141 -0
  968. data/spec/models/loyalty_spec.rb +2 -2
  969. data/spec/models/loyalty_statistics_spec.rb +2 -2
  970. data/spec/models/loyalty_sub_ledger_spec.rb +2 -2
  971. data/spec/models/loyalty_tier_spec.rb +2 -2
  972. data/spec/models/management_key_spec.rb +83 -0
  973. data/spec/models/manager_config_spec.rb +2 -2
  974. data/spec/models/meta_spec.rb +2 -2
  975. data/spec/models/model_return_spec.rb +2 -2
  976. data/spec/models/multi_application_entity_spec.rb +2 -2
  977. data/spec/models/multiple_attribute_spec.rb +2 -2
  978. data/spec/models/multiple_audiences_item_spec.rb +69 -0
  979. data/spec/models/multiple_audiences_spec.rb +47 -0
  980. data/spec/models/multiple_customer_profile_integration_request_item_spec.rb +2 -2
  981. data/spec/models/multiple_customer_profile_integration_request_spec.rb +2 -2
  982. data/spec/models/multiple_customer_profile_integration_response_v2_spec.rb +2 -2
  983. data/spec/models/multiple_new_attribute_spec.rb +2 -2
  984. data/spec/models/multiple_new_audiences_spec.rb +41 -0
  985. data/spec/models/mutable_entity_spec.rb +2 -2
  986. data/spec/models/new_account_sign_up_spec.rb +2 -2
  987. data/spec/models/new_account_spec.rb +2 -2
  988. data/spec/models/new_additional_cost_spec.rb +2 -2
  989. data/spec/models/new_application_api_key_spec.rb +3 -3
  990. data/spec/models/new_application_spec.rb +2 -2
  991. data/spec/models/new_attribute_spec.rb +18 -2
  992. data/spec/models/new_audience_spec.rb +26 -2
  993. data/spec/models/new_base_notification_spec.rb +47 -0
  994. data/spec/models/new_campaign_collection_spec.rb +2 -2
  995. data/spec/models/new_campaign_group_spec.rb +2 -2
  996. data/spec/models/new_campaign_set_spec.rb +2 -2
  997. data/spec/models/new_campaign_set_v2_spec.rb +2 -2
  998. data/spec/models/new_campaign_spec.rb +3 -3
  999. data/spec/models/new_campaign_template_spec.rb +9 -3
  1000. data/spec/models/new_catalog_spec.rb +2 -2
  1001. data/spec/models/new_collection_spec.rb +2 -2
  1002. data/spec/models/new_coupon_creation_job_spec.rb +8 -2
  1003. data/spec/models/new_coupons_for_multiple_recipients_spec.rb +8 -2
  1004. data/spec/models/new_coupons_spec.rb +14 -2
  1005. data/spec/models/new_custom_effect_spec.rb +8 -2
  1006. data/spec/models/new_customer_profile_spec.rb +2 -2
  1007. data/spec/models/new_customer_session_spec.rb +2 -2
  1008. data/spec/models/new_customer_session_v2_spec.rb +8 -2
  1009. data/spec/models/new_event_spec.rb +2 -2
  1010. data/spec/models/new_event_type_spec.rb +2 -2
  1011. data/spec/models/new_giveaways_pool_spec.rb +8 -2
  1012. data/spec/models/new_internal_audience_spec.rb +53 -0
  1013. data/spec/models/new_invitation_spec.rb +2 -2
  1014. data/spec/models/new_invite_email_spec.rb +2 -2
  1015. data/spec/models/new_loyalty_program_spec.rb +8 -2
  1016. data/spec/models/new_loyalty_tier_spec.rb +2 -2
  1017. data/spec/models/new_management_key_spec.rb +89 -0
  1018. data/spec/models/new_multiple_audiences_item_spec.rb +47 -0
  1019. data/spec/models/new_notification_webhook_spec.rb +2 -2
  1020. data/spec/models/new_outgoing_integration_webhook_spec.rb +47 -0
  1021. data/spec/models/new_password_email_spec.rb +2 -2
  1022. data/spec/models/new_password_spec.rb +2 -2
  1023. data/spec/models/new_picklist_spec.rb +51 -0
  1024. data/spec/models/new_referral_spec.rb +2 -2
  1025. data/spec/models/new_referrals_for_multiple_advocates_spec.rb +2 -2
  1026. data/spec/models/new_return_spec.rb +2 -2
  1027. data/spec/models/new_role_spec.rb +2 -2
  1028. data/spec/models/new_ruleset_spec.rb +8 -2
  1029. data/spec/models/new_saml_connection_spec.rb +2 -2
  1030. data/spec/models/new_template_def_spec.rb +2 -2
  1031. data/spec/models/new_user_spec.rb +2 -2
  1032. data/spec/models/new_webhook_spec.rb +2 -2
  1033. data/spec/models/notification_spec.rb +2 -2
  1034. data/spec/models/notification_webhook_spec.rb +2 -2
  1035. data/spec/models/outgoing_integration_braze_policy_spec.rb +47 -0
  1036. data/spec/models/outgoing_integration_configuration_spec.rb +59 -0
  1037. data/spec/models/outgoing_integration_type_spec.rb +65 -0
  1038. data/spec/models/outgoing_integration_types_spec.rb +41 -0
  1039. data/spec/models/outgoing_integration_webhook_template_spec.rb +75 -0
  1040. data/spec/models/outgoing_integration_webhook_templates_spec.rb +41 -0
  1041. data/spec/models/patch_item_catalog_action_spec.rb +59 -0
  1042. data/spec/models/patch_many_items_catalog_action_spec.rb +53 -0
  1043. data/spec/models/picklist_spec.rb +87 -0
  1044. data/spec/models/priority_position_spec.rb +51 -0
  1045. data/spec/models/profile_audiences_changes_spec.rb +2 -2
  1046. data/spec/models/redeem_referral_effect_props_spec.rb +2 -2
  1047. data/spec/models/referral_constraints_spec.rb +2 -2
  1048. data/spec/models/referral_created_effect_props_spec.rb +2 -2
  1049. data/spec/models/referral_rejection_reason_spec.rb +3 -3
  1050. data/spec/models/referral_spec.rb +2 -2
  1051. data/spec/models/reject_coupon_effect_props_spec.rb +2 -2
  1052. data/spec/models/reject_referral_effect_props_spec.rb +2 -2
  1053. data/spec/models/remove_item_catalog_action_spec.rb +41 -0
  1054. data/spec/models/remove_many_items_catalog_action_spec.rb +41 -0
  1055. data/spec/models/reopen_session_response_spec.rb +41 -0
  1056. data/spec/models/reserve_coupon_effect_props_spec.rb +53 -0
  1057. data/spec/models/return_integration_request_spec.rb +2 -2
  1058. data/spec/models/returned_cart_item_spec.rb +2 -2
  1059. data/spec/models/role_assign_spec.rb +2 -2
  1060. data/spec/models/role_membership_spec.rb +2 -2
  1061. data/spec/models/role_spec.rb +2 -2
  1062. data/spec/models/role_v2_application_details_spec.rb +53 -0
  1063. data/spec/models/role_v2_permission_set_spec.rb +47 -0
  1064. data/spec/models/role_v2_permissions_roles_spec.rb +53 -0
  1065. data/spec/models/role_v2_permissions_spec.rb +47 -0
  1066. data/spec/models/{loyalty_points_spec.rb → role_v2_spec.rb} +13 -13
  1067. data/spec/models/rollback_added_loyalty_points_effect_props_spec.rb +2 -2
  1068. data/spec/models/rollback_coupon_effect_props_spec.rb +2 -2
  1069. data/spec/models/rollback_deducted_loyalty_points_effect_props_spec.rb +2 -2
  1070. data/spec/models/rollback_discount_effect_props_spec.rb +2 -2
  1071. data/spec/models/rollback_referral_effect_props_spec.rb +2 -2
  1072. data/spec/models/rule_failure_reason_spec.rb +2 -2
  1073. data/spec/models/rule_spec.rb +14 -2
  1074. data/spec/models/ruleset_spec.rb +8 -2
  1075. data/spec/models/saml_connection_metadata_spec.rb +2 -2
  1076. data/spec/models/saml_connection_spec.rb +2 -2
  1077. data/spec/models/saml_login_endpoint_spec.rb +2 -2
  1078. data/spec/models/session_spec.rb +2 -2
  1079. data/spec/models/set_discount_effect_props_spec.rb +2 -2
  1080. data/spec/models/set_discount_per_additional_cost_effect_props_spec.rb +2 -2
  1081. data/spec/models/set_discount_per_additional_cost_per_item_effect_props_spec.rb +2 -2
  1082. data/spec/models/set_discount_per_item_effect_props_spec.rb +14 -2
  1083. data/spec/models/show_bundle_metadata_effect_props_spec.rb +2 -2
  1084. data/spec/models/show_notification_effect_props_spec.rb +2 -2
  1085. data/spec/models/slot_def_spec.rb +2 -2
  1086. data/spec/models/strikethrough_changed_item_spec.rb +77 -0
  1087. data/spec/models/strikethrough_custom_effect_per_item_props_spec.rb +53 -0
  1088. data/spec/models/strikethrough_effect_spec.rb +71 -0
  1089. data/spec/models/strikethrough_labeling_notification_spec.rb +65 -0
  1090. data/spec/models/strikethrough_set_discount_per_item_effect_props_spec.rb +47 -0
  1091. data/spec/models/strikethrough_trigger_spec.rb +65 -0
  1092. data/spec/models/talang_attribute_spec.rb +97 -0
  1093. data/spec/models/talang_attribute_visibility_spec.rb +47 -0
  1094. data/spec/models/template_arg_def_spec.rb +15 -3
  1095. data/spec/models/template_def_spec.rb +2 -2
  1096. data/spec/models/template_limit_config_spec.rb +2 -2
  1097. data/spec/models/tier_spec.rb +2 -2
  1098. data/spec/models/transfer_loyalty_card_spec.rb +41 -0
  1099. data/spec/models/trigger_webhook_effect_props_spec.rb +2 -2
  1100. data/spec/models/update_account_spec.rb +2 -2
  1101. data/spec/models/update_application_spec.rb +2 -2
  1102. data/spec/models/update_attribute_effect_props_spec.rb +2 -2
  1103. data/spec/models/update_audience_spec.rb +2 -2
  1104. data/spec/models/update_campaign_collection_spec.rb +2 -2
  1105. data/spec/models/update_campaign_group_spec.rb +2 -2
  1106. data/spec/models/update_campaign_spec.rb +3 -3
  1107. data/spec/models/update_campaign_template_spec.rb +9 -3
  1108. data/spec/models/update_catalog_spec.rb +2 -2
  1109. data/spec/models/update_collection_spec.rb +2 -2
  1110. data/spec/models/update_coupon_batch_spec.rb +8 -2
  1111. data/spec/models/update_coupon_spec.rb +14 -2
  1112. data/spec/models/update_custom_effect_spec.rb +8 -2
  1113. data/spec/models/update_loyalty_card_spec.rb +2 -2
  1114. data/spec/models/update_loyalty_program_spec.rb +8 -2
  1115. data/spec/models/update_picklist_spec.rb +51 -0
  1116. data/spec/models/update_referral_batch_spec.rb +2 -2
  1117. data/spec/models/update_referral_spec.rb +2 -2
  1118. data/spec/models/update_role_spec.rb +2 -2
  1119. data/spec/models/update_user_latest_feed_timestamp_spec.rb +2 -2
  1120. data/spec/models/update_user_spec.rb +2 -2
  1121. data/spec/models/user_entity_spec.rb +2 -2
  1122. data/spec/models/user_feed_notifications_spec.rb +2 -2
  1123. data/spec/models/user_spec.rb +2 -2
  1124. data/spec/models/webhook_activation_log_entry_spec.rb +2 -2
  1125. data/spec/models/webhook_log_entry_spec.rb +2 -2
  1126. data/spec/models/webhook_spec.rb +2 -2
  1127. data/spec/models/will_award_giveaway_effect_props_spec.rb +2 -2
  1128. data/spec/spec_helper.rb +2 -2
  1129. data/talon_one.gemspec +2 -2
  1130. metadata +362 -14
  1131. data/docs/LoyaltyPoints.md +0 -25
  1132. data/docs/LoyaltyProjection.md +0 -21
  1133. data/docs/LoyaltyProjectionData.md +0 -23
@@ -1,9 +1,9 @@
1
1
  =begin
2
2
  #Talon.One API
3
3
 
4
- #Use the Talon.One API to integrate with your application and to manage applications and campaigns: - Use the operations in the [Integration API section](#integration-api) are used to integrate with our platform - Use the operation in the [Management API section](#management-api) to manage applications and campaigns. ## Determining the base URL of the endpoints The API is available at the same hostname as your Campaign Manager deployment. For example, if you are reading this page at `https://mycompany.talon.one/docs/api/`, the URL for the [updateCustomerSession](https://docs.talon.one/integration-api/#operation/updateCustomerSessionV2) endpoint is `https://mycompany.talon.one/v2/customer_sessions/{Id}`
4
+ #Use the Talon.One API to integrate with your application and to manage applications and campaigns: - Use the operations in the [Integration API section](#integration-api) are used to integrate with our platform - Use the operation in the [Management API section](#management-api) to manage applications and campaigns. ## Determining the base URL of the endpoints The API is available at the same hostname as your Campaign Manager deployment. For example, if you access the Campaign Manager at `https://yourbaseurl.talon.one/`, the URL for the [updateCustomerSessionV2](https://docs.talon.one/integration-api#operation/updateCustomerSessionV2) endpoint is `https://yourbaseurl.talon.one/v2/customer_sessions/{Id}`
5
5
 
6
- The version of the OpenAPI document: 1.0.0
6
+ The version of the OpenAPI document:
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 4.3.1
@@ -20,8 +20,8 @@ module TalonOne
20
20
  @api_client = api_client
21
21
  end
22
22
  # Create audience
23
- # Create an audience. The audience can be created directly from scratch or can come from third party platforms. To create an audience from an existing audience in mParticle or Segment: 1. Set the `integration` property to `mparticle` or `segment` depending on a third-party platform. 1. Set `integrationId` to the ID of this audience in a third-party platform. To create an audience from an existing audience in another platform than mParticle: 1. Do not use the `integration` property. 1. Set `integrationId` to the ID of this audience in the 3rd-party platform. To create an audience from scratch: 1. Only set the `name` property. Once you create your first audience, audience-specific rule conditions are enabled in the Rule Builder.
24
- # @param body [NewAudience]
23
+ # Create an audience. The audience can be created directly from scratch or can come from third party platforms. **Note:** Audiences can also be created from scratch via the Campaign Manager. See the [docs](https://docs.talon.one/docs/product/audiences/creating-audiences). To create an audience from an existing audience from a [technology partner](https://docs.talon.one/docs/dev/technology-partners/overview): 1. Set the `integration` property to `mparticle`, `segment` etc., depending on a third-party platform. 1. Set `integrationId` to the ID of this audience in a third-party platform. To create an audience from an existing audience in another platform: 1. Do not use the `integration` property. 1. Set `integrationId` to the ID of this audience in the 3rd-party platform. To create an audience from scratch: 1. Only set the `name` property. Once you create your first audience, audience-specific rule conditions are enabled in the Rule Builder.
24
+ # @param body [NewAudience] body
25
25
  # @param [Hash] opts the optional parameters
26
26
  # @return [Audience]
27
27
  def create_audience_v2(body, opts = {})
@@ -30,8 +30,8 @@ module TalonOne
30
30
  end
31
31
 
32
32
  # Create audience
33
- # Create an audience. The audience can be created directly from scratch or can come from third party platforms. To create an audience from an existing audience in mParticle or Segment: 1. Set the `integration` property to `mparticle` or `segment` depending on a third-party platform. 1. Set `integrationId` to the ID of this audience in a third-party platform. To create an audience from an existing audience in another platform than mParticle: 1. Do not use the `integration` property. 1. Set `integrationId` to the ID of this audience in the 3rd-party platform. To create an audience from scratch: 1. Only set the `name` property. Once you create your first audience, audience-specific rule conditions are enabled in the Rule Builder.
34
- # @param body [NewAudience]
33
+ # Create an audience. The audience can be created directly from scratch or can come from third party platforms. **Note:** Audiences can also be created from scratch via the Campaign Manager. See the [docs](https://docs.talon.one/docs/product/audiences/creating-audiences). To create an audience from an existing audience from a [technology partner](https://docs.talon.one/docs/dev/technology-partners/overview): 1. Set the `integration` property to `mparticle`, `segment` etc., depending on a third-party platform. 1. Set `integrationId` to the ID of this audience in a third-party platform. To create an audience from an existing audience in another platform: 1. Do not use the `integration` property. 1. Set `integrationId` to the ID of this audience in the 3rd-party platform. To create an audience from scratch: 1. Only set the `name` property. Once you create your first audience, audience-specific rule conditions are enabled in the Rule Builder.
34
+ # @param body [NewAudience] body
35
35
  # @param [Hash] opts the optional parameters
36
36
  # @return [Array<(Audience, Integer, Hash)>] Audience data, response status code and response headers
37
37
  def create_audience_v2_with_http_info(body, opts = {})
@@ -84,9 +84,9 @@ module TalonOne
84
84
  end
85
85
 
86
86
  # Create coupon reservation
87
- # Create a coupon reservation for specified customer profiles on the specified coupon. Reserving a coupon allows you to associate a coupon code to a given customer(s). You can then list the reserved coupons of a given customer with the [List customer data endpoint](/integration-api/#operation/getCustomerInventory). If a coupon gets created for a specific user, it will automatically show up in their coupons. When a user redeems a coupon, a reservation is automatically created after the redemption and the used coupon will be returned in the [List customer data endpoint](/integration-api/#operation/getCustomerInventory). **Important:** - This endpoint creates a **soft** reservation. _Any_ customer can use a reserved coupon code and proceed to checkout. - To create a hard reservation, use the [Create coupons](/management-api/#operation/createCoupons) or [Create coupons for multiple recipients](/management-api/#operation/createCouponsForMultipleRecipients) endpoints setting the `recipientsIntegrationId` property. For example, you can use this endpoint and `List customer data` to create a \"coupon wallet\" by reserving coupon codes for a customer, and then displaying their \"coupon wallet\" when they visit your store.
88
- # @param coupon_value [String] The value of a coupon
89
- # @param body [CouponReservations]
87
+ # Create a coupon reservation for specified customer profiles on the specified coupon. You can also create a reservation via the Campaign Manager using the [Create coupon code reservation effect](https://docs.talon.one/docs/product/rules/effects/using-effects#reserving-a-coupon-code). Reserving a coupon allows you to associate a coupon code to a given customer(s). You can then list the reserved coupons of a given customer with the [List customer data](https://docs.talon.one/integration-api#operation/getCustomerInventory) endpoint. If a coupon gets created for a specific user, it will automatically appear in their coupons. When a user redeems a coupon, a reservation is automatically created after the redemption and the used coupon will be returned in the [List customer data](https://docs.talon.one/integration-api#operation/getCustomerInventory) endpoint. For example, you can use this endpoint and `List customer data` to create a _coupon wallet_ by reserving coupon codes for a customer, and then displaying their coupon wallet when they visit your store. <div class=\"redoc-section\"> <p class=\"title\">Important</p> This endpoint creates a **soft** reservation. _Any_ customer can use a reserved coupon code and proceed to checkout. To create a hard reservation, you can: - use the [Create coupons](https://docs.talon.one/management-api#operation/createCoupons) endpoint or, - use the [Create coupons for multiple recipients](https://docs.talon.one/management-api#operation/createCouponsForMultipleRecipients) endpoint setting the `recipientsIntegrationId` property or, - create a coupon code with the **Reservation mandatory** option then use the [Create coupon code reservation effect](https://docs.talon.one/docs/product/rules/effects/using-effects#reserving-a-coupon-code). </div> To delete a reservation, use the [Delete reservation](https://docs.talon.one/integration-api#tag/Coupons/operation/deleteCouponReservation) endpoint.
88
+ # @param coupon_value [String] The code of the coupon.
89
+ # @param body [CouponReservations] body
90
90
  # @param [Hash] opts the optional parameters
91
91
  # @return [Coupon]
92
92
  def create_coupon_reservation(coupon_value, body, opts = {})
@@ -95,9 +95,9 @@ module TalonOne
95
95
  end
96
96
 
97
97
  # Create coupon reservation
98
- # Create a coupon reservation for specified customer profiles on the specified coupon. Reserving a coupon allows you to associate a coupon code to a given customer(s). You can then list the reserved coupons of a given customer with the [List customer data endpoint](/integration-api/#operation/getCustomerInventory). If a coupon gets created for a specific user, it will automatically show up in their coupons. When a user redeems a coupon, a reservation is automatically created after the redemption and the used coupon will be returned in the [List customer data endpoint](/integration-api/#operation/getCustomerInventory). **Important:** - This endpoint creates a **soft** reservation. _Any_ customer can use a reserved coupon code and proceed to checkout. - To create a hard reservation, use the [Create coupons](/management-api/#operation/createCoupons) or [Create coupons for multiple recipients](/management-api/#operation/createCouponsForMultipleRecipients) endpoints setting the &#x60;recipientsIntegrationId&#x60; property. For example, you can use this endpoint and &#x60;List customer data&#x60; to create a \&quot;coupon wallet\&quot; by reserving coupon codes for a customer, and then displaying their \&quot;coupon wallet\&quot; when they visit your store.
99
- # @param coupon_value [String] The value of a coupon
100
- # @param body [CouponReservations]
98
+ # Create a coupon reservation for specified customer profiles on the specified coupon. You can also create a reservation via the Campaign Manager using the [Create coupon code reservation effect](https://docs.talon.one/docs/product/rules/effects/using-effects#reserving-a-coupon-code). Reserving a coupon allows you to associate a coupon code to a given customer(s). You can then list the reserved coupons of a given customer with the [List customer data](https://docs.talon.one/integration-api#operation/getCustomerInventory) endpoint. If a coupon gets created for a specific user, it will automatically appear in their coupons. When a user redeems a coupon, a reservation is automatically created after the redemption and the used coupon will be returned in the [List customer data](https://docs.talon.one/integration-api#operation/getCustomerInventory) endpoint. For example, you can use this endpoint and &#x60;List customer data&#x60; to create a _coupon wallet_ by reserving coupon codes for a customer, and then displaying their coupon wallet when they visit your store. &lt;div class&#x3D;\&quot;redoc-section\&quot;&gt; &lt;p class&#x3D;\&quot;title\&quot;&gt;Important&lt;/p&gt; This endpoint creates a **soft** reservation. _Any_ customer can use a reserved coupon code and proceed to checkout. To create a hard reservation, you can: - use the [Create coupons](https://docs.talon.one/management-api#operation/createCoupons) endpoint or, - use the [Create coupons for multiple recipients](https://docs.talon.one/management-api#operation/createCouponsForMultipleRecipients) endpoint setting the &#x60;recipientsIntegrationId&#x60; property or, - create a coupon code with the **Reservation mandatory** option then use the [Create coupon code reservation effect](https://docs.talon.one/docs/product/rules/effects/using-effects#reserving-a-coupon-code). &lt;/div&gt; To delete a reservation, use the [Delete reservation](https://docs.talon.one/integration-api#tag/Coupons/operation/deleteCouponReservation) endpoint.
99
+ # @param coupon_value [String] The code of the coupon.
100
+ # @param body [CouponReservations] body
101
101
  # @param [Hash] opts the optional parameters
102
102
  # @return [Array<(Coupon, Integer, Hash)>] Coupon data, response status code and response headers
103
103
  def create_coupon_reservation_with_http_info(coupon_value, body, opts = {})
@@ -155,7 +155,7 @@ module TalonOne
155
155
 
156
156
  # Create referral code for an advocate
157
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.
158
- # @param body [NewReferral]
158
+ # @param body [NewReferral] body
159
159
  # @param [Hash] opts the optional parameters
160
160
  # @return [Referral]
161
161
  def create_referral(body, opts = {})
@@ -165,7 +165,7 @@ module TalonOne
165
165
 
166
166
  # Create referral code for an advocate
167
167
  # Creates a referral code for an advocate. The code will be valid for the referral campaign for which is created, indicated in the &#x60;campaignId&#x60; parameter, and will be associated with the profile specified in the &#x60;advocateProfileIntegrationId&#x60; parameter as the advocate&#39;s profile.
168
- # @param body [NewReferral]
168
+ # @param body [NewReferral] body
169
169
  # @param [Hash] opts the optional parameters
170
170
  # @return [Array<(Referral, Integer, Hash)>] Referral data, response status code and response headers
171
171
  def create_referral_with_http_info(body, opts = {})
@@ -219,9 +219,9 @@ module TalonOne
219
219
 
220
220
  # Create referral codes for multiple advocates
221
221
  # 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.
222
- # @param body [NewReferralsForMultipleAdvocates]
222
+ # @param body [NewReferralsForMultipleAdvocates] body
223
223
  # @param [Hash] opts the optional parameters
224
- # @option opts [String] :silent 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 essential data such as the updated customer profiles and session-related information. (default to 'yes')
224
+ # @option opts [String] :silent 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. (default to 'yes')
225
225
  # @return [InlineResponse201]
226
226
  def create_referrals_for_multiple_advocates(body, opts = {})
227
227
  data, _status_code, _headers = create_referrals_for_multiple_advocates_with_http_info(body, opts)
@@ -230,9 +230,9 @@ module TalonOne
230
230
 
231
231
  # Create referral codes for multiple advocates
232
232
  # Creates unique referral codes for multiple advocates. The code will be valid for the referral campaign for which it is created, indicated in the &#x60;campaignId&#x60; parameter, and one referral code will be associated with one advocate using the profile specified in the &#x60;advocateProfileIntegrationId&#x60; parameter as the advocate&#39;s profile.
233
- # @param body [NewReferralsForMultipleAdvocates]
233
+ # @param body [NewReferralsForMultipleAdvocates] body
234
234
  # @param [Hash] opts the optional parameters
235
- # @option opts [String] :silent 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 essential data such as the updated customer profiles and session-related information.
235
+ # @option opts [String] :silent 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.
236
236
  # @return [Array<(InlineResponse201, Integer, Hash)>] InlineResponse201 data, response status code and response headers
237
237
  def create_referrals_for_multiple_advocates_with_http_info(body, opts = {})
238
238
  if @api_client.config.debugging
@@ -328,7 +328,7 @@ module TalonOne
328
328
  return_type = opts[:return_type]
329
329
 
330
330
  # auth_names
331
- auth_names = opts[:auth_names] || ['manager_auth']
331
+ auth_names = opts[:auth_names] || ['api_key_v1']
332
332
 
333
333
  new_options = opts.merge(
334
334
  :header_params => header_params,
@@ -347,7 +347,7 @@ module TalonOne
347
347
  end
348
348
 
349
349
  # Delete audience
350
- # Delete an audience created by a third-party integration. **Warning:** This endpoint also removes any associations recorded between a customer profile and this audience.
350
+ # Delete an audience created by a third-party integration. **Warning:** This endpoint also removes any associations recorded between a customer profile and this audience. **Note:** Audiences can also be deleted via the Campaign Manager. See the [docs](https://docs.talon.one/docs/product/audiences/managing-audiences#deleting-an-audience).
351
351
  # @param audience_id [Integer] The ID of the audience. You get it via the &#x60;id&#x60; property when [creating an audience](#operation/createAudienceV2).
352
352
  # @param [Hash] opts the optional parameters
353
353
  # @return [nil]
@@ -357,7 +357,7 @@ module TalonOne
357
357
  end
358
358
 
359
359
  # Delete audience
360
- # Delete an audience created by a third-party integration. **Warning:** This endpoint also removes any associations recorded between a customer profile and this audience.
360
+ # Delete an audience created by a third-party integration. **Warning:** This endpoint also removes any associations recorded between a customer profile and this audience. **Note:** Audiences can also be deleted via the Campaign Manager. See the [docs](https://docs.talon.one/docs/product/audiences/managing-audiences#deleting-an-audience).
361
361
  # @param audience_id [Integer] The ID of the audience. You get it via the &#x60;id&#x60; property when [creating an audience](#operation/createAudienceV2).
362
362
  # @param [Hash] opts the optional parameters
363
363
  # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
@@ -390,7 +390,7 @@ module TalonOne
390
390
  return_type = opts[:return_type]
391
391
 
392
392
  # auth_names
393
- auth_names = opts[:auth_names] || ['manager_auth']
393
+ auth_names = opts[:auth_names] || ['api_key_v1']
394
394
 
395
395
  new_options = opts.merge(
396
396
  :header_params => header_params,
@@ -409,9 +409,9 @@ module TalonOne
409
409
  end
410
410
 
411
411
  # Delete coupon reservations
412
- # Remove all passed customer profiles reservation from this coupon.
413
- # @param coupon_value [String] The value of a coupon
414
- # @param body [CouponReservations]
412
+ # Remove all the coupon reservations from the provided customer profile integration IDs and the provided coupon code.
413
+ # @param coupon_value [String] The code of the coupon.
414
+ # @param body [CouponReservations] body
415
415
  # @param [Hash] opts the optional parameters
416
416
  # @return [nil]
417
417
  def delete_coupon_reservation(coupon_value, body, opts = {})
@@ -420,9 +420,9 @@ module TalonOne
420
420
  end
421
421
 
422
422
  # Delete coupon reservations
423
- # Remove all passed customer profiles reservation from this coupon.
424
- # @param coupon_value [String] The value of a coupon
425
- # @param body [CouponReservations]
423
+ # Remove all the coupon reservations from the provided customer profile integration IDs and the provided coupon code.
424
+ # @param coupon_value [String] The code of the coupon.
425
+ # @param body [CouponReservations] body
426
426
  # @param [Hash] opts the optional parameters
427
427
  # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
428
428
  def delete_coupon_reservation_with_http_info(coupon_value, body, opts = {})
@@ -480,7 +480,7 @@ module TalonOne
480
480
 
481
481
  # Delete customer's personal data
482
482
  # Delete all attributes on the customer profile and on entities that reference this customer profile. **Important:** To preserve performance, we recommend avoiding deleting customer data during peak-traffic hours.
483
- # @param integration_id [String] The integration ID of the customer profile. You can get the &#x60;integrationId&#x60; of a profile using: - A customer session integration Id with the [Update customer session endpoint](https://docs.talon.one/integration-api/#operation/updateCustomerSessionV2). - The Management API with the [List application&#39;s customers endpoint](https://docs.talon.one/management-api/#operation/getApplicationCustomers).
483
+ # @param integration_id [String] The integration ID of the customer profile. You can get the &#x60;integrationId&#x60; of a profile using: - A customer session integration Id with the [Update customer session](https://docs.talon.one/integration-api#operation/updateCustomerSessionV2) endpoint. - The Management API with the [List application&#39;s customers](https://docs.talon.one/management-api#operation/getApplicationCustomers) endpoint.
484
484
  # @param [Hash] opts the optional parameters
485
485
  # @return [nil]
486
486
  def delete_customer_data(integration_id, opts = {})
@@ -490,7 +490,7 @@ module TalonOne
490
490
 
491
491
  # Delete customer&#39;s personal data
492
492
  # Delete all attributes on the customer profile and on entities that reference this customer profile. **Important:** To preserve performance, we recommend avoiding deleting customer data during peak-traffic hours.
493
- # @param integration_id [String] The integration ID of the customer profile. You can get the &#x60;integrationId&#x60; of a profile using: - A customer session integration Id with the [Update customer session endpoint](https://docs.talon.one/integration-api/#operation/updateCustomerSessionV2). - The Management API with the [List application&#39;s customers endpoint](https://docs.talon.one/management-api/#operation/getApplicationCustomers).
493
+ # @param integration_id [String] The integration ID of the customer profile. You can get the &#x60;integrationId&#x60; of a profile using: - A customer session integration Id with the [Update customer session](https://docs.talon.one/integration-api#operation/updateCustomerSessionV2) endpoint. - The Management API with the [List application&#39;s customers](https://docs.talon.one/management-api#operation/getApplicationCustomers) endpoint.
494
494
  # @param [Hash] opts the optional parameters
495
495
  # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
496
496
  def delete_customer_data_with_http_info(integration_id, opts = {})
@@ -541,15 +541,14 @@ module TalonOne
541
541
  end
542
542
 
543
543
  # List customer data
544
- # Return the customer inventory regarding entities referencing this customer profile's `integrationId`. Typical entities returned are: customer profile information, referral codes, loyalty points and reserved coupons. Reserved coupons also include redeemed coupons. You can also use this endpoint to get the projected loyalty balances in order to notify your customers about points that are about to expire, or to remind them how many points they have.
545
- # @param integration_id [String] The integration ID of the customer profile. You can get the &#x60;integrationId&#x60; of a profile using: - A customer session integration Id with the [Update customer session endpoint](https://docs.talon.one/integration-api/#operation/updateCustomerSessionV2). - The Management API with the [List application&#39;s customers endpoint](https://docs.talon.one/management-api/#operation/getApplicationCustomers).
544
+ # Return the customer inventory regarding entities referencing this customer profile's `integrationId`. Typical entities returned are: customer profile information, referral codes, loyalty points, loyalty cards and reserved coupons. Reserved coupons also include redeemed coupons.
545
+ # @param integration_id [String] The integration ID of the customer profile. You can get the &#x60;integrationId&#x60; of a profile using: - A customer session integration Id with the [Update customer session](https://docs.talon.one/integration-api#operation/updateCustomerSessionV2) endpoint. - The Management API with the [List application&#39;s customers](https://docs.talon.one/management-api#operation/getApplicationCustomers) endpoint.
546
546
  # @param [Hash] opts the optional parameters
547
547
  # @option opts [Boolean] :profile Set to &#x60;true&#x60; to include customer profile information in the response.
548
548
  # @option opts [Boolean] :referrals Set to &#x60;true&#x60; to include referral information in the response.
549
549
  # @option opts [Boolean] :coupons Set to &#x60;true&#x60; to include coupon information in the response.
550
550
  # @option opts [Boolean] :loyalty Set to &#x60;true&#x60; to include loyalty information in the response.
551
551
  # @option opts [Boolean] :giveaways Set to &#x60;true&#x60; to include giveaways information in the response.
552
- # @option opts [DateTime] :loyalty_projection_end_date Set an end date to query the projected loyalty balances. You can project results up to 31 days from today.
553
552
  # @return [CustomerInventory]
554
553
  def get_customer_inventory(integration_id, opts = {})
555
554
  data, _status_code, _headers = get_customer_inventory_with_http_info(integration_id, opts)
@@ -557,15 +556,14 @@ module TalonOne
557
556
  end
558
557
 
559
558
  # List customer data
560
- # Return the customer inventory regarding entities referencing this customer profile&#39;s &#x60;integrationId&#x60;. Typical entities returned are: customer profile information, referral codes, loyalty points and reserved coupons. Reserved coupons also include redeemed coupons. You can also use this endpoint to get the projected loyalty balances in order to notify your customers about points that are about to expire, or to remind them how many points they have.
561
- # @param integration_id [String] The integration ID of the customer profile. You can get the &#x60;integrationId&#x60; of a profile using: - A customer session integration Id with the [Update customer session endpoint](https://docs.talon.one/integration-api/#operation/updateCustomerSessionV2). - The Management API with the [List application&#39;s customers endpoint](https://docs.talon.one/management-api/#operation/getApplicationCustomers).
559
+ # Return the customer inventory regarding entities referencing this customer profile&#39;s &#x60;integrationId&#x60;. Typical entities returned are: customer profile information, referral codes, loyalty points, loyalty cards and reserved coupons. Reserved coupons also include redeemed coupons.
560
+ # @param integration_id [String] The integration ID of the customer profile. You can get the &#x60;integrationId&#x60; of a profile using: - A customer session integration Id with the [Update customer session](https://docs.talon.one/integration-api#operation/updateCustomerSessionV2) endpoint. - The Management API with the [List application&#39;s customers](https://docs.talon.one/management-api#operation/getApplicationCustomers) endpoint.
562
561
  # @param [Hash] opts the optional parameters
563
562
  # @option opts [Boolean] :profile Set to &#x60;true&#x60; to include customer profile information in the response.
564
563
  # @option opts [Boolean] :referrals Set to &#x60;true&#x60; to include referral information in the response.
565
564
  # @option opts [Boolean] :coupons Set to &#x60;true&#x60; to include coupon information in the response.
566
565
  # @option opts [Boolean] :loyalty Set to &#x60;true&#x60; to include loyalty information in the response.
567
566
  # @option opts [Boolean] :giveaways Set to &#x60;true&#x60; to include giveaways information in the response.
568
- # @option opts [DateTime] :loyalty_projection_end_date Set an end date to query the projected loyalty balances. You can project results up to 31 days from today.
569
567
  # @return [Array<(CustomerInventory, Integer, Hash)>] CustomerInventory data, response status code and response headers
570
568
  def get_customer_inventory_with_http_info(integration_id, opts = {})
571
569
  if @api_client.config.debugging
@@ -585,7 +583,6 @@ module TalonOne
585
583
  query_params[:'coupons'] = opts[:'coupons'] if !opts[:'coupons'].nil?
586
584
  query_params[:'loyalty'] = opts[:'loyalty'] if !opts[:'loyalty'].nil?
587
585
  query_params[:'giveaways'] = opts[:'giveaways'] if !opts[:'giveaways'].nil?
588
- query_params[:'loyaltyProjectionEndDate'] = opts[:'loyalty_projection_end_date'] if !opts[:'loyalty_projection_end_date'].nil?
589
586
 
590
587
  # header parameters
591
588
  header_params = opts[:header_params] || {}
@@ -621,8 +618,8 @@ module TalonOne
621
618
  end
622
619
 
623
620
  # Get customer session
624
- # Get customer session data.
625
- # @param customer_session_id [String] The &#x60;integration ID&#x60; of the customer session. You set this ID when you create a customer session. You can see existing customer session integration IDs in the Campaign Manager&#39;s **Sessions** menu, or via the [List Application session endpoint](https://docs.talon.one/management-api/#operation/getApplicationSessions).
621
+ # Get the details of the given customer session. You can get the same data via other endpoints that also apply changes, which can help you save requests and increase performance. See: - [Update customer session](#tag/Customer-sessions/operation/updateCustomerSessionV2) - [Update customer profile](#tag/Customer-profiles/operation/updateCustomerProfileV2)
622
+ # @param customer_session_id [String] The &#x60;integration ID&#x60; of the customer session. You set this ID when you create a customer session. You can see existing customer session integration IDs in the Campaign Manager&#39;s **Sessions** menu, or via the [List Application session](https://docs.talon.one/management-api#operation/getApplicationSessions) endpoint.
626
623
  # @param [Hash] opts the optional parameters
627
624
  # @return [IntegrationCustomerSessionResponse]
628
625
  def get_customer_session(customer_session_id, opts = {})
@@ -631,8 +628,8 @@ module TalonOne
631
628
  end
632
629
 
633
630
  # Get customer session
634
- # Get customer session data.
635
- # @param customer_session_id [String] The &#x60;integration ID&#x60; of the customer session. You set this ID when you create a customer session. You can see existing customer session integration IDs in the Campaign Manager&#39;s **Sessions** menu, or via the [List Application session endpoint](https://docs.talon.one/management-api/#operation/getApplicationSessions).
631
+ # Get the details of the given customer session. You can get the same data via other endpoints that also apply changes, which can help you save requests and increase performance. See: - [Update customer session](#tag/Customer-sessions/operation/updateCustomerSessionV2) - [Update customer profile](#tag/Customer-profiles/operation/updateCustomerProfileV2)
632
+ # @param customer_session_id [String] The &#x60;integration ID&#x60; of the customer session. You set this ID when you create a customer session. You can see existing customer session integration IDs in the Campaign Manager&#39;s **Sessions** menu, or via the [List Application session](https://docs.talon.one/management-api#operation/getApplicationSessions) endpoint.
636
633
  # @param [Hash] opts the optional parameters
637
634
  # @return [Array<(IntegrationCustomerSessionResponse, Integer, Hash)>] IntegrationCustomerSessionResponse data, response status code and response headers
638
635
  def get_customer_session_with_http_info(customer_session_id, opts = {})
@@ -682,9 +679,341 @@ module TalonOne
682
679
  return data, status_code, headers
683
680
  end
684
681
 
682
+ # Get customer's loyalty points
683
+ # Retrieve loyalty ledger balances for the given Integration ID in the specified loyalty program. You can filter balances by date. If no filtering options are applied, you retrieve all loyalty balances on the current date for the given integration ID. Loyalty balances are calculated when Talon.One receives your request using the points stored in our database, so retrieving a large number of balances at once can impact performance. **Note:** For more information, see [our documentation on managing loyalty data](https://docs.talon.one/docs/product/loyalty-programs/managing-loyalty-data#obtaining-the-loyalty-balances-of-a-customer).
684
+ # @param loyalty_program_id [Integer] Identifier of the card-based loyalty program containing the loyalty card. You can get the ID with the [List loyalty programs](https://docs.talon.one/management-api#tag/Loyalty/operation/getLoyaltyPrograms) endpoint.
685
+ # @param 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.
686
+ # @param [Hash] opts the optional parameters
687
+ # @option opts [DateTime] :end_date Used to return balances only for entries older than this timestamp. The expired, active, and pending points are relative to this timestamp. **Note:** It must be an RFC3339 timestamp string.
688
+ # @return [LoyaltyBalances]
689
+ def get_loyalty_balances(loyalty_program_id, integration_id, opts = {})
690
+ data, _status_code, _headers = get_loyalty_balances_with_http_info(loyalty_program_id, integration_id, opts)
691
+ data
692
+ end
693
+
694
+ # Get customer&#39;s loyalty points
695
+ # Retrieve loyalty ledger balances for the given Integration ID in the specified loyalty program. You can filter balances by date. If no filtering options are applied, you retrieve all loyalty balances on the current date for the given integration ID. Loyalty balances are calculated when Talon.One receives your request using the points stored in our database, so retrieving a large number of balances at once can impact performance. **Note:** For more information, see [our documentation on managing loyalty data](https://docs.talon.one/docs/product/loyalty-programs/managing-loyalty-data#obtaining-the-loyalty-balances-of-a-customer).
696
+ # @param loyalty_program_id [Integer] Identifier of the card-based loyalty program containing the loyalty card. You can get the ID with the [List loyalty programs](https://docs.talon.one/management-api#tag/Loyalty/operation/getLoyaltyPrograms) endpoint.
697
+ # @param 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.
698
+ # @param [Hash] opts the optional parameters
699
+ # @option opts [DateTime] :end_date Used to return balances only for entries older than this timestamp. The expired, active, and pending points are relative to this timestamp. **Note:** It must be an RFC3339 timestamp string.
700
+ # @return [Array<(LoyaltyBalances, Integer, Hash)>] LoyaltyBalances data, response status code and response headers
701
+ def get_loyalty_balances_with_http_info(loyalty_program_id, integration_id, opts = {})
702
+ if @api_client.config.debugging
703
+ @api_client.config.logger.debug 'Calling API: IntegrationApi.get_loyalty_balances ...'
704
+ end
705
+ # verify the required parameter 'loyalty_program_id' is set
706
+ if @api_client.config.client_side_validation && loyalty_program_id.nil?
707
+ fail ArgumentError, "Missing the required parameter 'loyalty_program_id' when calling IntegrationApi.get_loyalty_balances"
708
+ end
709
+ # verify the required parameter 'integration_id' is set
710
+ if @api_client.config.client_side_validation && integration_id.nil?
711
+ fail ArgumentError, "Missing the required parameter 'integration_id' when calling IntegrationApi.get_loyalty_balances"
712
+ end
713
+ # resource path
714
+ local_var_path = '/v1/loyalty_programs/{loyaltyProgramId}/profile/{integrationId}/balances'.sub('{' + 'loyaltyProgramId' + '}', CGI.escape(loyalty_program_id.to_s)).sub('{' + 'integrationId' + '}', CGI.escape(integration_id.to_s))
715
+
716
+ # query parameters
717
+ query_params = opts[:query_params] || {}
718
+ query_params[:'endDate'] = opts[:'end_date'] if !opts[:'end_date'].nil?
719
+
720
+ # header parameters
721
+ header_params = opts[:header_params] || {}
722
+ # HTTP header 'Accept' (if needed)
723
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
724
+
725
+ # form parameters
726
+ form_params = opts[:form_params] || {}
727
+
728
+ # http body (model)
729
+ post_body = opts[:body]
730
+
731
+ # return_type
732
+ return_type = opts[:return_type] || 'LoyaltyBalances'
733
+
734
+ # auth_names
735
+ auth_names = opts[:auth_names] || ['api_key_v1']
736
+
737
+ new_options = opts.merge(
738
+ :header_params => header_params,
739
+ :query_params => query_params,
740
+ :form_params => form_params,
741
+ :body => post_body,
742
+ :auth_names => auth_names,
743
+ :return_type => return_type
744
+ )
745
+
746
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
747
+ if @api_client.config.debugging
748
+ @api_client.config.logger.debug "API called: IntegrationApi#get_loyalty_balances\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
749
+ end
750
+ return data, status_code, headers
751
+ end
752
+
753
+ # Get card's point balances
754
+ # Retrieve loyalty balances for the given loyalty card in the specified loyalty program with filtering options applied. If no filtering options are applied, all loyalty balances for the given loyalty card are returned.
755
+ # @param loyalty_program_id [Integer] Identifier of the card-based loyalty program containing the loyalty card. You can get the ID with the [List loyalty programs](https://docs.talon.one/management-api#tag/Loyalty/operation/getLoyaltyPrograms) endpoint.
756
+ # @param loyalty_card_id [String] Identifier of the loyalty card. You can get the identifier with the [List loyalty cards](https://docs.talon.one/management-api#tag/Loyalty-cards/operation/getLoyaltyCards) endpoint.
757
+ # @param [Hash] opts the optional parameters
758
+ # @option opts [DateTime] :end_date Used to return balances only for entries older than this timestamp. The expired, active, and pending points are relative to this timestamp. **Note:** It must be an RFC3339 timestamp string.
759
+ # @return [LoyaltyBalances]
760
+ def get_loyalty_card_balances(loyalty_program_id, loyalty_card_id, opts = {})
761
+ data, _status_code, _headers = get_loyalty_card_balances_with_http_info(loyalty_program_id, loyalty_card_id, opts)
762
+ data
763
+ end
764
+
765
+ # Get card&#39;s point balances
766
+ # Retrieve loyalty balances for the given loyalty card in the specified loyalty program with filtering options applied. If no filtering options are applied, all loyalty balances for the given loyalty card are returned.
767
+ # @param loyalty_program_id [Integer] Identifier of the card-based loyalty program containing the loyalty card. You can get the ID with the [List loyalty programs](https://docs.talon.one/management-api#tag/Loyalty/operation/getLoyaltyPrograms) endpoint.
768
+ # @param loyalty_card_id [String] Identifier of the loyalty card. You can get the identifier with the [List loyalty cards](https://docs.talon.one/management-api#tag/Loyalty-cards/operation/getLoyaltyCards) endpoint.
769
+ # @param [Hash] opts the optional parameters
770
+ # @option opts [DateTime] :end_date Used to return balances only for entries older than this timestamp. The expired, active, and pending points are relative to this timestamp. **Note:** It must be an RFC3339 timestamp string.
771
+ # @return [Array<(LoyaltyBalances, Integer, Hash)>] LoyaltyBalances data, response status code and response headers
772
+ def get_loyalty_card_balances_with_http_info(loyalty_program_id, loyalty_card_id, opts = {})
773
+ if @api_client.config.debugging
774
+ @api_client.config.logger.debug 'Calling API: IntegrationApi.get_loyalty_card_balances ...'
775
+ end
776
+ # verify the required parameter 'loyalty_program_id' is set
777
+ if @api_client.config.client_side_validation && loyalty_program_id.nil?
778
+ fail ArgumentError, "Missing the required parameter 'loyalty_program_id' when calling IntegrationApi.get_loyalty_card_balances"
779
+ end
780
+ # verify the required parameter 'loyalty_card_id' is set
781
+ if @api_client.config.client_side_validation && loyalty_card_id.nil?
782
+ fail ArgumentError, "Missing the required parameter 'loyalty_card_id' when calling IntegrationApi.get_loyalty_card_balances"
783
+ end
784
+ if @api_client.config.client_side_validation && loyalty_card_id.to_s.length > 108
785
+ fail ArgumentError, 'invalid value for "loyalty_card_id" when calling IntegrationApi.get_loyalty_card_balances, the character length must be smaller than or equal to 108.'
786
+ end
787
+
788
+ # resource path
789
+ local_var_path = '/v1/loyalty_programs/{loyaltyProgramId}/cards/{loyaltyCardId}/balances'.sub('{' + 'loyaltyProgramId' + '}', CGI.escape(loyalty_program_id.to_s)).sub('{' + 'loyaltyCardId' + '}', CGI.escape(loyalty_card_id.to_s))
790
+
791
+ # query parameters
792
+ query_params = opts[:query_params] || {}
793
+ query_params[:'endDate'] = opts[:'end_date'] if !opts[:'end_date'].nil?
794
+
795
+ # header parameters
796
+ header_params = opts[:header_params] || {}
797
+ # HTTP header 'Accept' (if needed)
798
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
799
+
800
+ # form parameters
801
+ form_params = opts[:form_params] || {}
802
+
803
+ # http body (model)
804
+ post_body = opts[:body]
805
+
806
+ # return_type
807
+ return_type = opts[:return_type] || 'LoyaltyBalances'
808
+
809
+ # auth_names
810
+ auth_names = opts[:auth_names] || ['api_key_v1']
811
+
812
+ new_options = opts.merge(
813
+ :header_params => header_params,
814
+ :query_params => query_params,
815
+ :form_params => form_params,
816
+ :body => post_body,
817
+ :auth_names => auth_names,
818
+ :return_type => return_type
819
+ )
820
+
821
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
822
+ if @api_client.config.debugging
823
+ @api_client.config.logger.debug "API called: IntegrationApi#get_loyalty_card_balances\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
824
+ end
825
+ return data, status_code, headers
826
+ end
827
+
828
+ # List card's transactions
829
+ # Retrieve loyalty transaction logs for the given loyalty card in the specified loyalty program with filtering options applied. If no filtering options are applied, the last 50 loyalty transactions for the given loyalty card are returned.
830
+ # @param loyalty_program_id [Integer] Identifier of the card-based loyalty program containing the loyalty card. You can get the ID with the [List loyalty programs](https://docs.talon.one/management-api#tag/Loyalty/operation/getLoyaltyPrograms) endpoint.
831
+ # @param loyalty_card_id [String] Identifier of the loyalty card. You can get the identifier with the [List loyalty cards](https://docs.talon.one/management-api#tag/Loyalty-cards/operation/getLoyaltyCards) endpoint.
832
+ # @param [Hash] opts the optional parameters
833
+ # @option opts [String] :subledger_id The ID of the subledger by which we filter the data.
834
+ # @option opts [DateTime] :start_date Date and time from which results are returned. Results are filtered by transaction creation date. **Note:** It must be an RFC3339 timestamp string.
835
+ # @option opts [DateTime] :end_date Date and time by which results are returned. Results are filtered by transaction creation date. **Note:** It must be an RFC3339 timestamp string.
836
+ # @option opts [Integer] :page_size The number of items in this response. (default to 1000)
837
+ # @option opts [Integer] :skip Skips the given number of items when paging through large result sets.
838
+ # @return [InlineResponse2001]
839
+ def get_loyalty_card_transactions(loyalty_program_id, loyalty_card_id, opts = {})
840
+ data, _status_code, _headers = get_loyalty_card_transactions_with_http_info(loyalty_program_id, loyalty_card_id, opts)
841
+ data
842
+ end
843
+
844
+ # List card&#39;s transactions
845
+ # Retrieve loyalty transaction logs for the given loyalty card in the specified loyalty program with filtering options applied. If no filtering options are applied, the last 50 loyalty transactions for the given loyalty card are returned.
846
+ # @param loyalty_program_id [Integer] Identifier of the card-based loyalty program containing the loyalty card. You can get the ID with the [List loyalty programs](https://docs.talon.one/management-api#tag/Loyalty/operation/getLoyaltyPrograms) endpoint.
847
+ # @param loyalty_card_id [String] Identifier of the loyalty card. You can get the identifier with the [List loyalty cards](https://docs.talon.one/management-api#tag/Loyalty-cards/operation/getLoyaltyCards) endpoint.
848
+ # @param [Hash] opts the optional parameters
849
+ # @option opts [String] :subledger_id The ID of the subledger by which we filter the data.
850
+ # @option opts [DateTime] :start_date Date and time from which results are returned. Results are filtered by transaction creation date. **Note:** It must be an RFC3339 timestamp string.
851
+ # @option opts [DateTime] :end_date Date and time by which results are returned. Results are filtered by transaction creation date. **Note:** It must be an RFC3339 timestamp string.
852
+ # @option opts [Integer] :page_size The number of items in this response.
853
+ # @option opts [Integer] :skip Skips the given number of items when paging through large result sets.
854
+ # @return [Array<(InlineResponse2001, Integer, Hash)>] InlineResponse2001 data, response status code and response headers
855
+ def get_loyalty_card_transactions_with_http_info(loyalty_program_id, loyalty_card_id, opts = {})
856
+ if @api_client.config.debugging
857
+ @api_client.config.logger.debug 'Calling API: IntegrationApi.get_loyalty_card_transactions ...'
858
+ end
859
+ # verify the required parameter 'loyalty_program_id' is set
860
+ if @api_client.config.client_side_validation && loyalty_program_id.nil?
861
+ fail ArgumentError, "Missing the required parameter 'loyalty_program_id' when calling IntegrationApi.get_loyalty_card_transactions"
862
+ end
863
+ # verify the required parameter 'loyalty_card_id' is set
864
+ if @api_client.config.client_side_validation && loyalty_card_id.nil?
865
+ fail ArgumentError, "Missing the required parameter 'loyalty_card_id' when calling IntegrationApi.get_loyalty_card_transactions"
866
+ end
867
+ if @api_client.config.client_side_validation && loyalty_card_id.to_s.length > 108
868
+ fail ArgumentError, 'invalid value for "loyalty_card_id" when calling IntegrationApi.get_loyalty_card_transactions, the character length must be smaller than or equal to 108.'
869
+ end
870
+
871
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 1000
872
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling IntegrationApi.get_loyalty_card_transactions, must be smaller than or equal to 1000.'
873
+ end
874
+
875
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] < 1
876
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling IntegrationApi.get_loyalty_card_transactions, must be greater than or equal to 1.'
877
+ end
878
+
879
+ # resource path
880
+ local_var_path = '/v1/loyalty_programs/{loyaltyProgramId}/cards/{loyaltyCardId}/transactions'.sub('{' + 'loyaltyProgramId' + '}', CGI.escape(loyalty_program_id.to_s)).sub('{' + 'loyaltyCardId' + '}', CGI.escape(loyalty_card_id.to_s))
881
+
882
+ # query parameters
883
+ query_params = opts[:query_params] || {}
884
+ query_params[:'subledgerId'] = opts[:'subledger_id'] if !opts[:'subledger_id'].nil?
885
+ query_params[:'startDate'] = opts[:'start_date'] if !opts[:'start_date'].nil?
886
+ query_params[:'endDate'] = opts[:'end_date'] if !opts[:'end_date'].nil?
887
+ query_params[:'pageSize'] = opts[:'page_size'] if !opts[:'page_size'].nil?
888
+ query_params[:'skip'] = opts[:'skip'] if !opts[:'skip'].nil?
889
+
890
+ # header parameters
891
+ header_params = opts[:header_params] || {}
892
+ # HTTP header 'Accept' (if needed)
893
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
894
+
895
+ # form parameters
896
+ form_params = opts[:form_params] || {}
897
+
898
+ # http body (model)
899
+ post_body = opts[:body]
900
+
901
+ # return_type
902
+ return_type = opts[:return_type] || 'InlineResponse2001'
903
+
904
+ # auth_names
905
+ auth_names = opts[:auth_names] || ['api_key_v1']
906
+
907
+ new_options = opts.merge(
908
+ :header_params => header_params,
909
+ :query_params => query_params,
910
+ :form_params => form_params,
911
+ :body => post_body,
912
+ :auth_names => auth_names,
913
+ :return_type => return_type
914
+ )
915
+
916
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
917
+ if @api_client.config.debugging
918
+ @api_client.config.logger.debug "API called: IntegrationApi#get_loyalty_card_transactions\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
919
+ end
920
+ return data, status_code, headers
921
+ end
922
+
923
+ # List customer's loyalty transactions
924
+ # Retrieve paginated results of loyalty transaction logs for the given Integration ID in the specified loyalty program. You can filter transactions by date. If no filters are applied, the last 50 loyalty transactions for the given integration ID are returned. **Note:** To retrieve all loyalty program transaction logs in a given loyalty program, use the [List loyalty program transactions](https://docs.talon.one/management-api#tag/Loyalty/operation/getLoyaltyProgramTransactions) endpoint.
925
+ # @param loyalty_program_id [Integer] Identifier of the card-based loyalty program containing the loyalty card. You can get the ID with the [List loyalty programs](https://docs.talon.one/management-api#tag/Loyalty/operation/getLoyaltyPrograms) endpoint.
926
+ # @param 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.
927
+ # @param [Hash] opts the optional parameters
928
+ # @option opts [String] :subledger_id The ID of the subledger by which we filter the data.
929
+ # @option opts [DateTime] :start_date Date and time from which results are returned. Results are filtered by transaction creation date. **Note:** It must be an RFC3339 timestamp string.
930
+ # @option opts [DateTime] :end_date Date and time by which results are returned. Results are filtered by transaction creation date. **Note:** It must be an RFC3339 timestamp string.
931
+ # @option opts [Integer] :page_size The number of items in this response. (default to 50)
932
+ # @option opts [Integer] :skip Skips the given number of items when paging through large result sets.
933
+ # @return [InlineResponse2002]
934
+ def get_loyalty_program_profile_transactions(loyalty_program_id, integration_id, opts = {})
935
+ data, _status_code, _headers = get_loyalty_program_profile_transactions_with_http_info(loyalty_program_id, integration_id, opts)
936
+ data
937
+ end
938
+
939
+ # List customer&#39;s loyalty transactions
940
+ # Retrieve paginated results of loyalty transaction logs for the given Integration ID in the specified loyalty program. You can filter transactions by date. If no filters are applied, the last 50 loyalty transactions for the given integration ID are returned. **Note:** To retrieve all loyalty program transaction logs in a given loyalty program, use the [List loyalty program transactions](https://docs.talon.one/management-api#tag/Loyalty/operation/getLoyaltyProgramTransactions) endpoint.
941
+ # @param loyalty_program_id [Integer] Identifier of the card-based loyalty program containing the loyalty card. You can get the ID with the [List loyalty programs](https://docs.talon.one/management-api#tag/Loyalty/operation/getLoyaltyPrograms) endpoint.
942
+ # @param 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.
943
+ # @param [Hash] opts the optional parameters
944
+ # @option opts [String] :subledger_id The ID of the subledger by which we filter the data.
945
+ # @option opts [DateTime] :start_date Date and time from which results are returned. Results are filtered by transaction creation date. **Note:** It must be an RFC3339 timestamp string.
946
+ # @option opts [DateTime] :end_date Date and time by which results are returned. Results are filtered by transaction creation date. **Note:** It must be an RFC3339 timestamp string.
947
+ # @option opts [Integer] :page_size The number of items in this response.
948
+ # @option opts [Integer] :skip Skips the given number of items when paging through large result sets.
949
+ # @return [Array<(InlineResponse2002, Integer, Hash)>] InlineResponse2002 data, response status code and response headers
950
+ def get_loyalty_program_profile_transactions_with_http_info(loyalty_program_id, integration_id, opts = {})
951
+ if @api_client.config.debugging
952
+ @api_client.config.logger.debug 'Calling API: IntegrationApi.get_loyalty_program_profile_transactions ...'
953
+ end
954
+ # verify the required parameter 'loyalty_program_id' is set
955
+ if @api_client.config.client_side_validation && loyalty_program_id.nil?
956
+ fail ArgumentError, "Missing the required parameter 'loyalty_program_id' when calling IntegrationApi.get_loyalty_program_profile_transactions"
957
+ end
958
+ # verify the required parameter 'integration_id' is set
959
+ if @api_client.config.client_side_validation && integration_id.nil?
960
+ fail ArgumentError, "Missing the required parameter 'integration_id' when calling IntegrationApi.get_loyalty_program_profile_transactions"
961
+ end
962
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 50
963
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling IntegrationApi.get_loyalty_program_profile_transactions, must be smaller than or equal to 50.'
964
+ end
965
+
966
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] < 1
967
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling IntegrationApi.get_loyalty_program_profile_transactions, must be greater than or equal to 1.'
968
+ end
969
+
970
+ # resource path
971
+ local_var_path = '/v1/loyalty_programs/{loyaltyProgramId}/profile/{integrationId}/transactions'.sub('{' + 'loyaltyProgramId' + '}', CGI.escape(loyalty_program_id.to_s)).sub('{' + 'integrationId' + '}', CGI.escape(integration_id.to_s))
972
+
973
+ # query parameters
974
+ query_params = opts[:query_params] || {}
975
+ query_params[:'subledgerId'] = opts[:'subledger_id'] if !opts[:'subledger_id'].nil?
976
+ query_params[:'startDate'] = opts[:'start_date'] if !opts[:'start_date'].nil?
977
+ query_params[:'endDate'] = opts[:'end_date'] if !opts[:'end_date'].nil?
978
+ query_params[:'pageSize'] = opts[:'page_size'] if !opts[:'page_size'].nil?
979
+ query_params[:'skip'] = opts[:'skip'] if !opts[:'skip'].nil?
980
+
981
+ # header parameters
982
+ header_params = opts[:header_params] || {}
983
+ # HTTP header 'Accept' (if needed)
984
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
985
+
986
+ # form parameters
987
+ form_params = opts[:form_params] || {}
988
+
989
+ # http body (model)
990
+ post_body = opts[:body]
991
+
992
+ # return_type
993
+ return_type = opts[:return_type] || 'InlineResponse2002'
994
+
995
+ # auth_names
996
+ auth_names = opts[:auth_names] || ['api_key_v1']
997
+
998
+ new_options = opts.merge(
999
+ :header_params => header_params,
1000
+ :query_params => query_params,
1001
+ :form_params => form_params,
1002
+ :body => post_body,
1003
+ :auth_names => auth_names,
1004
+ :return_type => return_type
1005
+ )
1006
+
1007
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1008
+ if @api_client.config.debugging
1009
+ @api_client.config.logger.debug "API called: IntegrationApi#get_loyalty_program_profile_transactions\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1010
+ end
1011
+ return data, status_code, headers
1012
+ end
1013
+
685
1014
  # List customers that have this coupon reserved
686
- # Return all customers that have this coupon marked as reserved. Coupons are reserved in the following ways: - To create a soft reservation (any customer can use the coupon), use the [Create coupon reservation](#operation/createCouponReservation) endpoint. - To create a hard reservation (only the given customer can use the coupon), create a coupon in the Campaign Manager for a given `recipientIntegrationId` or use the [Create coupons](/management-api/#operation/createCoupons) or [Create coupons for multiple recipients](/management-api/#operation/createCouponsForMultipleRecipients) endpoints.
687
- # @param coupon_value [String] The value of a coupon
1015
+ # Return all customers that have this coupon marked as reserved. Coupons are reserved in the following ways: - To create a soft reservation (any customer can use the coupon), use the [Create coupon reservation](#operation/createCouponReservation) endpoint. - To create a hard reservation (only the given customer can use the coupon), create a coupon in the Campaign Manager for a given `recipientIntegrationId` or use the [Create coupons](https://docs.talon.one/management-api#operation/createCoupons) or [Create coupons for multiple recipients](https://docs.talon.one/management-api#operation/createCouponsForMultipleRecipients) endpoints.
1016
+ # @param coupon_value [String] The code of the coupon.
688
1017
  # @param [Hash] opts the optional parameters
689
1018
  # @return [InlineResponse200]
690
1019
  def get_reserved_customers(coupon_value, opts = {})
@@ -693,8 +1022,8 @@ module TalonOne
693
1022
  end
694
1023
 
695
1024
  # List customers that have this coupon reserved
696
- # Return all customers that have this coupon marked as reserved. Coupons are reserved in the following ways: - To create a soft reservation (any customer can use the coupon), use the [Create coupon reservation](#operation/createCouponReservation) endpoint. - To create a hard reservation (only the given customer can use the coupon), create a coupon in the Campaign Manager for a given &#x60;recipientIntegrationId&#x60; or use the [Create coupons](/management-api/#operation/createCoupons) or [Create coupons for multiple recipients](/management-api/#operation/createCouponsForMultipleRecipients) endpoints.
697
- # @param coupon_value [String] The value of a coupon
1025
+ # Return all customers that have this coupon marked as reserved. Coupons are reserved in the following ways: - To create a soft reservation (any customer can use the coupon), use the [Create coupon reservation](#operation/createCouponReservation) endpoint. - To create a hard reservation (only the given customer can use the coupon), create a coupon in the Campaign Manager for a given &#x60;recipientIntegrationId&#x60; or use the [Create coupons](https://docs.talon.one/management-api#operation/createCoupons) or [Create coupons for multiple recipients](https://docs.talon.one/management-api#operation/createCouponsForMultipleRecipients) endpoints.
1026
+ # @param coupon_value [String] The code of the coupon.
698
1027
  # @param [Hash] opts the optional parameters
699
1028
  # @return [Array<(InlineResponse200, Integer, Hash)>] InlineResponse200 data, response status code and response headers
700
1029
  def get_reserved_customers_with_http_info(coupon_value, opts = {})
@@ -744,12 +1073,154 @@ module TalonOne
744
1073
  return data, status_code, headers
745
1074
  end
746
1075
 
1076
+ # Link customer profile to card
1077
+ # [Loyalty cards](https://docs.talon.one/docs/product/loyalty-programs/loyalty-cards/loyalty-card-overview) allow customers to collect and spend loyalty points within a [card-based loyalty program](https://docs.talon.one/docs/product/loyalty-programs/overview#loyalty-program-types). They are useful to gamify loyalty programs and can be used with or without customer profiles linked to them. Link a customer profile to a given loyalty card for the card to be set as **Registered**. This affects how it can be used. See the [docs](https://docs.talon.one/docs/product/loyalty-programs/loyalty-cards/managing-loyalty-cards#linking-customer-profiles-to-a-loyalty-card). **Note:** You can link as many customer profiles to a given loyalty card as the [**card user limit**](https://docs.talon.one/docs/product/loyalty-programs/creating-loyalty-programs#creating-card-based-loyalty-programs) allows.
1078
+ # @param loyalty_program_id [Integer] Identifier of the card-based loyalty program containing the loyalty card. You can get the ID with the [List loyalty programs](https://docs.talon.one/management-api#tag/Loyalty/operation/getLoyaltyPrograms) endpoint.
1079
+ # @param loyalty_card_id [String] Identifier of the loyalty card. You can get the identifier with the [List loyalty cards](https://docs.talon.one/management-api#tag/Loyalty-cards/operation/getLoyaltyCards) endpoint.
1080
+ # @param body [LoyaltyCardRegistration] body
1081
+ # @param [Hash] opts the optional parameters
1082
+ # @return [LoyaltyCard]
1083
+ def link_loyalty_card_to_profile(loyalty_program_id, loyalty_card_id, body, opts = {})
1084
+ data, _status_code, _headers = link_loyalty_card_to_profile_with_http_info(loyalty_program_id, loyalty_card_id, body, opts)
1085
+ data
1086
+ end
1087
+
1088
+ # Link customer profile to card
1089
+ # [Loyalty cards](https://docs.talon.one/docs/product/loyalty-programs/loyalty-cards/loyalty-card-overview) allow customers to collect and spend loyalty points within a [card-based loyalty program](https://docs.talon.one/docs/product/loyalty-programs/overview#loyalty-program-types). They are useful to gamify loyalty programs and can be used with or without customer profiles linked to them. Link a customer profile to a given loyalty card for the card to be set as **Registered**. This affects how it can be used. See the [docs](https://docs.talon.one/docs/product/loyalty-programs/loyalty-cards/managing-loyalty-cards#linking-customer-profiles-to-a-loyalty-card). **Note:** You can link as many customer profiles to a given loyalty card as the [**card user limit**](https://docs.talon.one/docs/product/loyalty-programs/creating-loyalty-programs#creating-card-based-loyalty-programs) allows.
1090
+ # @param loyalty_program_id [Integer] Identifier of the card-based loyalty program containing the loyalty card. You can get the ID with the [List loyalty programs](https://docs.talon.one/management-api#tag/Loyalty/operation/getLoyaltyPrograms) endpoint.
1091
+ # @param loyalty_card_id [String] Identifier of the loyalty card. You can get the identifier with the [List loyalty cards](https://docs.talon.one/management-api#tag/Loyalty-cards/operation/getLoyaltyCards) endpoint.
1092
+ # @param body [LoyaltyCardRegistration] body
1093
+ # @param [Hash] opts the optional parameters
1094
+ # @return [Array<(LoyaltyCard, Integer, Hash)>] LoyaltyCard data, response status code and response headers
1095
+ def link_loyalty_card_to_profile_with_http_info(loyalty_program_id, loyalty_card_id, body, opts = {})
1096
+ if @api_client.config.debugging
1097
+ @api_client.config.logger.debug 'Calling API: IntegrationApi.link_loyalty_card_to_profile ...'
1098
+ end
1099
+ # verify the required parameter 'loyalty_program_id' is set
1100
+ if @api_client.config.client_side_validation && loyalty_program_id.nil?
1101
+ fail ArgumentError, "Missing the required parameter 'loyalty_program_id' when calling IntegrationApi.link_loyalty_card_to_profile"
1102
+ end
1103
+ # verify the required parameter 'loyalty_card_id' is set
1104
+ if @api_client.config.client_side_validation && loyalty_card_id.nil?
1105
+ fail ArgumentError, "Missing the required parameter 'loyalty_card_id' when calling IntegrationApi.link_loyalty_card_to_profile"
1106
+ end
1107
+ if @api_client.config.client_side_validation && loyalty_card_id.to_s.length > 108
1108
+ fail ArgumentError, 'invalid value for "loyalty_card_id" when calling IntegrationApi.link_loyalty_card_to_profile, the character length must be smaller than or equal to 108.'
1109
+ end
1110
+
1111
+ # verify the required parameter 'body' is set
1112
+ if @api_client.config.client_side_validation && body.nil?
1113
+ fail ArgumentError, "Missing the required parameter 'body' when calling IntegrationApi.link_loyalty_card_to_profile"
1114
+ end
1115
+ # resource path
1116
+ local_var_path = '/v2/loyalty_programs/{loyaltyProgramId}/cards/{loyaltyCardId}/link_profile'.sub('{' + 'loyaltyProgramId' + '}', CGI.escape(loyalty_program_id.to_s)).sub('{' + 'loyaltyCardId' + '}', CGI.escape(loyalty_card_id.to_s))
1117
+
1118
+ # query parameters
1119
+ query_params = opts[:query_params] || {}
1120
+
1121
+ # header parameters
1122
+ header_params = opts[:header_params] || {}
1123
+ # HTTP header 'Accept' (if needed)
1124
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1125
+ # HTTP header 'Content-Type'
1126
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
1127
+
1128
+ # form parameters
1129
+ form_params = opts[:form_params] || {}
1130
+
1131
+ # http body (model)
1132
+ post_body = opts[:body] || @api_client.object_to_http_body(body)
1133
+
1134
+ # return_type
1135
+ return_type = opts[:return_type] || 'LoyaltyCard'
1136
+
1137
+ # auth_names
1138
+ auth_names = opts[:auth_names] || ['api_key_v1']
1139
+
1140
+ new_options = opts.merge(
1141
+ :header_params => header_params,
1142
+ :query_params => query_params,
1143
+ :form_params => form_params,
1144
+ :body => post_body,
1145
+ :auth_names => auth_names,
1146
+ :return_type => return_type
1147
+ )
1148
+
1149
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
1150
+ if @api_client.config.debugging
1151
+ @api_client.config.logger.debug "API called: IntegrationApi#link_loyalty_card_to_profile\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1152
+ end
1153
+ return data, status_code, headers
1154
+ end
1155
+
1156
+ # Reopen customer session
1157
+ # Reopen a closed [customer session](https://docs.talon.one/docs/dev/concepts/entities#customer-session). For example, if a session has been completed but still needs to be edited, you can reopen it with this endpoint. A reopen session is treated like a standard open session. When reopening a session: - The `talon_session_reopened` event is triggered. You can see it in the **Events** view in the Campaign Manager. - The session state is updated to `open`. - Modified budgets and triggered effects when the session was closed are rolled back except for the list below. <details> <summary><strong>Effects and budgets unimpacted by a session reopening</strong></summary> <div> <p>The following effects and budgets are left the way they were once the session was originally closed:</p> <ul> <li>Add free item effect</li> <li>Any <strong>not pending</strong> pending loyalty points.</li> <li>Award giveaway</li> <li>Coupon and referral creation</li> <li>Coupon reservation</li> <li>Custom effect</li> <li>Update attribute value</li> <li>Update cart item attribute value</li> </ul> </div> <p>To see an example of roll back, see the <a href=\"https://docs.talon.one/docs/dev/tutorials/rolling-back-effects\">Cancelling a session with campaign budgets tutorial</a>.</p> </details> **Note:** If your order workflow requires you to create a new session instead of reopening a session, use the [Update customer session](https://docs.talon.one/integration-api#tag/Customer-sessions/operation/updateCustomerSessionV2) endpoint to cancel a closed session and create a new one.
1158
+ # @param customer_session_id [String] The &#x60;integration ID&#x60; of the customer session. You set this ID when you create a customer session. You can see existing customer session integration IDs in the Campaign Manager&#39;s **Sessions** menu, or via the [List Application session](https://docs.talon.one/management-api#operation/getApplicationSessions) endpoint.
1159
+ # @param [Hash] opts the optional parameters
1160
+ # @return [ReopenSessionResponse]
1161
+ def reopen_customer_session(customer_session_id, opts = {})
1162
+ data, _status_code, _headers = reopen_customer_session_with_http_info(customer_session_id, opts)
1163
+ data
1164
+ end
1165
+
1166
+ # Reopen customer session
1167
+ # Reopen a closed [customer session](https://docs.talon.one/docs/dev/concepts/entities#customer-session). For example, if a session has been completed but still needs to be edited, you can reopen it with this endpoint. A reopen session is treated like a standard open session. When reopening a session: - The &#x60;talon_session_reopened&#x60; event is triggered. You can see it in the **Events** view in the Campaign Manager. - The session state is updated to &#x60;open&#x60;. - Modified budgets and triggered effects when the session was closed are rolled back except for the list below. &lt;details&gt; &lt;summary&gt;&lt;strong&gt;Effects and budgets unimpacted by a session reopening&lt;/strong&gt;&lt;/summary&gt; &lt;div&gt; &lt;p&gt;The following effects and budgets are left the way they were once the session was originally closed:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Add free item effect&lt;/li&gt; &lt;li&gt;Any &lt;strong&gt;not pending&lt;/strong&gt; pending loyalty points.&lt;/li&gt; &lt;li&gt;Award giveaway&lt;/li&gt; &lt;li&gt;Coupon and referral creation&lt;/li&gt; &lt;li&gt;Coupon reservation&lt;/li&gt; &lt;li&gt;Custom effect&lt;/li&gt; &lt;li&gt;Update attribute value&lt;/li&gt; &lt;li&gt;Update cart item attribute value&lt;/li&gt; &lt;/ul&gt; &lt;/div&gt; &lt;p&gt;To see an example of roll back, see the &lt;a href&#x3D;\&quot;https://docs.talon.one/docs/dev/tutorials/rolling-back-effects\&quot;&gt;Cancelling a session with campaign budgets tutorial&lt;/a&gt;.&lt;/p&gt; &lt;/details&gt; **Note:** If your order workflow requires you to create a new session instead of reopening a session, use the [Update customer session](https://docs.talon.one/integration-api#tag/Customer-sessions/operation/updateCustomerSessionV2) endpoint to cancel a closed session and create a new one.
1168
+ # @param customer_session_id [String] The &#x60;integration ID&#x60; of the customer session. You set this ID when you create a customer session. You can see existing customer session integration IDs in the Campaign Manager&#39;s **Sessions** menu, or via the [List Application session](https://docs.talon.one/management-api#operation/getApplicationSessions) endpoint.
1169
+ # @param [Hash] opts the optional parameters
1170
+ # @return [Array<(ReopenSessionResponse, Integer, Hash)>] ReopenSessionResponse data, response status code and response headers
1171
+ def reopen_customer_session_with_http_info(customer_session_id, opts = {})
1172
+ if @api_client.config.debugging
1173
+ @api_client.config.logger.debug 'Calling API: IntegrationApi.reopen_customer_session ...'
1174
+ end
1175
+ # verify the required parameter 'customer_session_id' is set
1176
+ if @api_client.config.client_side_validation && customer_session_id.nil?
1177
+ fail ArgumentError, "Missing the required parameter 'customer_session_id' when calling IntegrationApi.reopen_customer_session"
1178
+ end
1179
+ # resource path
1180
+ local_var_path = '/v2/customer_sessions/{customerSessionId}/reopen'.sub('{' + 'customerSessionId' + '}', CGI.escape(customer_session_id.to_s))
1181
+
1182
+ # query parameters
1183
+ query_params = opts[:query_params] || {}
1184
+
1185
+ # header parameters
1186
+ header_params = opts[:header_params] || {}
1187
+ # HTTP header 'Accept' (if needed)
1188
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1189
+
1190
+ # form parameters
1191
+ form_params = opts[:form_params] || {}
1192
+
1193
+ # http body (model)
1194
+ post_body = opts[:body]
1195
+
1196
+ # return_type
1197
+ return_type = opts[:return_type] || 'ReopenSessionResponse'
1198
+
1199
+ # auth_names
1200
+ auth_names = opts[:auth_names] || ['api_key_v1']
1201
+
1202
+ new_options = opts.merge(
1203
+ :header_params => header_params,
1204
+ :query_params => query_params,
1205
+ :form_params => form_params,
1206
+ :body => post_body,
1207
+ :auth_names => auth_names,
1208
+ :return_type => return_type
1209
+ )
1210
+
1211
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
1212
+ if @api_client.config.debugging
1213
+ @api_client.config.logger.debug "API called: IntegrationApi#reopen_customer_session\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1214
+ end
1215
+ return data, status_code, headers
1216
+ end
1217
+
747
1218
  # Return cart items
748
- # Create a new return request for the specified cart items. This endpoint automatically changes the session state from `closed` to `partially returned`. Its behavior depends on whether [cart item flattening](https://docs.talon.one/docs/product/campaigns/campaign-evaluation/#flattened-cart-items) is enabled for the campaign. **Note:** This will roll back any effects associated with these cart items. For more information, see [our documentation on session states](https://docs.talon.one/docs/dev/concepts/entities#customer-session-states) and [this tutorial](https://docs.talon.one/docs/dev/tutorials/partially-returning-a-session).
749
- # @param customer_session_id [String] The &#x60;integration ID&#x60; of the customer session. You set this ID when you create a customer session. You can see existing customer session integration IDs in the Campaign Manager&#39;s **Sessions** menu, or via the [List Application session endpoint](https://docs.talon.one/management-api/#operation/getApplicationSessions).
750
- # @param body [ReturnIntegrationRequest]
1219
+ # Create a new return request for the specified cart items. This endpoint automatically changes the session state from `closed` to `partially_returned`. Its behavior depends on whether [cart item flattening](https://docs.talon.one/docs/product/campaigns/campaign-evaluation#flattening) is enabled for the Application. **Note:** This will roll back any effects associated with these cart items. For more information, see [our documentation on session states](https://docs.talon.one/docs/dev/concepts/entities#customer-session-states) and [this tutorial](https://docs.talon.one/docs/dev/tutorials/partially-returning-a-session).
1220
+ # @param customer_session_id [String] The &#x60;integration ID&#x60; of the customer session. You set this ID when you create a customer session. You can see existing customer session integration IDs in the Campaign Manager&#39;s **Sessions** menu, or via the [List Application session](https://docs.talon.one/management-api#operation/getApplicationSessions) endpoint.
1221
+ # @param body [ReturnIntegrationRequest] body
751
1222
  # @param [Hash] opts the optional parameters
752
- # @option opts [Boolean] :dry Indicates whether to persist the changes. Changes are ignored when &#x60;dry&#x3D;true&#x60;.
1223
+ # @option opts [Boolean] :dry Indicates whether to persist the changes. Changes are ignored when &#x60;dry&#x3D;true&#x60;.
753
1224
  # @return [IntegrationStateV2]
754
1225
  def return_cart_items(customer_session_id, body, opts = {})
755
1226
  data, _status_code, _headers = return_cart_items_with_http_info(customer_session_id, body, opts)
@@ -757,11 +1228,11 @@ module TalonOne
757
1228
  end
758
1229
 
759
1230
  # Return cart items
760
- # Create a new return request for the specified cart items. This endpoint automatically changes the session state from &#x60;closed&#x60; to &#x60;partially returned&#x60;. Its behavior depends on whether [cart item flattening](https://docs.talon.one/docs/product/campaigns/campaign-evaluation/#flattened-cart-items) is enabled for the campaign. **Note:** This will roll back any effects associated with these cart items. For more information, see [our documentation on session states](https://docs.talon.one/docs/dev/concepts/entities#customer-session-states) and [this tutorial](https://docs.talon.one/docs/dev/tutorials/partially-returning-a-session).
761
- # @param customer_session_id [String] The &#x60;integration ID&#x60; of the customer session. You set this ID when you create a customer session. You can see existing customer session integration IDs in the Campaign Manager&#39;s **Sessions** menu, or via the [List Application session endpoint](https://docs.talon.one/management-api/#operation/getApplicationSessions).
762
- # @param body [ReturnIntegrationRequest]
1231
+ # Create a new return request for the specified cart items. This endpoint automatically changes the session state from &#x60;closed&#x60; to &#x60;partially_returned&#x60;. Its behavior depends on whether [cart item flattening](https://docs.talon.one/docs/product/campaigns/campaign-evaluation#flattening) is enabled for the Application. **Note:** This will roll back any effects associated with these cart items. For more information, see [our documentation on session states](https://docs.talon.one/docs/dev/concepts/entities#customer-session-states) and [this tutorial](https://docs.talon.one/docs/dev/tutorials/partially-returning-a-session).
1232
+ # @param customer_session_id [String] The &#x60;integration ID&#x60; of the customer session. You set this ID when you create a customer session. You can see existing customer session integration IDs in the Campaign Manager&#39;s **Sessions** menu, or via the [List Application session](https://docs.talon.one/management-api#operation/getApplicationSessions) endpoint.
1233
+ # @param body [ReturnIntegrationRequest] body
763
1234
  # @param [Hash] opts the optional parameters
764
- # @option opts [Boolean] :dry Indicates whether to persist the changes. Changes are ignored when &#x60;dry&#x3D;true&#x60;.
1235
+ # @option opts [Boolean] :dry Indicates whether to persist the changes. Changes are ignored when &#x60;dry&#x3D;true&#x60;.
765
1236
  # @return [Array<(IntegrationStateV2, Integer, Hash)>] IntegrationStateV2 data, response status code and response headers
766
1237
  def return_cart_items_with_http_info(customer_session_id, body, opts = {})
767
1238
  if @api_client.config.debugging
@@ -817,11 +1288,81 @@ module TalonOne
817
1288
  return data, status_code, headers
818
1289
  end
819
1290
 
1291
+ # Sync cart item catalog
1292
+ # Perform one or more of the following sync actions on this cart item catalog, up to 1000 actions: - Add an item to the catalog. - Edit the attributes of an item in the catalog. - Edit the attributes of more than one item in the catalog. - Remove an item from the catalog. - Remove more than one item from the catalog. **Note:** For more information, see [our documentation on managing cart item catalogs](https://docs.talon.one/docs/product/account/dev-tools/managing-cart-item-catalogs). ### Filtering cart items Use [cart item attributes](https://docs.talon.one/docs/product/account/dev-tools/managing-cart-item-catalogs#displaying-the-details-and-content-of-a-catalog) to filter items and select the ones you want to edit or delete when editing or deleting more than one item at a time. The `filters` array contains an object with the following properties: - `attr`: A [cart item attribute](https://docs.talon.one/docs/product/account/dev-tools/managing-attributes) connected to the catalog. It is applied to all items in the catalog. - `op`: The filtering operator indicating the relationship between the value of each cart item in the catalog and the value of the `value` property for the attribute selected in `attr`. The value of `op` can be one of the following: - `EQ`: Equal to `value` - `LT`: Less than `value` - `LE`: Less than or equal to `value` - `GT`: Greater than `value` - `GE`: Greater than or equal to `value` - `IN`: One of the comma-separated values that `value` is set to. **Note:** `GE`, `LE`, `GT`, `LT` are for numeric values only. - `value`: The value of the attribute selected in `attr`. ### Payload examples Synchronization actions are sent as `PUT` requests. See the structure for each action: <details> <summary><strong>Adding an item to the catalog</strong></summary> <div> ```json { \"actions\": [ { \"payload\": { \"attributes\": { \"color\": \"Navy blue\", \"type\": \"shoe\" }, \"replaceIfExists\": true, \"sku\": \"SKU1241028\", \"price\": 100 }, \"type\": \"ADD\" } ] } ``` </div> </details> <details> <summary><strong>Editing the attributes of an item in the catalog</strong></summary> <div> ```json { \"actions\": [ { \"payload\": { \"attributes\": { \"age\": 11, \"origin\": \"germany\" }, \"createIfNotExists\": false, \"sku\": \"SKU1241028\" }, \"type\": \"PATCH\" } ] } ``` </div> </details> <details> <summary><strong>Editing the attributes of several items at once</strong></summary> <div> ```json { \"actions\": [ { \"payload\": { \"attributes\": { \"color\": \"red\" }, \"filters\": [ { \"attr\": \"color\", \"op\": \"EQ\", \"value\": \"blue\" } ] }, \"type\": \"PATCH_MANY\" } ] } ``` </div> </details> <details> <summary><strong>Removing an item from the catalog</strong></summary> <div> ```json { \"actions\": [ { \"payload\": { \"sku\": \"SKU1241028\" }, \"type\": \"REMOVE\" } ] } ``` </div> </details> <details> <summary><strong>Removing several items from the catalog at once</strong></summary> <div> ```json { \"actions\": [ { \"payload\": { \"filters\": [ { \"attr\": \"color\", \"op\": \"EQ\", \"value\": \"blue\" } ] }, \"type\": \"REMOVE_MANY\" } ] } ``` </div> </details> <details> <summary><strong>Removing shoes of sizes above 45 from the catalog</strong></summary> <div> <p> Let's imagine that we have a shoe store and we have decided to stop selling shoes larger than size 45. We can remove from the catalog all the shoes of sizes above 45 with a single action:</p> ```json { \"actions\": [ { \"payload\": { \"filters\": [ { \"attr\": \"size\", \"op\": \"GT\", \"value\": \"45\" } ] }, \"type\": \"REMOVE_MANY\" } ] } ``` </div> </details>
1293
+ # @param catalog_id [Integer] The ID of the catalog. You can find the ID in the Campaign Manager in **Account** &gt; **Tools** &gt; **Cart item catalogs**.
1294
+ # @param body [CatalogSyncRequest] body
1295
+ # @param [Hash] opts the optional parameters
1296
+ # @return [Catalog]
1297
+ def sync_catalog(catalog_id, body, opts = {})
1298
+ data, _status_code, _headers = sync_catalog_with_http_info(catalog_id, body, opts)
1299
+ data
1300
+ end
1301
+
1302
+ # Sync cart item catalog
1303
+ # Perform one or more of the following sync actions on this cart item catalog, up to 1000 actions: - Add an item to the catalog. - Edit the attributes of an item in the catalog. - Edit the attributes of more than one item in the catalog. - Remove an item from the catalog. - Remove more than one item from the catalog. **Note:** For more information, see [our documentation on managing cart item catalogs](https://docs.talon.one/docs/product/account/dev-tools/managing-cart-item-catalogs). ### Filtering cart items Use [cart item attributes](https://docs.talon.one/docs/product/account/dev-tools/managing-cart-item-catalogs#displaying-the-details-and-content-of-a-catalog) to filter items and select the ones you want to edit or delete when editing or deleting more than one item at a time. The &#x60;filters&#x60; array contains an object with the following properties: - &#x60;attr&#x60;: A [cart item attribute](https://docs.talon.one/docs/product/account/dev-tools/managing-attributes) connected to the catalog. It is applied to all items in the catalog. - &#x60;op&#x60;: The filtering operator indicating the relationship between the value of each cart item in the catalog and the value of the &#x60;value&#x60; property for the attribute selected in &#x60;attr&#x60;. The value of &#x60;op&#x60; can be one of the following: - &#x60;EQ&#x60;: Equal to &#x60;value&#x60; - &#x60;LT&#x60;: Less than &#x60;value&#x60; - &#x60;LE&#x60;: Less than or equal to &#x60;value&#x60; - &#x60;GT&#x60;: Greater than &#x60;value&#x60; - &#x60;GE&#x60;: Greater than or equal to &#x60;value&#x60; - &#x60;IN&#x60;: One of the comma-separated values that &#x60;value&#x60; is set to. **Note:** &#x60;GE&#x60;, &#x60;LE&#x60;, &#x60;GT&#x60;, &#x60;LT&#x60; are for numeric values only. - &#x60;value&#x60;: The value of the attribute selected in &#x60;attr&#x60;. ### Payload examples Synchronization actions are sent as &#x60;PUT&#x60; requests. See the structure for each action: &lt;details&gt; &lt;summary&gt;&lt;strong&gt;Adding an item to the catalog&lt;/strong&gt;&lt;/summary&gt; &lt;div&gt; &#x60;&#x60;&#x60;json { \&quot;actions\&quot;: [ { \&quot;payload\&quot;: { \&quot;attributes\&quot;: { \&quot;color\&quot;: \&quot;Navy blue\&quot;, \&quot;type\&quot;: \&quot;shoe\&quot; }, \&quot;replaceIfExists\&quot;: true, \&quot;sku\&quot;: \&quot;SKU1241028\&quot;, \&quot;price\&quot;: 100 }, \&quot;type\&quot;: \&quot;ADD\&quot; } ] } &#x60;&#x60;&#x60; &lt;/div&gt; &lt;/details&gt; &lt;details&gt; &lt;summary&gt;&lt;strong&gt;Editing the attributes of an item in the catalog&lt;/strong&gt;&lt;/summary&gt; &lt;div&gt; &#x60;&#x60;&#x60;json { \&quot;actions\&quot;: [ { \&quot;payload\&quot;: { \&quot;attributes\&quot;: { \&quot;age\&quot;: 11, \&quot;origin\&quot;: \&quot;germany\&quot; }, \&quot;createIfNotExists\&quot;: false, \&quot;sku\&quot;: \&quot;SKU1241028\&quot; }, \&quot;type\&quot;: \&quot;PATCH\&quot; } ] } &#x60;&#x60;&#x60; &lt;/div&gt; &lt;/details&gt; &lt;details&gt; &lt;summary&gt;&lt;strong&gt;Editing the attributes of several items at once&lt;/strong&gt;&lt;/summary&gt; &lt;div&gt; &#x60;&#x60;&#x60;json { \&quot;actions\&quot;: [ { \&quot;payload\&quot;: { \&quot;attributes\&quot;: { \&quot;color\&quot;: \&quot;red\&quot; }, \&quot;filters\&quot;: [ { \&quot;attr\&quot;: \&quot;color\&quot;, \&quot;op\&quot;: \&quot;EQ\&quot;, \&quot;value\&quot;: \&quot;blue\&quot; } ] }, \&quot;type\&quot;: \&quot;PATCH_MANY\&quot; } ] } &#x60;&#x60;&#x60; &lt;/div&gt; &lt;/details&gt; &lt;details&gt; &lt;summary&gt;&lt;strong&gt;Removing an item from the catalog&lt;/strong&gt;&lt;/summary&gt; &lt;div&gt; &#x60;&#x60;&#x60;json { \&quot;actions\&quot;: [ { \&quot;payload\&quot;: { \&quot;sku\&quot;: \&quot;SKU1241028\&quot; }, \&quot;type\&quot;: \&quot;REMOVE\&quot; } ] } &#x60;&#x60;&#x60; &lt;/div&gt; &lt;/details&gt; &lt;details&gt; &lt;summary&gt;&lt;strong&gt;Removing several items from the catalog at once&lt;/strong&gt;&lt;/summary&gt; &lt;div&gt; &#x60;&#x60;&#x60;json { \&quot;actions\&quot;: [ { \&quot;payload\&quot;: { \&quot;filters\&quot;: [ { \&quot;attr\&quot;: \&quot;color\&quot;, \&quot;op\&quot;: \&quot;EQ\&quot;, \&quot;value\&quot;: \&quot;blue\&quot; } ] }, \&quot;type\&quot;: \&quot;REMOVE_MANY\&quot; } ] } &#x60;&#x60;&#x60; &lt;/div&gt; &lt;/details&gt; &lt;details&gt; &lt;summary&gt;&lt;strong&gt;Removing shoes of sizes above 45 from the catalog&lt;/strong&gt;&lt;/summary&gt; &lt;div&gt; &lt;p&gt; Let&#39;s imagine that we have a shoe store and we have decided to stop selling shoes larger than size 45. We can remove from the catalog all the shoes of sizes above 45 with a single action:&lt;/p&gt; &#x60;&#x60;&#x60;json { \&quot;actions\&quot;: [ { \&quot;payload\&quot;: { \&quot;filters\&quot;: [ { \&quot;attr\&quot;: \&quot;size\&quot;, \&quot;op\&quot;: \&quot;GT\&quot;, \&quot;value\&quot;: \&quot;45\&quot; } ] }, \&quot;type\&quot;: \&quot;REMOVE_MANY\&quot; } ] } &#x60;&#x60;&#x60; &lt;/div&gt; &lt;/details&gt;
1304
+ # @param catalog_id [Integer] The ID of the catalog. You can find the ID in the Campaign Manager in **Account** &gt; **Tools** &gt; **Cart item catalogs**.
1305
+ # @param body [CatalogSyncRequest] body
1306
+ # @param [Hash] opts the optional parameters
1307
+ # @return [Array<(Catalog, Integer, Hash)>] Catalog data, response status code and response headers
1308
+ def sync_catalog_with_http_info(catalog_id, body, opts = {})
1309
+ if @api_client.config.debugging
1310
+ @api_client.config.logger.debug 'Calling API: IntegrationApi.sync_catalog ...'
1311
+ end
1312
+ # verify the required parameter 'catalog_id' is set
1313
+ if @api_client.config.client_side_validation && catalog_id.nil?
1314
+ fail ArgumentError, "Missing the required parameter 'catalog_id' when calling IntegrationApi.sync_catalog"
1315
+ end
1316
+ # verify the required parameter 'body' is set
1317
+ if @api_client.config.client_side_validation && body.nil?
1318
+ fail ArgumentError, "Missing the required parameter 'body' when calling IntegrationApi.sync_catalog"
1319
+ end
1320
+ # resource path
1321
+ local_var_path = '/v1/catalogs/{catalogId}/sync'.sub('{' + 'catalogId' + '}', CGI.escape(catalog_id.to_s))
1322
+
1323
+ # query parameters
1324
+ query_params = opts[:query_params] || {}
1325
+
1326
+ # header parameters
1327
+ header_params = opts[:header_params] || {}
1328
+ # HTTP header 'Accept' (if needed)
1329
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1330
+ # HTTP header 'Content-Type'
1331
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
1332
+
1333
+ # form parameters
1334
+ form_params = opts[:form_params] || {}
1335
+
1336
+ # http body (model)
1337
+ post_body = opts[:body] || @api_client.object_to_http_body(body)
1338
+
1339
+ # return_type
1340
+ return_type = opts[:return_type] || 'Catalog'
1341
+
1342
+ # auth_names
1343
+ auth_names = opts[:auth_names] || ['api_key_v1']
1344
+
1345
+ new_options = opts.merge(
1346
+ :header_params => header_params,
1347
+ :query_params => query_params,
1348
+ :form_params => form_params,
1349
+ :body => post_body,
1350
+ :auth_names => auth_names,
1351
+ :return_type => return_type
1352
+ )
1353
+
1354
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
1355
+ if @api_client.config.debugging
1356
+ @api_client.config.logger.debug "API called: IntegrationApi#sync_catalog\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1357
+ end
1358
+ return data, status_code, headers
1359
+ end
1360
+
820
1361
  # Track event
821
- # **Important:** This endpoint is **DEPRECATED**. Use [Track Event V2](https://docs.talon.one/integration-api/#tag/Events/operation/trackEventV2) instead. > Triggers a custom event in a customer session. You can then check this event in your rules. **Important:** Talon.One offers a set of [built-in events](/docs/dev/concepts/events), ensure you do not create a custom event when you can use a built-in event. > For example, use this endpoint to trigger an event when a user updates their payment information. > Before using this endpoint, create your event as a custom attribute of type `event`. See the [Developer docs](/docs/dev/concepts/events/#creating-a-custom-event). > An event is always part of a session. If either the profile or the session does not exist, a new empty profile/session is created. If the specified session already exists, it must belong to the same `profileId` or an error will be returned.
822
- # @param body [NewEvent]
1362
+ # <div class=\"redoc-section\"> <p class=\"title\">Deprecation warning</p> <p>This endpoint is DEPRECATED and will be sunset on March 31st 2023. Use <a href=\"https://docs.talon.one/integration-api#tag/Events/operation/trackEventV2\">Track Event V2</a> instead.</p> <p>See <a href=\"https://docs.talon.one/docs/dev/tutorials/migrating-to-v2\">Migrating to V2</a>.</p> </div> Triggers a custom event in a customer session. You can then check this event in your rules. Before using this endpoint, create your event as a custom attribute of type `event`. An event is always part of a session. If either the profile or the session does not exist, a new empty profile/session is created. If the specified session already exists, it must belong to the same `profileId` or an error will be returned.
1363
+ # @param body [NewEvent] body
823
1364
  # @param [Hash] opts the optional parameters
824
- # @option opts [Boolean] :dry Indicates whether to persist the changes. Changes are ignored when &#x60;dry&#x3D;true&#x60;.
1365
+ # @option opts [Boolean] :dry Indicates whether to persist the changes. Changes are ignored when &#x60;dry&#x3D;true&#x60;.
825
1366
  # @return [IntegrationState]
826
1367
  def track_event(body, opts = {})
827
1368
  data, _status_code, _headers = track_event_with_http_info(body, opts)
@@ -829,10 +1370,10 @@ module TalonOne
829
1370
  end
830
1371
 
831
1372
  # Track event
832
- # **Important:** This endpoint is **DEPRECATED**. Use [Track Event V2](https://docs.talon.one/integration-api/#tag/Events/operation/trackEventV2) instead. &gt; Triggers a custom event in a customer session. You can then check this event in your rules. **Important:** Talon.One offers a set of [built-in events](/docs/dev/concepts/events), ensure you do not create a custom event when you can use a built-in event. &gt; For example, use this endpoint to trigger an event when a user updates their payment information. &gt; Before using this endpoint, create your event as a custom attribute of type &#x60;event&#x60;. See the [Developer docs](/docs/dev/concepts/events/#creating-a-custom-event). &gt; An event is always part of a session. If either the profile or the session does not exist, a new empty profile/session is created. If the specified session already exists, it must belong to the same &#x60;profileId&#x60; or an error will be returned.
833
- # @param body [NewEvent]
1373
+ # &lt;div class&#x3D;\&quot;redoc-section\&quot;&gt; &lt;p class&#x3D;\&quot;title\&quot;&gt;Deprecation warning&lt;/p&gt; &lt;p&gt;This endpoint is DEPRECATED and will be sunset on March 31st 2023. Use &lt;a href&#x3D;\&quot;https://docs.talon.one/integration-api#tag/Events/operation/trackEventV2\&quot;&gt;Track Event V2&lt;/a&gt; instead.&lt;/p&gt; &lt;p&gt;See &lt;a href&#x3D;\&quot;https://docs.talon.one/docs/dev/tutorials/migrating-to-v2\&quot;&gt;Migrating to V2&lt;/a&gt;.&lt;/p&gt; &lt;/div&gt; Triggers a custom event in a customer session. You can then check this event in your rules. Before using this endpoint, create your event as a custom attribute of type &#x60;event&#x60;. An event is always part of a session. If either the profile or the session does not exist, a new empty profile/session is created. If the specified session already exists, it must belong to the same &#x60;profileId&#x60; or an error will be returned.
1374
+ # @param body [NewEvent] body
834
1375
  # @param [Hash] opts the optional parameters
835
- # @option opts [Boolean] :dry Indicates whether to persist the changes. Changes are ignored when &#x60;dry&#x3D;true&#x60;.
1376
+ # @option opts [Boolean] :dry Indicates whether to persist the changes. Changes are ignored when &#x60;dry&#x3D;true&#x60;.
836
1377
  # @return [Array<(IntegrationState, Integer, Hash)>] IntegrationState data, response status code and response headers
837
1378
  def track_event_with_http_info(body, opts = {})
838
1379
  if @api_client.config.debugging
@@ -885,11 +1426,11 @@ module TalonOne
885
1426
  end
886
1427
 
887
1428
  # Track event V2
888
- # Triggers a custom event. You can then check this event in your rules. **Important:** Talon.One offers a set of [built-in events](/docs/dev/concepts/events), ensure you do not create a custom event when you can use a built-in event. For example, use this endpoint to trigger an event when a user updates their payment information. Before using this endpoint, create your event as a custom attribute of type `event`. See the [Developer docs](/docs/dev/concepts/events/#creating-a-custom-event). **Important:** `profileId` is required. An event V2 is associated with a customer profile.
889
- # @param body [IntegrationEventV2Request]
1429
+ # Triggers a custom event. You can build a condition around this event in your rules. Talon.One offers a set of [built-in events](https://docs.talon.one/docs/dev/concepts/events). Ensure you do not create a custom event when you can use a built-in event. For example, use this endpoint to trigger an event when a customer shares a link to a product. See the [tutorial](https://docs.talon.one/docs/product/tutorials/referrals/incentivizing-product-link-sharing). **Important:** - `profileId` is required. An event V2 is associated with a customer profile. - Before using this endpoint, create your event as a custom attribute of type `event`. See the [Developer docs](https://docs.talon.one/docs/dev/concepts/events#creating-a-custom-event). When you successfully sent an event to Talon.One, you can list received events in the **Events** view in the Campaign Manager.
1430
+ # @param body [IntegrationEventV2Request] body
890
1431
  # @param [Hash] opts the optional parameters
891
- # @option opts [String] :silent 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 essential data such as the updated customer profiles and session-related information. (default to 'yes')
892
- # @option opts [Boolean] :dry Indicates whether to persist the changes. Changes are ignored when &#x60;dry&#x3D;true&#x60;.
1432
+ # @option opts [String] :silent 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. (default to 'yes')
1433
+ # @option opts [Boolean] :dry Indicates whether to persist the changes. Changes are ignored when &#x60;dry&#x3D;true&#x60;.
893
1434
  # @return [IntegrationStateV2]
894
1435
  def track_event_v2(body, opts = {})
895
1436
  data, _status_code, _headers = track_event_v2_with_http_info(body, opts)
@@ -897,11 +1438,11 @@ module TalonOne
897
1438
  end
898
1439
 
899
1440
  # Track event V2
900
- # Triggers a custom event. You can then check this event in your rules. **Important:** Talon.One offers a set of [built-in events](/docs/dev/concepts/events), ensure you do not create a custom event when you can use a built-in event. For example, use this endpoint to trigger an event when a user updates their payment information. Before using this endpoint, create your event as a custom attribute of type &#x60;event&#x60;. See the [Developer docs](/docs/dev/concepts/events/#creating-a-custom-event). **Important:** &#x60;profileId&#x60; is required. An event V2 is associated with a customer profile.
901
- # @param body [IntegrationEventV2Request]
1441
+ # Triggers a custom event. You can build a condition around this event in your rules. Talon.One offers a set of [built-in events](https://docs.talon.one/docs/dev/concepts/events). Ensure you do not create a custom event when you can use a built-in event. For example, use this endpoint to trigger an event when a customer shares a link to a product. See the [tutorial](https://docs.talon.one/docs/product/tutorials/referrals/incentivizing-product-link-sharing). **Important:** - &#x60;profileId&#x60; is required. An event V2 is associated with a customer profile. - Before using this endpoint, create your event as a custom attribute of type &#x60;event&#x60;. See the [Developer docs](https://docs.talon.one/docs/dev/concepts/events#creating-a-custom-event). When you successfully sent an event to Talon.One, you can list received events in the **Events** view in the Campaign Manager.
1442
+ # @param body [IntegrationEventV2Request] body
902
1443
  # @param [Hash] opts the optional parameters
903
- # @option opts [String] :silent 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 essential data such as the updated customer profiles and session-related information.
904
- # @option opts [Boolean] :dry Indicates whether to persist the changes. Changes are ignored when &#x60;dry&#x3D;true&#x60;.
1444
+ # @option opts [String] :silent 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.
1445
+ # @option opts [Boolean] :dry Indicates whether to persist the changes. Changes are ignored when &#x60;dry&#x3D;true&#x60;.
905
1446
  # @return [Array<(IntegrationStateV2, Integer, Hash)>] IntegrationStateV2 data, response status code and response headers
906
1447
  def track_event_v2_with_http_info(body, opts = {})
907
1448
  if @api_client.config.debugging
@@ -957,7 +1498,7 @@ module TalonOne
957
1498
  # Update profile attributes for all customers in audience
958
1499
  # Update the specified profile attributes to the provided values for all customers in the specified audience.
959
1500
  # @param audience_id [Integer] The ID of the audience. You get it via the &#x60;id&#x60; property when [creating an audience](#operation/createAudienceV2).
960
- # @param body [Object]
1501
+ # @param body [Object] body
961
1502
  # @param [Hash] opts the optional parameters
962
1503
  # @return [nil]
963
1504
  def update_audience_customers_attributes(audience_id, body, opts = {})
@@ -968,7 +1509,7 @@ module TalonOne
968
1509
  # Update profile attributes for all customers in audience
969
1510
  # Update the specified profile attributes to the provided values for all customers in the specified audience.
970
1511
  # @param audience_id [Integer] The ID of the audience. You get it via the &#x60;id&#x60; property when [creating an audience](#operation/createAudienceV2).
971
- # @param body [Object]
1512
+ # @param body [Object] body
972
1513
  # @param [Hash] opts the optional parameters
973
1514
  # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
974
1515
  def update_audience_customers_attributes_with_http_info(audience_id, body, opts = {})
@@ -1024,10 +1565,10 @@ module TalonOne
1024
1565
  return data, status_code, headers
1025
1566
  end
1026
1567
 
1027
- # Update audience
1028
- # Update an Audience created by a third-party integration.
1568
+ # Update audience name
1569
+ # Update the name of the given audience created by a third-party integration. Sending a request to this endpoint does **not** trigger the rule engine. To update the audience's members, use the [Update customer profile](#tag/Customer-profiles/operation/updateCustomerProfileV2) endpoint.
1029
1570
  # @param audience_id [Integer] The ID of the audience. You get it via the &#x60;id&#x60; property when [creating an audience](#operation/createAudienceV2).
1030
- # @param body [UpdateAudience]
1571
+ # @param body [UpdateAudience] body
1031
1572
  # @param [Hash] opts the optional parameters
1032
1573
  # @return [Audience]
1033
1574
  def update_audience_v2(audience_id, body, opts = {})
@@ -1035,10 +1576,10 @@ module TalonOne
1035
1576
  data
1036
1577
  end
1037
1578
 
1038
- # Update audience
1039
- # Update an Audience created by a third-party integration.
1579
+ # Update audience name
1580
+ # Update the name of the given audience created by a third-party integration. Sending a request to this endpoint does **not** trigger the rule engine. To update the audience&#39;s members, use the [Update customer profile](#tag/Customer-profiles/operation/updateCustomerProfileV2) endpoint.
1040
1581
  # @param audience_id [Integer] The ID of the audience. You get it via the &#x60;id&#x60; property when [creating an audience](#operation/createAudienceV2).
1041
- # @param body [UpdateAudience]
1582
+ # @param body [UpdateAudience] body
1042
1583
  # @param [Hash] opts the optional parameters
1043
1584
  # @return [Array<(Audience, Integer, Hash)>] Audience data, response status code and response headers
1044
1585
  def update_audience_v2_with_http_info(audience_id, body, opts = {})
@@ -1096,7 +1637,7 @@ module TalonOne
1096
1637
 
1097
1638
  # Update multiple customer profiles' audiences
1098
1639
  # Update the specified customer profiles with the specified audiences. Use this endpoint when customers join or leave audiences. The limit of customer profiles per request is 1000.
1099
- # @param body [CustomerProfileAudienceRequest]
1640
+ # @param body [CustomerProfileAudienceRequest] body
1100
1641
  # @param [Hash] opts the optional parameters
1101
1642
  # @return [nil]
1102
1643
  def update_customer_profile_audiences(body, opts = {})
@@ -1106,7 +1647,7 @@ module TalonOne
1106
1647
 
1107
1648
  # Update multiple customer profiles&#39; audiences
1108
1649
  # Update the specified customer profiles with the specified audiences. Use this endpoint when customers join or leave audiences. The limit of customer profiles per request is 1000.
1109
- # @param body [CustomerProfileAudienceRequest]
1650
+ # @param body [CustomerProfileAudienceRequest] body
1110
1651
  # @param [Hash] opts the optional parameters
1111
1652
  # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
1112
1653
  def update_customer_profile_audiences_with_http_info(body, opts = {})
@@ -1159,12 +1700,12 @@ module TalonOne
1159
1700
  end
1160
1701
 
1161
1702
  # Update customer profile
1162
- # Update (or create) a [Customer Profile](/docs/dev/concepts/entities#customer-profile). **Performance tips** Updating a customer profile returns a response with the requested integration state. You can use the `responseContent` property to save yourself extra API calls. For example, you can get the customer profile details directly without extra requests. You can also set `runRuleEngine` to `false` to prevent unwanted rule executions. This allows you to improve response times. If `runRuleEngine` is set to `true`, the response includes: - The effects generated by the triggered campaigns. - The created coupons and referral objects.
1703
+ # Update or create a [Customer Profile](https://docs.talon.one/docs/dev/concepts/entities#customer-profile). This endpoint triggers the Rule Builder. You can use this endpoint to: - Set attributes on the given customer profile. Ensure you create the attributes in the Campaign Manager, first. - Modify the audience the customer profile is a member of. <div class=\"redoc-section\"> <p class=\"title\">Performance tips</p> Updating a customer profile returns a response with the requested integration state. You can use the `responseContent` property to save yourself extra API calls. For example, you can get the customer profile details directly without extra requests. </div>
1163
1704
  # @param 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.
1164
- # @param body [CustomerProfileIntegrationRequestV2]
1705
+ # @param body [CustomerProfileIntegrationRequestV2] body
1165
1706
  # @param [Hash] opts the optional parameters
1166
- # @option opts [Boolean] :run_rule_engine Indicates whether to run the rule engine. Setting this property to &#x60;false&#x60; improves response times. (default to false)
1167
- # @option opts [Boolean] :dry Indicates whether to persist the changes. Changes are ignored when &#x60;dry&#x3D;true&#x60;. Only used when &#x60;runRuleEngine&#x60; is set to &#x60;true&#x60;.
1707
+ # @option opts [Boolean] :run_rule_engine Indicates whether to run the Rule Engine. If &#x60;true&#x60;, the response includes: - The effects generated by the triggered campaigns are returned in the &#x60;effects&#x60; property. - The created coupons and referral objects. If &#x60;false&#x60;: - The rules are not executed and the &#x60;effects&#x60; property is always empty. - The response time improves. - You cannot use &#x60;responseContent&#x60; in the body. (default to false)
1708
+ # @option opts [Boolean] :dry (Only works when &#x60;runRuleEngine&#x3D;true&#x60;) Indicates whether to persist the changes. Changes are ignored when &#x60;dry&#x3D;true&#x60;. When set to &#x60;true&#x60;, you can use the &#x60;evaluableCampaignIds&#x60; body property to select specific campaigns to run.
1168
1709
  # @return [IntegrationStateV2]
1169
1710
  def update_customer_profile_v2(integration_id, body, opts = {})
1170
1711
  data, _status_code, _headers = update_customer_profile_v2_with_http_info(integration_id, body, opts)
@@ -1172,12 +1713,12 @@ module TalonOne
1172
1713
  end
1173
1714
 
1174
1715
  # Update customer profile
1175
- # Update (or create) a [Customer Profile](/docs/dev/concepts/entities#customer-profile). **Performance tips** Updating a customer profile returns a response with the requested integration state. You can use the &#x60;responseContent&#x60; property to save yourself extra API calls. For example, you can get the customer profile details directly without extra requests. You can also set &#x60;runRuleEngine&#x60; to &#x60;false&#x60; to prevent unwanted rule executions. This allows you to improve response times. If &#x60;runRuleEngine&#x60; is set to &#x60;true&#x60;, the response includes: - The effects generated by the triggered campaigns. - The created coupons and referral objects.
1716
+ # Update or create a [Customer Profile](https://docs.talon.one/docs/dev/concepts/entities#customer-profile). This endpoint triggers the Rule Builder. You can use this endpoint to: - Set attributes on the given customer profile. Ensure you create the attributes in the Campaign Manager, first. - Modify the audience the customer profile is a member of. &lt;div class&#x3D;\&quot;redoc-section\&quot;&gt; &lt;p class&#x3D;\&quot;title\&quot;&gt;Performance tips&lt;/p&gt; Updating a customer profile returns a response with the requested integration state. You can use the &#x60;responseContent&#x60; property to save yourself extra API calls. For example, you can get the customer profile details directly without extra requests. &lt;/div&gt;
1176
1717
  # @param 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.
1177
- # @param body [CustomerProfileIntegrationRequestV2]
1718
+ # @param body [CustomerProfileIntegrationRequestV2] body
1178
1719
  # @param [Hash] opts the optional parameters
1179
- # @option opts [Boolean] :run_rule_engine Indicates whether to run the rule engine. Setting this property to &#x60;false&#x60; improves response times.
1180
- # @option opts [Boolean] :dry Indicates whether to persist the changes. Changes are ignored when &#x60;dry&#x3D;true&#x60;. Only used when &#x60;runRuleEngine&#x60; is set to &#x60;true&#x60;.
1720
+ # @option opts [Boolean] :run_rule_engine Indicates whether to run the Rule Engine. If &#x60;true&#x60;, the response includes: - The effects generated by the triggered campaigns are returned in the &#x60;effects&#x60; property. - The created coupons and referral objects. If &#x60;false&#x60;: - The rules are not executed and the &#x60;effects&#x60; property is always empty. - The response time improves. - You cannot use &#x60;responseContent&#x60; in the body.
1721
+ # @option opts [Boolean] :dry (Only works when &#x60;runRuleEngine&#x3D;true&#x60;) Indicates whether to persist the changes. Changes are ignored when &#x60;dry&#x3D;true&#x60;. When set to &#x60;true&#x60;, you can use the &#x60;evaluableCampaignIds&#x60; body property to select specific campaigns to run.
1181
1722
  # @return [Array<(IntegrationStateV2, Integer, Hash)>] IntegrationStateV2 data, response status code and response headers
1182
1723
  def update_customer_profile_v2_with_http_info(integration_id, body, opts = {})
1183
1724
  if @api_client.config.debugging
@@ -1235,10 +1776,10 @@ module TalonOne
1235
1776
  end
1236
1777
 
1237
1778
  # Update multiple customer profiles
1238
- # Update (or create) up to 1000 [customer profiles](/docs/dev/concepts/entities#customer-profile) in 1 request. The `integrationId` must be any identifier that remains stable for the customer. Do not use an ID that the customer can update themselves. For example, you can use a database ID. A customer profile [can be linked to one or more sessions](/integration-api/#tag/Customer-sessions).
1239
- # @param body [MultipleCustomerProfileIntegrationRequest]
1779
+ # Update (or create) up to 1000 [customer profiles](https://docs.talon.one/docs/dev/concepts/entities#customer-profile) in 1 request. The `integrationId` must be any identifier that remains stable for the customer. Do not use an ID that the customer can update themselves. For example, you can use a database ID. A customer profile [can be linked to one or more sessions](https://docs.talon.one/integration-api#tag/Customer-sessions).
1780
+ # @param body [MultipleCustomerProfileIntegrationRequest] body
1240
1781
  # @param [Hash] opts the optional parameters
1241
- # @option opts [String] :silent 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 essential data such as the updated customer profiles and session-related information. (default to 'yes')
1782
+ # @option opts [String] :silent 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. (default to 'yes')
1242
1783
  # @return [MultipleCustomerProfileIntegrationResponseV2]
1243
1784
  def update_customer_profiles_v2(body, opts = {})
1244
1785
  data, _status_code, _headers = update_customer_profiles_v2_with_http_info(body, opts)
@@ -1246,10 +1787,10 @@ module TalonOne
1246
1787
  end
1247
1788
 
1248
1789
  # Update multiple customer profiles
1249
- # Update (or create) up to 1000 [customer profiles](/docs/dev/concepts/entities#customer-profile) in 1 request. The &#x60;integrationId&#x60; must be any identifier that remains stable for the customer. Do not use an ID that the customer can update themselves. For example, you can use a database ID. A customer profile [can be linked to one or more sessions](/integration-api/#tag/Customer-sessions).
1250
- # @param body [MultipleCustomerProfileIntegrationRequest]
1790
+ # Update (or create) up to 1000 [customer profiles](https://docs.talon.one/docs/dev/concepts/entities#customer-profile) in 1 request. The &#x60;integrationId&#x60; must be any identifier that remains stable for the customer. Do not use an ID that the customer can update themselves. For example, you can use a database ID. A customer profile [can be linked to one or more sessions](https://docs.talon.one/integration-api#tag/Customer-sessions).
1791
+ # @param body [MultipleCustomerProfileIntegrationRequest] body
1251
1792
  # @param [Hash] opts the optional parameters
1252
- # @option opts [String] :silent 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 essential data such as the updated customer profiles and session-related information.
1793
+ # @option opts [String] :silent 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.
1253
1794
  # @return [Array<(MultipleCustomerProfileIntegrationResponseV2, Integer, Hash)>] MultipleCustomerProfileIntegrationResponseV2 data, response status code and response headers
1254
1795
  def update_customer_profiles_v2_with_http_info(body, opts = {})
1255
1796
  if @api_client.config.debugging
@@ -1302,11 +1843,11 @@ module TalonOne
1302
1843
  end
1303
1844
 
1304
1845
  # Update customer session
1305
- # Update or create a [customer session](/docs/dev/concepts/entities#customer-session). For example, use this endpoint to share the content of a customer's cart with Talon.One and to check which promotion rules apply. **Note:** The currency for the session and the cart items in the session is the same as the Application that owns this session. **Session management** The Talon.One platform supports multiple simultaneous sessions for the same profile. If you have multiple ways of accessing the same Application you can either: - Track multiple independent sessions or, - Use the same session across all of them. You should share sessions when application access points share other state, such as the user's cart. If two points of access to the application have independent states, for example a user can have different items in their cart across the two) they should use independent customer session ID's. See more information and tips about session management in the [documentation](/docs/dev/concepts/entities#customer-session). **Sessions and customer profiles** - To link a session to a customer profile, set the `profileId` parameter in the request body to a customer profile's `integrationId`. - While you can create an anonymous session with `profileId=\"\"`, we recommend you use a guest ID instead. **Note:** You do **not** have to create a customer profile first. If the specified profile does not exist, an empty profile is created automatically. **Performance tips** Updating a customer session returns a response with the requested integration state. You can use the `responseContent` property to save yourself extra API calls. For example, you can get the customer profile details directly without extra requests. For more information, see the [integration tutorial](https://docs.talon.one/docs/dev/tutorials/integrating-talon-one).
1306
- # @param customer_session_id [String] The &#x60;integration ID&#x60; of the customer session. You set this ID when you create a customer session. You can see existing customer session integration IDs in the Campaign Manager&#39;s **Sessions** menu, or via the [List Application session endpoint](https://docs.talon.one/management-api/#operation/getApplicationSessions).
1307
- # @param body [IntegrationRequest]
1846
+ # Update or create a [customer session](https://docs.talon.one/docs/dev/concepts/entities#customer-session). The endpoint responds with the potential promotion rule [effects](https://docs.talon.one/docs/dev/integration-api/api-effects) that match the current cart. For example, use this endpoint to share the contents of a customer's cart with Talon.One. **Note:** The currency for the session and the cart items in the session is the currency set for the Application that owns this session. ### Session management To use this endpoint, start by learning about [customer sessions](https://docs.talon.one/docs/dev/concepts/entities#customer-session) and their states and refer to the `state` parameter documentation the request body schema docs below. ### Sessions and customer profiles - To link a session to a customer profile, set the `profileId` parameter in the request body to a customer profile's `integrationId`. - While you can create an anonymous session with `profileId=\"\"`, we recommend you use a guest ID instead. - A profile can be linked to simultaneous sessions in different Applications. Either: - Use unique session integration IDs or, - Use the same session integration ID across all of the Applications. **Note:** If the specified profile does not exist, an empty profile is **created automatically**. You can update it with [Update customer profile](https://docs.talon.one/integration-api#tag/Customer-profiles/operation/updateCustomerProfileV2). <div class=\"redoc-section\"> <p class=\"title\">Performance tips</p> Updating a customer session returns a response with the new integration state. Use the `responseContent` property to save yourself extra API calls. For example, you can get the customer profile details directly without extra requests. </div> For more information, see: - The introductory video in [Getting started](https://docs.talon.one/docs/dev/getting-started/overview). - The [integration tutorial](https://docs.talon.one/docs/dev/tutorials/integrating-talon-one).
1847
+ # @param customer_session_id [String] The &#x60;integration ID&#x60; of the customer session. You set this ID when you create a customer session. You can see existing customer session integration IDs in the Campaign Manager&#39;s **Sessions** menu, or via the [List Application session](https://docs.talon.one/management-api#operation/getApplicationSessions) endpoint.
1848
+ # @param body [IntegrationRequest] body
1308
1849
  # @param [Hash] opts the optional parameters
1309
- # @option opts [Boolean] :dry Indicates whether to persist the changes. Changes are ignored when &#x60;dry&#x3D;true&#x60;.
1850
+ # @option opts [Boolean] :dry Indicates whether to persist the changes. Changes are ignored when &#x60;dry&#x3D;true&#x60;. When set to &#x60;true&#x60;, you can use the &#x60;evaluableCampaignIds&#x60; body property to select specific campaigns to run.
1310
1851
  # @return [IntegrationStateV2]
1311
1852
  def update_customer_session_v2(customer_session_id, body, opts = {})
1312
1853
  data, _status_code, _headers = update_customer_session_v2_with_http_info(customer_session_id, body, opts)
@@ -1314,11 +1855,11 @@ module TalonOne
1314
1855
  end
1315
1856
 
1316
1857
  # Update customer session
1317
- # Update or create a [customer session](/docs/dev/concepts/entities#customer-session). For example, use this endpoint to share the content of a customer&#39;s cart with Talon.One and to check which promotion rules apply. **Note:** The currency for the session and the cart items in the session is the same as the Application that owns this session. **Session management** The Talon.One platform supports multiple simultaneous sessions for the same profile. If you have multiple ways of accessing the same Application you can either: - Track multiple independent sessions or, - Use the same session across all of them. You should share sessions when application access points share other state, such as the user&#39;s cart. If two points of access to the application have independent states, for example a user can have different items in their cart across the two) they should use independent customer session ID&#39;s. See more information and tips about session management in the [documentation](/docs/dev/concepts/entities#customer-session). **Sessions and customer profiles** - To link a session to a customer profile, set the &#x60;profileId&#x60; parameter in the request body to a customer profile&#39;s &#x60;integrationId&#x60;. - While you can create an anonymous session with &#x60;profileId&#x3D;\&quot;\&quot;&#x60;, we recommend you use a guest ID instead. **Note:** You do **not** have to create a customer profile first. If the specified profile does not exist, an empty profile is created automatically. **Performance tips** Updating a customer session returns a response with the requested integration state. You can use the &#x60;responseContent&#x60; property to save yourself extra API calls. For example, you can get the customer profile details directly without extra requests. For more information, see the [integration tutorial](https://docs.talon.one/docs/dev/tutorials/integrating-talon-one).
1318
- # @param customer_session_id [String] The &#x60;integration ID&#x60; of the customer session. You set this ID when you create a customer session. You can see existing customer session integration IDs in the Campaign Manager&#39;s **Sessions** menu, or via the [List Application session endpoint](https://docs.talon.one/management-api/#operation/getApplicationSessions).
1319
- # @param body [IntegrationRequest]
1858
+ # Update or create a [customer session](https://docs.talon.one/docs/dev/concepts/entities#customer-session). The endpoint responds with the potential promotion rule [effects](https://docs.talon.one/docs/dev/integration-api/api-effects) that match the current cart. For example, use this endpoint to share the contents of a customer&#39;s cart with Talon.One. **Note:** The currency for the session and the cart items in the session is the currency set for the Application that owns this session. ### Session management To use this endpoint, start by learning about [customer sessions](https://docs.talon.one/docs/dev/concepts/entities#customer-session) and their states and refer to the &#x60;state&#x60; parameter documentation the request body schema docs below. ### Sessions and customer profiles - To link a session to a customer profile, set the &#x60;profileId&#x60; parameter in the request body to a customer profile&#39;s &#x60;integrationId&#x60;. - While you can create an anonymous session with &#x60;profileId&#x3D;\&quot;\&quot;&#x60;, we recommend you use a guest ID instead. - A profile can be linked to simultaneous sessions in different Applications. Either: - Use unique session integration IDs or, - Use the same session integration ID across all of the Applications. **Note:** If the specified profile does not exist, an empty profile is **created automatically**. You can update it with [Update customer profile](https://docs.talon.one/integration-api#tag/Customer-profiles/operation/updateCustomerProfileV2). &lt;div class&#x3D;\&quot;redoc-section\&quot;&gt; &lt;p class&#x3D;\&quot;title\&quot;&gt;Performance tips&lt;/p&gt; Updating a customer session returns a response with the new integration state. Use the &#x60;responseContent&#x60; property to save yourself extra API calls. For example, you can get the customer profile details directly without extra requests. &lt;/div&gt; For more information, see: - The introductory video in [Getting started](https://docs.talon.one/docs/dev/getting-started/overview). - The [integration tutorial](https://docs.talon.one/docs/dev/tutorials/integrating-talon-one).
1859
+ # @param customer_session_id [String] The &#x60;integration ID&#x60; of the customer session. You set this ID when you create a customer session. You can see existing customer session integration IDs in the Campaign Manager&#39;s **Sessions** menu, or via the [List Application session](https://docs.talon.one/management-api#operation/getApplicationSessions) endpoint.
1860
+ # @param body [IntegrationRequest] body
1320
1861
  # @param [Hash] opts the optional parameters
1321
- # @option opts [Boolean] :dry Indicates whether to persist the changes. Changes are ignored when &#x60;dry&#x3D;true&#x60;.
1862
+ # @option opts [Boolean] :dry Indicates whether to persist the changes. Changes are ignored when &#x60;dry&#x3D;true&#x60;. When set to &#x60;true&#x60;, you can use the &#x60;evaluableCampaignIds&#x60; body property to select specific campaigns to run.
1322
1863
  # @return [Array<(IntegrationStateV2, Integer, Hash)>] IntegrationStateV2 data, response status code and response headers
1323
1864
  def update_customer_session_v2_with_http_info(customer_session_id, body, opts = {})
1324
1865
  if @api_client.config.debugging