talon_one 2.4.0 → 2.5.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (846) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +43 -0
  3. data/README.md +198 -160
  4. data/docs/Account.md +3 -3
  5. data/docs/AccountAdditionalCost.md +6 -4
  6. data/docs/AccountAnalytics.md +20 -18
  7. data/docs/AccountEntity.md +1 -1
  8. data/docs/AddFreeItemEffectProps.md +1 -1
  9. data/docs/AddLoyaltyPointsEffectProps.md +17 -9
  10. data/docs/AdditionalCost.md +1 -1
  11. data/docs/Application.md +22 -18
  12. data/docs/ApplicationAPIKey.md +9 -9
  13. data/docs/ApplicationApiHealth.md +1 -1
  14. data/docs/ApplicationCustomer.md +10 -8
  15. data/docs/ApplicationCustomerEntity.md +1 -1
  16. data/docs/ApplicationEntity.md +1 -1
  17. data/docs/ApplicationEvent.md +4 -4
  18. data/docs/ApplicationNotification.md +17 -0
  19. data/docs/ApplicationReferee.md +1 -1
  20. data/docs/ApplicationSession.md +13 -11
  21. data/docs/AsyncCouponCreationResponse.md +17 -0
  22. data/docs/Attribute.md +10 -4
  23. data/docs/Audience.md +9 -9
  24. data/docs/BaseLoyaltyProgram.md +29 -0
  25. data/docs/Binding.md +6 -4
  26. data/docs/BulkApplicationNotification.md +19 -0
  27. data/docs/BulkCampaignNotification.md +19 -0
  28. data/docs/Campaign.md +26 -18
  29. data/docs/CampaignCollection.md +37 -0
  30. data/docs/CampaignCollectionWithoutPayload.md +35 -0
  31. data/docs/CampaignCopy.md +2 -2
  32. data/docs/CampaignCreatedNotification.md +17 -0
  33. data/docs/CampaignDeletedNotification.md +17 -0
  34. data/docs/CampaignEditedNotification.md +19 -0
  35. data/docs/CampaignEntity.md +1 -1
  36. data/docs/CampaignGroup.md +4 -4
  37. data/docs/CampaignNotification.md +17 -0
  38. data/docs/CampaignPrioritiesChangedNotification.md +21 -0
  39. data/docs/CampaignPrioritiesV2.md +21 -0
  40. data/docs/CampaignRulesetChangedNotification.md +21 -0
  41. data/docs/CampaignSet.md +3 -3
  42. data/docs/CampaignSetIDs.md +17 -0
  43. data/docs/CampaignSetV2.md +25 -0
  44. data/docs/CampaignStateChangedNotification.md +21 -0
  45. data/docs/CampaignTemplate.md +59 -0
  46. data/docs/CampaignTemplateCollection.md +19 -0
  47. data/docs/CampaignTemplateParams.md +21 -0
  48. data/docs/CartItem.md +20 -14
  49. data/docs/Catalog.md +33 -0
  50. data/docs/Change.md +2 -2
  51. data/docs/CodeGeneratorSettings.md +4 -4
  52. data/docs/Collection.md +39 -0
  53. data/docs/CollectionWithoutPayload.md +37 -0
  54. data/docs/Coupon.md +17 -15
  55. data/docs/CouponConstraints.md +3 -3
  56. data/docs/CouponCreationJob.md +57 -0
  57. data/docs/CouponLimitConfigs.md +17 -0
  58. data/docs/CouponRejectionReason.md +3 -3
  59. data/docs/CouponReservations.md +1 -1
  60. data/docs/CouponValue.md +2 -2
  61. data/docs/CreateApplicationAPIKey.md +4 -4
  62. data/docs/CreateTemplateCampaign.md +29 -0
  63. data/docs/CreateTemplateCampaignResponse.md +21 -0
  64. data/docs/CustomEffect.md +6 -6
  65. data/docs/CustomEffectProps.md +4 -2
  66. data/docs/CustomerActivityReport.md +2 -2
  67. data/docs/CustomerInventory.md +2 -2
  68. data/docs/CustomerProfile.md +11 -9
  69. data/docs/CustomerProfileAudienceRequestItem.md +6 -6
  70. data/docs/CustomerProfileIntegrationRequestV2.md +3 -3
  71. data/docs/CustomerProfileSearchQuery.md +1 -1
  72. data/docs/CustomerSession.md +10 -8
  73. data/docs/CustomerSessionV2.md +26 -20
  74. data/docs/DeductLoyaltyPointsEffectProps.md +5 -1
  75. data/docs/Effect.md +6 -6
  76. data/docs/EffectEntity.md +6 -6
  77. data/docs/EmailEntity.md +1 -1
  78. data/docs/Entity.md +2 -2
  79. data/docs/Environment.md +7 -5
  80. data/docs/ErrorResponseWithStatus.md +21 -0
  81. data/docs/Event.md +10 -10
  82. data/docs/EventType.md +4 -18
  83. data/docs/EventV2.md +21 -0
  84. data/docs/Export.md +3 -3
  85. data/docs/Giveaway.md +3 -3
  86. data/docs/GiveawaysPool.md +3 -3
  87. data/docs/Import.md +7 -7
  88. data/docs/InlineResponse20010.md +3 -3
  89. data/docs/InlineResponse20011.md +2 -4
  90. data/docs/InlineResponse20012.md +3 -3
  91. data/docs/InlineResponse20013.md +4 -2
  92. data/docs/InlineResponse20014.md +1 -1
  93. data/docs/InlineResponse20015.md +2 -2
  94. data/docs/InlineResponse20016.md +3 -3
  95. data/docs/InlineResponse20017.md +2 -2
  96. data/docs/InlineResponse20018.md +3 -3
  97. data/docs/InlineResponse20019.md +3 -5
  98. data/docs/InlineResponse20020.md +5 -3
  99. data/docs/InlineResponse20021.md +4 -2
  100. data/docs/InlineResponse20022.md +1 -1
  101. data/docs/InlineResponse20023.md +1 -1
  102. data/docs/InlineResponse20024.md +1 -1
  103. data/docs/InlineResponse20025.md +1 -1
  104. data/docs/InlineResponse20026.md +1 -1
  105. data/docs/InlineResponse20027.md +2 -4
  106. data/docs/InlineResponse20028.md +1 -1
  107. data/docs/InlineResponse20029.md +4 -2
  108. data/docs/InlineResponse20030.md +19 -0
  109. data/docs/InlineResponse20031.md +19 -0
  110. data/docs/InlineResponse2008.md +5 -3
  111. data/docs/InlineResponse2009.md +4 -2
  112. data/docs/IntegrationApi.md +462 -179
  113. data/docs/IntegrationCustomerSessionResponse.md +17 -0
  114. data/docs/IntegrationEntity.md +2 -2
  115. data/docs/IntegrationEvent.md +4 -4
  116. data/docs/IntegrationEventV2Request.md +23 -0
  117. data/docs/IntegrationProfileEntity.md +2 -2
  118. data/docs/IntegrationRequest.md +2 -2
  119. data/docs/IntegrationStateV2.md +6 -2
  120. data/docs/InventoryCoupon.md +19 -17
  121. data/docs/InventoryReferral.md +43 -0
  122. data/docs/LedgerEntry.md +6 -6
  123. data/docs/LedgerInfo.md +31 -0
  124. data/docs/LimitConfig.md +8 -6
  125. data/docs/LimitCounter.md +45 -0
  126. data/docs/LoginParams.md +2 -2
  127. data/docs/Loyalty.md +4 -2
  128. data/docs/LoyaltyCard.md +35 -0
  129. data/docs/LoyaltyCardProfileRegistration.md +19 -0
  130. data/docs/LoyaltyCardRegistration.md +17 -0
  131. data/docs/LoyaltyDashboardData.md +33 -0
  132. data/docs/LoyaltyDashboardPointsBreakdown.md +19 -0
  133. data/docs/LoyaltyLedger.md +1 -1
  134. data/docs/LoyaltyLedgerEntry.md +3 -1
  135. data/docs/LoyaltyMembership.md +1 -1
  136. data/docs/LoyaltyProgram.md +21 -13
  137. data/docs/LoyaltyProgramBalance.md +10 -10
  138. data/docs/LoyaltyProgramEntity.md +1 -1
  139. data/docs/LoyaltyProgramLedgers.md +5 -5
  140. data/docs/LoyaltyProjection.md +21 -0
  141. data/docs/LoyaltyProjectionData.md +23 -0
  142. data/docs/LoyaltyStatistics.md +16 -6
  143. data/docs/LoyaltySubLedger.md +13 -11
  144. data/docs/LoyaltyTier.md +5 -5
  145. data/docs/ManagementApi.md +1627 -1247
  146. data/docs/ModelReturn.md +37 -0
  147. data/docs/MultipleAttribute.md +17 -0
  148. data/docs/MultipleCustomerProfileIntegrationRequestItem.md +3 -3
  149. data/docs/MultipleNewAttribute.md +17 -0
  150. data/docs/MutableEntity.md +1 -1
  151. data/docs/NewAccountSignUp.md +2 -2
  152. data/docs/NewAdditionalCost.md +3 -1
  153. data/docs/NewApplication.md +18 -14
  154. data/docs/NewApplicationAPIKey.md +11 -11
  155. data/docs/NewAttribute.md +4 -0
  156. data/docs/NewAudience.md +6 -6
  157. data/docs/NewCampaign.md +14 -14
  158. data/docs/NewCampaignCollection.md +19 -0
  159. data/docs/NewCampaignSet.md +1 -1
  160. data/docs/NewCampaignSetV2.md +21 -0
  161. data/docs/NewCampaignTemplate.md +41 -0
  162. data/docs/NewCatalog.md +21 -0
  163. data/docs/NewCollection.md +21 -0
  164. data/docs/NewCouponCreationJob.md +29 -0
  165. data/docs/NewCoupons.md +12 -10
  166. data/docs/NewCouponsForMultipleRecipients.md +5 -5
  167. data/docs/NewCustomEffect.md +3 -3
  168. data/docs/NewCustomerProfile.md +1 -1
  169. data/docs/NewCustomerSession.md +5 -5
  170. data/docs/NewCustomerSessionV2.md +17 -15
  171. data/docs/NewEvent.md +5 -5
  172. data/docs/NewEventType.md +3 -17
  173. data/docs/NewInvitation.md +3 -3
  174. data/docs/NewLoyaltyProgram.md +16 -8
  175. data/docs/NewLoyaltyTier.md +2 -2
  176. data/docs/NewNotificationWebhook.md +19 -0
  177. data/docs/NewReferral.md +7 -7
  178. data/docs/NewReferralsForMultipleAdvocates.md +10 -10
  179. data/docs/NewReturn.md +17 -0
  180. data/docs/NewRole.md +2 -2
  181. data/docs/NewRuleset.md +4 -4
  182. data/docs/NewUser.md +3 -3
  183. data/docs/NotificationWebhook.md +27 -0
  184. data/docs/Referral.md +13 -13
  185. data/docs/ReferralConstraints.md +4 -4
  186. data/docs/ReturnIntegrationRequest.md +19 -0
  187. data/docs/ReturnedCartItem.md +19 -0
  188. data/docs/Role.md +5 -5
  189. data/docs/RollbackAddedLoyaltyPointsEffectProps.md +7 -1
  190. data/docs/RollbackDeductedLoyaltyPointsEffectProps.md +3 -1
  191. data/docs/RollbackDiscountEffectProps.md +12 -2
  192. data/docs/Rule.md +4 -4
  193. data/docs/RuleFailureReason.md +1 -1
  194. data/docs/Ruleset.md +10 -8
  195. data/docs/SamlConnection.md +2 -2
  196. data/docs/Session.md +3 -3
  197. data/docs/SetDiscountEffectProps.md +3 -1
  198. data/docs/SetDiscountPerAdditionalCostEffectProps.md +25 -0
  199. data/docs/SetDiscountPerAdditionalCostPerItemEffectProps.md +29 -0
  200. data/docs/SetDiscountPerItemEffectProps.md +13 -5
  201. data/docs/TemplateDef.md +3 -3
  202. data/docs/TemplateLimitConfig.md +23 -0
  203. data/docs/Tier.md +19 -0
  204. data/docs/UpdateApplication.md +19 -15
  205. data/docs/UpdateAudience.md +2 -2
  206. data/docs/UpdateCampaign.md +3 -3
  207. data/docs/UpdateCampaignCollection.md +17 -0
  208. data/docs/UpdateCampaignTemplate.md +45 -0
  209. data/docs/UpdateCatalog.md +21 -0
  210. data/docs/UpdateCollection.md +19 -0
  211. data/docs/UpdateCoupon.md +5 -3
  212. data/docs/UpdateCouponBatch.md +4 -4
  213. data/docs/UpdateCustomEffect.md +3 -3
  214. data/docs/UpdateLoyaltyCard.md +17 -0
  215. data/docs/UpdateLoyaltyProgram.md +10 -6
  216. data/docs/UpdateReferral.md +4 -4
  217. data/docs/UpdateReferralBatch.md +25 -0
  218. data/docs/UpdateRole.md +2 -2
  219. data/docs/User.md +12 -12
  220. data/docs/Webhook.md +3 -3
  221. data/lib/talon_one/api/integration_api.rb +561 -165
  222. data/lib/talon_one/api/management_api.rb +2256 -1674
  223. data/lib/talon_one/api_client.rb +1 -1
  224. data/lib/talon_one/api_error.rb +1 -1
  225. data/lib/talon_one/configuration.rb +1 -8
  226. data/lib/talon_one/models/accept_coupon_effect_props.rb +1 -1
  227. data/lib/talon_one/models/accept_referral_effect_props.rb +1 -1
  228. data/lib/talon_one/models/access_log_entry.rb +1 -1
  229. data/lib/talon_one/models/account.rb +1 -1
  230. data/lib/talon_one/models/account_additional_cost.rb +93 -5
  231. data/lib/talon_one/models/account_analytics.rb +21 -6
  232. data/lib/talon_one/models/account_entity.rb +1 -1
  233. data/lib/talon_one/models/account_limits.rb +1 -1
  234. data/lib/talon_one/models/add_free_item_effect_props.rb +1 -1
  235. data/lib/talon_one/models/add_loyalty_points_effect_props.rb +73 -14
  236. data/lib/talon_one/models/additional_cost.rb +1 -1
  237. data/lib/talon_one/models/api_error.rb +1 -1
  238. data/lib/talon_one/models/application.rb +48 -12
  239. data/lib/talon_one/models/application_api_health.rb +1 -1
  240. data/lib/talon_one/models/application_api_key.rb +4 -4
  241. data/lib/talon_one/models/application_campaign_stats.rb +1 -1
  242. data/lib/talon_one/models/application_customer.rb +53 -9
  243. data/lib/talon_one/models/application_customer_entity.rb +1 -1
  244. data/lib/talon_one/models/application_entity.rb +1 -1
  245. data/lib/talon_one/models/application_event.rb +1 -1
  246. data/lib/talon_one/models/application_notification.rb +212 -0
  247. data/lib/talon_one/models/application_referee.rb +39 -1
  248. data/lib/talon_one/models/application_session.rb +55 -6
  249. data/lib/talon_one/models/application_session_entity.rb +1 -1
  250. data/lib/talon_one/models/async_coupon_creation_response.rb +212 -0
  251. data/lib/talon_one/models/attribute.rb +80 -5
  252. data/lib/talon_one/models/attributes_mandatory.rb +1 -1
  253. data/lib/talon_one/models/attributes_settings.rb +1 -1
  254. data/lib/talon_one/models/audience.rb +12 -51
  255. data/lib/talon_one/models/audience_membership.rb +1 -1
  256. data/lib/talon_one/models/award_giveaway_effect_props.rb +20 -1
  257. data/lib/talon_one/models/base_loyalty_program.rb +284 -0
  258. data/lib/talon_one/models/base_saml_connection.rb +1 -1
  259. data/lib/talon_one/models/binding.rb +16 -6
  260. data/lib/talon_one/models/{new_feature_flags.rb → bulk_application_notification.rb} +29 -29
  261. data/lib/talon_one/models/bulk_campaign_notification.rb +227 -0
  262. data/lib/talon_one/models/campaign.rb +53 -13
  263. data/lib/talon_one/models/campaign_analytics.rb +1 -1
  264. data/lib/talon_one/models/campaign_collection.rb +370 -0
  265. data/lib/talon_one/models/campaign_collection_without_payload.rb +358 -0
  266. data/lib/talon_one/models/campaign_copy.rb +3 -3
  267. data/lib/talon_one/models/campaign_created_notification.rb +212 -0
  268. data/lib/talon_one/models/campaign_deleted_notification.rb +212 -0
  269. data/lib/talon_one/models/campaign_edited_notification.rb +226 -0
  270. data/lib/talon_one/models/campaign_entity.rb +1 -1
  271. data/lib/talon_one/models/campaign_group.rb +1 -1
  272. data/lib/talon_one/models/campaign_group_entity.rb +1 -1
  273. data/lib/talon_one/models/campaign_notification.rb +212 -0
  274. data/lib/talon_one/models/campaign_priorities_changed_notification.rb +241 -0
  275. data/lib/talon_one/models/campaign_priorities_v2.rb +230 -0
  276. data/lib/talon_one/models/campaign_ruleset_changed_notification.rb +235 -0
  277. data/lib/talon_one/models/campaign_search.rb +1 -1
  278. data/lib/talon_one/models/campaign_set.rb +1 -1
  279. data/lib/talon_one/models/campaign_set_branch_node.rb +1 -1
  280. data/lib/talon_one/models/campaign_set_i_ds.rb +208 -0
  281. data/lib/talon_one/models/campaign_set_leaf_node.rb +1 -1
  282. data/lib/talon_one/models/campaign_set_node.rb +1 -1
  283. data/lib/talon_one/models/campaign_set_v2.rb +291 -0
  284. data/lib/talon_one/models/campaign_state_changed_notification.rb +242 -0
  285. data/lib/talon_one/models/campaign_template.rb +533 -0
  286. data/lib/talon_one/models/{update_loyalty_tier.rb → campaign_template_collection.rb} +30 -34
  287. data/lib/talon_one/models/campaign_template_params.rb +295 -0
  288. data/lib/talon_one/models/cart_item.rb +44 -7
  289. data/lib/talon_one/models/catalog.rb +330 -0
  290. data/lib/talon_one/models/change.rb +1 -1
  291. data/lib/talon_one/models/change_profile_password.rb +1 -1
  292. data/lib/talon_one/models/code_generator_settings.rb +3 -3
  293. data/lib/talon_one/models/collection.rb +382 -0
  294. data/lib/talon_one/models/collection_without_payload.rb +370 -0
  295. data/lib/talon_one/models/coupon.rb +35 -6
  296. data/lib/talon_one/models/coupon_constraints.rb +2 -2
  297. data/lib/talon_one/models/coupon_created_effect_props.rb +1 -1
  298. data/lib/talon_one/models/coupon_creation_job.rb +560 -0
  299. data/lib/talon_one/models/coupon_limit_configs.rb +209 -0
  300. data/lib/talon_one/models/coupon_rejection_reason.rb +1 -1
  301. data/lib/talon_one/models/coupon_reservations.rb +1 -1
  302. data/lib/talon_one/models/coupon_search.rb +1 -1
  303. data/lib/talon_one/models/coupon_value.rb +2 -2
  304. data/lib/talon_one/models/create_application_api_key.rb +4 -4
  305. data/lib/talon_one/models/create_template_campaign.rb +302 -0
  306. data/lib/talon_one/models/create_template_campaign_response.rb +236 -0
  307. data/lib/talon_one/models/custom_effect.rb +61 -14
  308. data/lib/talon_one/models/custom_effect_props.rb +26 -11
  309. data/lib/talon_one/models/customer_activity_report.rb +20 -1
  310. data/lib/talon_one/models/customer_analytics.rb +1 -1
  311. data/lib/talon_one/models/customer_inventory.rb +3 -2
  312. data/lib/talon_one/models/customer_profile.rb +49 -15
  313. data/lib/talon_one/models/customer_profile_audience_request.rb +1 -1
  314. data/lib/talon_one/models/customer_profile_audience_request_item.rb +23 -1
  315. data/lib/talon_one/models/customer_profile_integration_request_v2.rb +2 -2
  316. data/lib/talon_one/models/customer_profile_search_query.rb +2 -2
  317. data/lib/talon_one/models/customer_session.rb +44 -10
  318. data/lib/talon_one/models/customer_session_v2.rb +87 -26
  319. data/lib/talon_one/models/deduct_loyalty_points_effect_props.rb +30 -5
  320. data/lib/talon_one/models/effect.rb +1 -1
  321. data/lib/talon_one/models/effect_entity.rb +1 -1
  322. data/lib/talon_one/models/email_entity.rb +1 -1
  323. data/lib/talon_one/models/entity.rb +1 -1
  324. data/lib/talon_one/models/entity_with_talang_visible_id.rb +1 -1
  325. data/lib/talon_one/models/environment.rb +21 -8
  326. data/lib/talon_one/models/error_effect_props.rb +1 -1
  327. data/lib/talon_one/models/error_response.rb +1 -1
  328. data/lib/talon_one/models/error_response_with_status.rb +228 -0
  329. data/lib/talon_one/models/error_source.rb +1 -1
  330. data/lib/talon_one/models/event.rb +3 -3
  331. data/lib/talon_one/models/event_type.rb +5 -148
  332. data/lib/talon_one/models/event_v2.rb +252 -0
  333. data/lib/talon_one/models/export.rb +3 -3
  334. data/lib/talon_one/models/feature_flag.rb +1 -1
  335. data/lib/talon_one/models/features_feed.rb +1 -1
  336. data/lib/talon_one/models/feed_notification.rb +1 -1
  337. data/lib/talon_one/models/func_arg_def.rb +1 -1
  338. data/lib/talon_one/models/function_def.rb +1 -1
  339. data/lib/talon_one/models/giveaway.rb +2 -2
  340. data/lib/talon_one/models/giveaways_pool.rb +1 -1
  341. data/lib/talon_one/models/import.rb +3 -3
  342. data/lib/talon_one/models/import_entity.rb +1 -1
  343. data/lib/talon_one/models/inline_response200.rb +1 -1
  344. data/lib/talon_one/models/inline_response2001.rb +1 -1
  345. data/lib/talon_one/models/inline_response20010.rb +12 -12
  346. data/lib/talon_one/models/inline_response20011.rb +8 -12
  347. data/lib/talon_one/models/inline_response20012.rb +12 -12
  348. data/lib/talon_one/models/inline_response20013.rb +12 -8
  349. data/lib/talon_one/models/inline_response20014.rb +2 -2
  350. data/lib/talon_one/models/inline_response20015.rb +7 -2
  351. data/lib/talon_one/models/inline_response20016.rb +12 -12
  352. data/lib/talon_one/models/inline_response20017.rb +2 -7
  353. data/lib/talon_one/models/inline_response20018.rb +12 -12
  354. data/lib/talon_one/models/inline_response20019.rb +8 -12
  355. data/lib/talon_one/models/inline_response2002.rb +1 -1
  356. data/lib/talon_one/models/inline_response20020.rb +12 -8
  357. data/lib/talon_one/models/inline_response20021.rb +17 -3
  358. data/lib/talon_one/models/inline_response20022.rb +2 -2
  359. data/lib/talon_one/models/inline_response20023.rb +2 -2
  360. data/lib/talon_one/models/inline_response20024.rb +2 -2
  361. data/lib/talon_one/models/inline_response20025.rb +2 -2
  362. data/lib/talon_one/models/inline_response20026.rb +2 -2
  363. data/lib/talon_one/models/inline_response20027.rb +8 -12
  364. data/lib/talon_one/models/inline_response20028.rb +2 -2
  365. data/lib/talon_one/models/inline_response20029.rb +12 -8
  366. data/lib/talon_one/models/inline_response2003.rb +1 -1
  367. data/lib/talon_one/models/inline_response20030.rb +227 -0
  368. data/lib/talon_one/models/inline_response20031.rb +227 -0
  369. data/lib/talon_one/models/inline_response2004.rb +1 -1
  370. data/lib/talon_one/models/inline_response2005.rb +1 -1
  371. data/lib/talon_one/models/inline_response2006.rb +1 -1
  372. data/lib/talon_one/models/inline_response2007.rb +1 -1
  373. data/lib/talon_one/models/inline_response2008.rb +12 -8
  374. data/lib/talon_one/models/inline_response2009.rb +12 -8
  375. data/lib/talon_one/models/inline_response201.rb +1 -1
  376. data/lib/talon_one/models/integration_customer_session_response.rb +206 -0
  377. data/lib/talon_one/models/integration_entity.rb +20 -1
  378. data/lib/talon_one/models/integration_event.rb +2 -2
  379. data/lib/talon_one/models/integration_event_v2_request.rb +286 -0
  380. data/lib/talon_one/models/integration_profile_entity.rb +2 -2
  381. data/lib/talon_one/models/integration_request.rb +2 -2
  382. data/lib/talon_one/models/integration_state.rb +1 -1
  383. data/lib/talon_one/models/integration_state_v2.rb +26 -6
  384. data/lib/talon_one/models/inventory_coupon.rb +36 -7
  385. data/lib/talon_one/models/inventory_referral.rb +446 -0
  386. data/lib/talon_one/models/ledger_entry.rb +2 -2
  387. data/lib/talon_one/models/ledger_info.rb +301 -0
  388. data/lib/talon_one/models/library_attribute.rb +1 -1
  389. data/lib/talon_one/models/limit_config.rb +27 -5
  390. data/lib/talon_one/models/limit_counter.rb +398 -0
  391. data/lib/talon_one/models/login_params.rb +1 -1
  392. data/lib/talon_one/models/loyalty.rb +15 -3
  393. data/lib/talon_one/models/loyalty_card.rb +350 -0
  394. data/lib/talon_one/models/loyalty_card_profile_registration.rb +246 -0
  395. data/lib/talon_one/models/loyalty_card_registration.rb +212 -0
  396. data/lib/talon_one/models/loyalty_dashboard_data.rb +331 -0
  397. data/lib/talon_one/models/loyalty_dashboard_points_breakdown.rb +225 -0
  398. data/lib/talon_one/models/loyalty_ledger.rb +3 -3
  399. data/lib/talon_one/models/loyalty_ledger_entry.rb +11 -7
  400. data/lib/talon_one/models/loyalty_membership.rb +1 -1
  401. data/lib/talon_one/models/loyalty_points.rb +6 -6
  402. data/lib/talon_one/models/loyalty_program.rb +124 -33
  403. data/lib/talon_one/models/loyalty_program_balance.rb +6 -6
  404. data/lib/talon_one/models/loyalty_program_entity.rb +1 -1
  405. data/lib/talon_one/models/loyalty_program_ledgers.rb +4 -4
  406. data/lib/talon_one/models/loyalty_projection.rb +239 -0
  407. data/lib/talon_one/models/loyalty_projection_data.rb +257 -0
  408. data/lib/talon_one/models/loyalty_statistics.rb +82 -9
  409. data/lib/talon_one/models/loyalty_sub_ledger.rb +25 -16
  410. data/lib/talon_one/models/loyalty_tier.rb +6 -6
  411. data/lib/talon_one/models/manager_config.rb +1 -1
  412. data/lib/talon_one/models/meta.rb +1 -1
  413. data/lib/talon_one/models/model_return.rb +384 -0
  414. data/lib/talon_one/models/multi_application_entity.rb +1 -1
  415. data/lib/talon_one/models/{application_customer_search.rb → multiple_attribute.rb} +10 -31
  416. data/lib/talon_one/models/multiple_customer_profile_integration_request.rb +1 -1
  417. data/lib/talon_one/models/multiple_customer_profile_integration_request_item.rb +21 -2
  418. data/lib/talon_one/models/multiple_customer_profile_integration_response_v2.rb +1 -1
  419. data/lib/talon_one/models/multiple_new_attribute.rb +208 -0
  420. data/lib/talon_one/models/mutable_entity.rb +1 -1
  421. data/lib/talon_one/models/new_account.rb +1 -1
  422. data/lib/talon_one/models/new_account_sign_up.rb +1 -1
  423. data/lib/talon_one/models/new_additional_cost.rb +93 -5
  424. data/lib/talon_one/models/new_application.rb +48 -12
  425. data/lib/talon_one/models/new_application_api_key.rb +5 -5
  426. data/lib/talon_one/models/new_attribute.rb +68 -2
  427. data/lib/talon_one/models/new_audience.rb +12 -51
  428. data/lib/talon_one/models/new_campaign.rb +8 -8
  429. data/lib/talon_one/models/new_campaign_collection.rb +253 -0
  430. data/lib/talon_one/models/new_campaign_group.rb +1 -1
  431. data/lib/talon_one/models/new_campaign_set.rb +1 -1
  432. data/lib/talon_one/models/new_campaign_set_v2.rb +261 -0
  433. data/lib/talon_one/models/new_campaign_template.rb +408 -0
  434. data/lib/talon_one/models/{feature_flags.rb → new_catalog.rb} +36 -39
  435. data/lib/talon_one/models/new_collection.rb +265 -0
  436. data/lib/talon_one/models/new_coupon_creation_job.rb +353 -0
  437. data/lib/talon_one/models/new_coupons.rb +33 -6
  438. data/lib/talon_one/models/new_coupons_for_multiple_recipients.rb +4 -4
  439. data/lib/talon_one/models/new_custom_effect.rb +62 -14
  440. data/lib/talon_one/models/new_customer_profile.rb +1 -1
  441. data/lib/talon_one/models/new_customer_session.rb +6 -6
  442. data/lib/talon_one/models/new_customer_session_v2.rb +24 -12
  443. data/lib/talon_one/models/new_event.rb +2 -2
  444. data/lib/talon_one/models/new_event_type.rb +5 -148
  445. data/lib/talon_one/models/new_giveaways_pool.rb +1 -1
  446. data/lib/talon_one/models/new_invitation.rb +2 -2
  447. data/lib/talon_one/models/new_invite_email.rb +1 -1
  448. data/lib/talon_one/models/new_loyalty_program.rb +109 -21
  449. data/lib/talon_one/models/new_loyalty_tier.rb +7 -7
  450. data/lib/talon_one/models/new_notification_webhook.rb +229 -0
  451. data/lib/talon_one/models/new_password.rb +1 -1
  452. data/lib/talon_one/models/new_password_email.rb +1 -1
  453. data/lib/talon_one/models/new_referral.rb +21 -2
  454. data/lib/talon_one/models/new_referrals_for_multiple_advocates.rb +4 -4
  455. data/lib/talon_one/models/new_return.rb +214 -0
  456. data/lib/talon_one/models/new_role.rb +12 -12
  457. data/lib/talon_one/models/new_ruleset.rb +3 -3
  458. data/lib/talon_one/models/new_saml_connection.rb +1 -1
  459. data/lib/talon_one/models/new_template_def.rb +1 -1
  460. data/lib/talon_one/models/new_user.rb +1 -1
  461. data/lib/talon_one/models/new_webhook.rb +22 -1
  462. data/lib/talon_one/models/notification.rb +1 -1
  463. data/lib/talon_one/models/notification_webhook.rb +290 -0
  464. data/lib/talon_one/models/profile_audiences_changes.rb +1 -1
  465. data/lib/talon_one/models/redeem_referral_effect_props.rb +1 -1
  466. data/lib/talon_one/models/referral.rb +22 -3
  467. data/lib/talon_one/models/referral_constraints.rb +2 -2
  468. data/lib/talon_one/models/referral_created_effect_props.rb +1 -1
  469. data/lib/talon_one/models/referral_rejection_reason.rb +1 -1
  470. data/lib/talon_one/models/reject_coupon_effect_props.rb +1 -1
  471. data/lib/talon_one/models/reject_referral_effect_props.rb +1 -1
  472. data/lib/talon_one/models/return_integration_request.rb +246 -0
  473. data/lib/talon_one/models/returned_cart_item.rb +222 -0
  474. data/lib/talon_one/models/role.rb +2 -2
  475. data/lib/talon_one/models/role_assign.rb +1 -1
  476. data/lib/talon_one/models/role_membership.rb +1 -1
  477. data/lib/talon_one/models/rollback_added_loyalty_points_effect_props.rb +54 -5
  478. data/lib/talon_one/models/rollback_coupon_effect_props.rb +1 -1
  479. data/lib/talon_one/models/rollback_deducted_loyalty_points_effect_props.rb +34 -5
  480. data/lib/talon_one/models/rollback_discount_effect_props.rb +57 -7
  481. data/lib/talon_one/models/rollback_referral_effect_props.rb +1 -1
  482. data/lib/talon_one/models/rule.rb +1 -1
  483. data/lib/talon_one/models/rule_failure_reason.rb +2 -2
  484. data/lib/talon_one/models/ruleset.rb +24 -19
  485. data/lib/talon_one/models/saml_connection.rb +1 -1
  486. data/lib/talon_one/models/saml_connection_metadata.rb +1 -1
  487. data/lib/talon_one/models/saml_login_endpoint.rb +1 -1
  488. data/lib/talon_one/models/session.rb +2 -2
  489. data/lib/talon_one/models/set_discount_effect_props.rb +15 -5
  490. data/lib/talon_one/models/set_discount_per_additional_cost_effect_props.rb +268 -0
  491. data/lib/talon_one/models/set_discount_per_additional_cost_per_item_effect_props.rb +293 -0
  492. data/lib/talon_one/models/set_discount_per_item_effect_props.rb +50 -10
  493. data/lib/talon_one/models/show_bundle_metadata_effect_props.rb +1 -1
  494. data/lib/talon_one/models/show_notification_effect_props.rb +1 -1
  495. data/lib/talon_one/models/slot_def.rb +1 -1
  496. data/lib/talon_one/models/template_arg_def.rb +1 -1
  497. data/lib/talon_one/models/template_def.rb +1 -1
  498. data/lib/talon_one/models/template_limit_config.rb +308 -0
  499. data/lib/talon_one/models/tier.rb +227 -0
  500. data/lib/talon_one/models/trigger_webhook_effect_props.rb +1 -1
  501. data/lib/talon_one/models/update_account.rb +1 -1
  502. data/lib/talon_one/models/update_application.rb +51 -15
  503. data/lib/talon_one/models/update_attribute_effect_props.rb +1 -1
  504. data/lib/talon_one/models/update_audience.rb +2 -2
  505. data/lib/talon_one/models/update_campaign.rb +4 -4
  506. data/lib/talon_one/models/update_campaign_collection.rb +207 -0
  507. data/lib/talon_one/models/update_campaign_group.rb +1 -1
  508. data/lib/talon_one/models/update_campaign_template.rb +435 -0
  509. data/lib/talon_one/models/update_catalog.rb +229 -0
  510. data/lib/talon_one/models/update_collection.rb +219 -0
  511. data/lib/talon_one/models/update_coupon.rb +30 -3
  512. data/lib/talon_one/models/update_coupon_batch.rb +2 -7
  513. data/lib/talon_one/models/update_custom_effect.rb +61 -14
  514. data/lib/talon_one/models/update_loyalty_card.rb +212 -0
  515. data/lib/talon_one/models/update_loyalty_program.rb +43 -6
  516. data/lib/talon_one/models/update_referral.rb +16 -1
  517. data/lib/talon_one/models/update_referral_batch.rb +276 -0
  518. data/lib/talon_one/models/update_role.rb +9 -9
  519. data/lib/talon_one/models/update_user.rb +1 -1
  520. data/lib/talon_one/models/update_user_latest_feed_timestamp.rb +1 -1
  521. data/lib/talon_one/models/user.rb +1 -1
  522. data/lib/talon_one/models/user_entity.rb +1 -1
  523. data/lib/talon_one/models/user_feed_notifications.rb +1 -1
  524. data/lib/talon_one/models/webhook.rb +22 -1
  525. data/lib/talon_one/models/webhook_activation_log_entry.rb +1 -1
  526. data/lib/talon_one/models/webhook_log_entry.rb +1 -1
  527. data/lib/talon_one/models/will_award_giveaway_effect_props.rb +20 -1
  528. data/lib/talon_one/version.rb +2 -2
  529. data/lib/talon_one.rb +68 -5
  530. data/spec/api/integration_api_spec.rb +129 -54
  531. data/spec/api/management_api_spec.rb +526 -459
  532. data/spec/api_client_spec.rb +1 -1
  533. data/spec/configuration_spec.rb +1 -1
  534. data/spec/models/accept_coupon_effect_props_spec.rb +1 -1
  535. data/spec/models/accept_referral_effect_props_spec.rb +1 -1
  536. data/spec/models/access_log_entry_spec.rb +1 -1
  537. data/spec/models/account_additional_cost_spec.rb +11 -1
  538. data/spec/models/account_analytics_spec.rb +7 -1
  539. data/spec/models/account_entity_spec.rb +1 -1
  540. data/spec/models/account_limits_spec.rb +1 -1
  541. data/spec/models/account_spec.rb +1 -1
  542. data/spec/models/add_free_item_effect_props_spec.rb +1 -1
  543. data/spec/models/add_loyalty_points_effect_props_spec.rb +25 -1
  544. data/spec/models/additional_cost_spec.rb +1 -1
  545. data/spec/models/api_error_spec.rb +1 -1
  546. data/spec/models/application_api_health_spec.rb +1 -1
  547. data/spec/models/application_api_key_spec.rb +2 -2
  548. data/spec/models/application_campaign_stats_spec.rb +1 -1
  549. data/spec/models/application_customer_entity_spec.rb +1 -1
  550. data/spec/models/application_customer_spec.rb +7 -1
  551. data/spec/models/application_entity_spec.rb +1 -1
  552. data/spec/models/application_event_spec.rb +1 -1
  553. data/spec/models/application_notification_spec.rb +41 -0
  554. data/spec/models/application_referee_spec.rb +1 -1
  555. data/spec/models/application_session_entity_spec.rb +1 -1
  556. data/spec/models/application_session_spec.rb +8 -2
  557. data/spec/models/application_spec.rb +17 -1
  558. data/spec/models/async_coupon_creation_response_spec.rb +41 -0
  559. data/spec/models/attribute_spec.rb +19 -1
  560. data/spec/models/attributes_mandatory_spec.rb +1 -1
  561. data/spec/models/attributes_settings_spec.rb +1 -1
  562. data/spec/models/audience_membership_spec.rb +1 -1
  563. data/spec/models/audience_spec.rb +1 -5
  564. data/spec/models/award_giveaway_effect_props_spec.rb +1 -1
  565. data/spec/models/base_loyalty_program_spec.rb +77 -0
  566. data/spec/models/base_saml_connection_spec.rb +1 -1
  567. data/spec/models/binding_spec.rb +7 -1
  568. data/spec/models/bulk_application_notification_spec.rb +47 -0
  569. data/spec/models/bulk_campaign_notification_spec.rb +47 -0
  570. data/spec/models/campaign_analytics_spec.rb +1 -1
  571. data/spec/models/campaign_collection_spec.rb +101 -0
  572. data/spec/models/campaign_collection_without_payload_spec.rb +95 -0
  573. data/spec/models/campaign_copy_spec.rb +1 -1
  574. data/spec/models/campaign_created_notification_spec.rb +41 -0
  575. data/spec/models/campaign_deleted_notification_spec.rb +41 -0
  576. data/spec/models/campaign_edited_notification_spec.rb +47 -0
  577. data/spec/models/campaign_entity_spec.rb +1 -1
  578. data/spec/models/campaign_group_entity_spec.rb +1 -1
  579. data/spec/models/campaign_group_spec.rb +1 -1
  580. data/spec/models/campaign_notification_spec.rb +41 -0
  581. data/spec/models/campaign_priorities_changed_notification_spec.rb +53 -0
  582. data/spec/models/campaign_priorities_v2_spec.rb +53 -0
  583. data/spec/models/campaign_ruleset_changed_notification_spec.rb +53 -0
  584. data/spec/models/campaign_search_spec.rb +1 -1
  585. data/spec/models/campaign_set_branch_node_spec.rb +1 -1
  586. data/spec/models/campaign_set_i_ds_spec.rb +41 -0
  587. data/spec/models/campaign_set_leaf_node_spec.rb +1 -1
  588. data/spec/models/campaign_set_node_spec.rb +1 -1
  589. data/spec/models/campaign_set_spec.rb +1 -1
  590. data/spec/models/campaign_set_v2_spec.rb +65 -0
  591. data/spec/models/campaign_spec.rb +25 -1
  592. data/spec/models/campaign_state_changed_notification_spec.rb +53 -0
  593. data/spec/models/campaign_template_collection_spec.rb +47 -0
  594. data/spec/models/campaign_template_params_spec.rb +57 -0
  595. data/spec/models/campaign_template_spec.rb +175 -0
  596. data/spec/models/cart_item_spec.rb +19 -1
  597. data/spec/models/catalog_spec.rb +89 -0
  598. data/spec/models/change_profile_password_spec.rb +1 -1
  599. data/spec/models/change_spec.rb +1 -1
  600. data/spec/models/code_generator_settings_spec.rb +1 -1
  601. data/spec/models/collection_spec.rb +107 -0
  602. data/spec/models/collection_without_payload_spec.rb +101 -0
  603. data/spec/models/coupon_constraints_spec.rb +1 -1
  604. data/spec/models/coupon_created_effect_props_spec.rb +1 -1
  605. data/spec/models/coupon_creation_job_spec.rb +161 -0
  606. data/spec/models/coupon_limit_configs_spec.rb +41 -0
  607. data/spec/models/coupon_rejection_reason_spec.rb +1 -1
  608. data/spec/models/coupon_reservations_spec.rb +1 -1
  609. data/spec/models/coupon_search_spec.rb +1 -1
  610. data/spec/models/coupon_spec.rb +7 -1
  611. data/spec/models/coupon_value_spec.rb +1 -1
  612. data/spec/models/create_application_api_key_spec.rb +2 -2
  613. data/spec/models/create_template_campaign_response_spec.rb +53 -0
  614. data/spec/models/create_template_campaign_spec.rb +77 -0
  615. data/spec/models/custom_effect_props_spec.rb +8 -2
  616. data/spec/models/custom_effect_spec.rb +7 -7
  617. data/spec/models/customer_activity_report_spec.rb +1 -1
  618. data/spec/models/customer_analytics_spec.rb +1 -1
  619. data/spec/models/customer_inventory_spec.rb +1 -1
  620. data/spec/models/customer_profile_audience_request_item_spec.rb +1 -1
  621. data/spec/models/customer_profile_audience_request_spec.rb +1 -1
  622. data/spec/models/customer_profile_integration_request_v2_spec.rb +1 -1
  623. data/spec/models/customer_profile_search_query_spec.rb +1 -1
  624. data/spec/models/customer_profile_spec.rb +8 -2
  625. data/spec/models/customer_session_spec.rb +8 -2
  626. data/spec/models/customer_session_v2_spec.rb +21 -3
  627. data/spec/models/deduct_loyalty_points_effect_props_spec.rb +13 -1
  628. data/spec/models/effect_entity_spec.rb +1 -1
  629. data/spec/models/effect_spec.rb +1 -1
  630. data/spec/models/email_entity_spec.rb +1 -1
  631. data/spec/models/entity_spec.rb +1 -1
  632. data/spec/models/entity_with_talang_visible_id_spec.rb +1 -1
  633. data/spec/models/environment_spec.rb +8 -2
  634. data/spec/models/error_effect_props_spec.rb +1 -1
  635. data/spec/models/error_response_spec.rb +1 -1
  636. data/spec/models/error_response_with_status_spec.rb +53 -0
  637. data/spec/models/error_source_spec.rb +1 -1
  638. data/spec/models/event_spec.rb +1 -1
  639. data/spec/models/event_type_spec.rb +1 -51
  640. data/spec/models/event_v2_spec.rb +53 -0
  641. data/spec/models/export_spec.rb +2 -2
  642. data/spec/models/feature_flag_spec.rb +1 -1
  643. data/spec/models/features_feed_spec.rb +1 -1
  644. data/spec/models/feed_notification_spec.rb +1 -1
  645. data/spec/models/func_arg_def_spec.rb +1 -1
  646. data/spec/models/function_def_spec.rb +1 -1
  647. data/spec/models/giveaway_spec.rb +1 -1
  648. data/spec/models/giveaways_pool_spec.rb +1 -1
  649. data/spec/models/import_entity_spec.rb +1 -1
  650. data/spec/models/import_spec.rb +1 -1
  651. data/spec/models/inline_response20010_spec.rb +2 -2
  652. data/spec/models/inline_response20011_spec.rb +1 -7
  653. data/spec/models/inline_response20012_spec.rb +2 -2
  654. data/spec/models/inline_response20013_spec.rb +7 -1
  655. data/spec/models/inline_response20014_spec.rb +1 -1
  656. data/spec/models/inline_response20015_spec.rb +1 -1
  657. data/spec/models/inline_response20016_spec.rb +2 -2
  658. data/spec/models/inline_response20017_spec.rb +1 -1
  659. data/spec/models/inline_response20018_spec.rb +2 -2
  660. data/spec/models/inline_response20019_spec.rb +1 -7
  661. data/spec/models/inline_response2001_spec.rb +1 -1
  662. data/spec/models/inline_response20020_spec.rb +7 -1
  663. data/spec/models/inline_response20021_spec.rb +7 -1
  664. data/spec/models/inline_response20022_spec.rb +1 -1
  665. data/spec/models/inline_response20023_spec.rb +1 -1
  666. data/spec/models/inline_response20024_spec.rb +1 -1
  667. data/spec/models/inline_response20025_spec.rb +1 -1
  668. data/spec/models/inline_response20026_spec.rb +1 -1
  669. data/spec/models/inline_response20027_spec.rb +1 -7
  670. data/spec/models/inline_response20028_spec.rb +1 -1
  671. data/spec/models/inline_response20029_spec.rb +7 -1
  672. data/spec/models/inline_response2002_spec.rb +1 -1
  673. data/spec/models/inline_response20030_spec.rb +47 -0
  674. data/spec/models/inline_response20031_spec.rb +47 -0
  675. data/spec/models/inline_response2003_spec.rb +1 -1
  676. data/spec/models/inline_response2004_spec.rb +1 -1
  677. data/spec/models/inline_response2005_spec.rb +1 -1
  678. data/spec/models/inline_response2006_spec.rb +1 -1
  679. data/spec/models/inline_response2007_spec.rb +1 -1
  680. data/spec/models/inline_response2008_spec.rb +7 -1
  681. data/spec/models/inline_response2009_spec.rb +7 -1
  682. data/spec/models/inline_response200_spec.rb +1 -1
  683. data/spec/models/inline_response201_spec.rb +1 -1
  684. data/spec/models/integration_customer_session_response_spec.rb +41 -0
  685. data/spec/models/integration_entity_spec.rb +1 -1
  686. data/spec/models/integration_event_spec.rb +1 -1
  687. data/spec/models/integration_event_v2_request_spec.rb +63 -0
  688. data/spec/models/integration_profile_entity_spec.rb +1 -1
  689. data/spec/models/integration_request_spec.rb +2 -2
  690. data/spec/models/integration_state_spec.rb +1 -1
  691. data/spec/models/integration_state_v2_spec.rb +13 -1
  692. data/spec/models/inventory_coupon_spec.rb +7 -1
  693. data/spec/models/inventory_referral_spec.rb +119 -0
  694. data/spec/models/ledger_entry_spec.rb +1 -1
  695. data/spec/models/ledger_info_spec.rb +83 -0
  696. data/spec/models/library_attribute_spec.rb +1 -1
  697. data/spec/models/limit_config_spec.rb +11 -1
  698. data/spec/models/limit_counter_spec.rb +125 -0
  699. data/spec/models/login_params_spec.rb +1 -1
  700. data/spec/models/loyalty_card_profile_registration_spec.rb +47 -0
  701. data/spec/models/loyalty_card_registration_spec.rb +41 -0
  702. data/spec/models/loyalty_card_spec.rb +95 -0
  703. data/spec/models/loyalty_dashboard_data_spec.rb +89 -0
  704. data/spec/models/loyalty_dashboard_points_breakdown_spec.rb +47 -0
  705. data/spec/models/loyalty_ledger_entry_spec.rb +7 -1
  706. data/spec/models/loyalty_ledger_spec.rb +1 -1
  707. data/spec/models/loyalty_membership_spec.rb +1 -1
  708. data/spec/models/loyalty_points_spec.rb +1 -1
  709. data/spec/models/loyalty_program_balance_spec.rb +1 -1
  710. data/spec/models/loyalty_program_entity_spec.rb +1 -1
  711. data/spec/models/loyalty_program_ledgers_spec.rb +1 -1
  712. data/spec/models/loyalty_program_spec.rb +32 -8
  713. data/spec/models/loyalty_projection_data_spec.rb +59 -0
  714. data/spec/models/loyalty_projection_spec.rb +53 -0
  715. data/spec/models/loyalty_spec.rb +7 -1
  716. data/spec/models/loyalty_statistics_spec.rb +31 -1
  717. data/spec/models/loyalty_sub_ledger_spec.rb +7 -1
  718. data/spec/models/loyalty_tier_spec.rb +1 -1
  719. data/spec/models/manager_config_spec.rb +1 -1
  720. data/spec/models/meta_spec.rb +1 -1
  721. data/spec/models/model_return_spec.rb +101 -0
  722. data/spec/models/multi_application_entity_spec.rb +1 -1
  723. data/spec/models/multiple_attribute_spec.rb +41 -0
  724. data/spec/models/multiple_customer_profile_integration_request_item_spec.rb +1 -1
  725. data/spec/models/multiple_customer_profile_integration_request_spec.rb +1 -1
  726. data/spec/models/multiple_customer_profile_integration_response_v2_spec.rb +1 -1
  727. data/spec/models/multiple_new_attribute_spec.rb +41 -0
  728. data/spec/models/mutable_entity_spec.rb +1 -1
  729. data/spec/models/new_account_sign_up_spec.rb +1 -1
  730. data/spec/models/new_account_spec.rb +1 -1
  731. data/spec/models/new_additional_cost_spec.rb +11 -1
  732. data/spec/models/new_application_api_key_spec.rb +2 -2
  733. data/spec/models/new_application_spec.rb +17 -1
  734. data/spec/models/new_attribute_spec.rb +13 -1
  735. data/spec/models/new_audience_spec.rb +1 -5
  736. data/spec/models/new_campaign_collection_spec.rb +47 -0
  737. data/spec/models/new_campaign_group_spec.rb +1 -1
  738. data/spec/models/new_campaign_set_spec.rb +1 -1
  739. data/spec/models/new_campaign_set_v2_spec.rb +53 -0
  740. data/spec/models/new_campaign_spec.rb +1 -1
  741. data/spec/models/new_campaign_template_spec.rb +121 -0
  742. data/spec/models/new_catalog_spec.rb +53 -0
  743. data/spec/models/new_collection_spec.rb +53 -0
  744. data/spec/models/new_coupon_creation_job_spec.rb +77 -0
  745. data/spec/models/new_coupons_for_multiple_recipients_spec.rb +1 -1
  746. data/spec/models/new_coupons_spec.rb +7 -1
  747. data/spec/models/new_custom_effect_spec.rb +7 -7
  748. data/spec/models/new_customer_profile_spec.rb +1 -1
  749. data/spec/models/new_customer_session_spec.rb +2 -2
  750. data/spec/models/new_customer_session_v2_spec.rb +8 -2
  751. data/spec/models/new_event_spec.rb +1 -1
  752. data/spec/models/new_event_type_spec.rb +1 -51
  753. data/spec/models/new_giveaways_pool_spec.rb +1 -1
  754. data/spec/models/new_invitation_spec.rb +1 -1
  755. data/spec/models/new_invite_email_spec.rb +1 -1
  756. data/spec/models/new_loyalty_program_spec.rb +31 -7
  757. data/spec/models/new_loyalty_tier_spec.rb +1 -1
  758. data/spec/models/new_notification_webhook_spec.rb +47 -0
  759. data/spec/models/new_password_email_spec.rb +1 -1
  760. data/spec/models/new_password_spec.rb +1 -1
  761. data/spec/models/new_referral_spec.rb +1 -1
  762. data/spec/models/new_referrals_for_multiple_advocates_spec.rb +1 -1
  763. data/spec/models/new_return_spec.rb +41 -0
  764. data/spec/models/new_role_spec.rb +2 -2
  765. data/spec/models/new_ruleset_spec.rb +1 -1
  766. data/spec/models/new_saml_connection_spec.rb +1 -1
  767. data/spec/models/new_template_def_spec.rb +1 -1
  768. data/spec/models/new_user_spec.rb +1 -1
  769. data/spec/models/new_webhook_spec.rb +1 -1
  770. data/spec/models/notification_spec.rb +1 -1
  771. data/spec/models/notification_webhook_spec.rb +71 -0
  772. data/spec/models/profile_audiences_changes_spec.rb +1 -1
  773. data/spec/models/redeem_referral_effect_props_spec.rb +1 -1
  774. data/spec/models/referral_constraints_spec.rb +1 -1
  775. data/spec/models/referral_created_effect_props_spec.rb +1 -1
  776. data/spec/models/referral_rejection_reason_spec.rb +1 -1
  777. data/spec/models/referral_spec.rb +1 -1
  778. data/spec/models/reject_coupon_effect_props_spec.rb +1 -1
  779. data/spec/models/reject_referral_effect_props_spec.rb +1 -1
  780. data/spec/models/return_integration_request_spec.rb +51 -0
  781. data/spec/models/returned_cart_item_spec.rb +47 -0
  782. data/spec/models/role_assign_spec.rb +1 -1
  783. data/spec/models/role_membership_spec.rb +1 -1
  784. data/spec/models/role_spec.rb +1 -1
  785. data/spec/models/rollback_added_loyalty_points_effect_props_spec.rb +19 -1
  786. data/spec/models/rollback_coupon_effect_props_spec.rb +1 -1
  787. data/spec/models/rollback_deducted_loyalty_points_effect_props_spec.rb +7 -1
  788. data/spec/models/rollback_discount_effect_props_spec.rb +31 -1
  789. data/spec/models/rollback_referral_effect_props_spec.rb +1 -1
  790. data/spec/models/rule_failure_reason_spec.rb +1 -1
  791. data/spec/models/rule_spec.rb +1 -1
  792. data/spec/models/ruleset_spec.rb +13 -7
  793. data/spec/models/saml_connection_metadata_spec.rb +1 -1
  794. data/spec/models/saml_connection_spec.rb +1 -1
  795. data/spec/models/saml_login_endpoint_spec.rb +1 -1
  796. data/spec/models/session_spec.rb +1 -1
  797. data/spec/models/set_discount_effect_props_spec.rb +7 -1
  798. data/spec/models/set_discount_per_additional_cost_effect_props_spec.rb +65 -0
  799. data/spec/models/set_discount_per_additional_cost_per_item_effect_props_spec.rb +77 -0
  800. data/spec/models/set_discount_per_item_effect_props_spec.rb +25 -1
  801. data/spec/models/show_bundle_metadata_effect_props_spec.rb +1 -1
  802. data/spec/models/show_notification_effect_props_spec.rb +1 -1
  803. data/spec/models/slot_def_spec.rb +1 -1
  804. data/spec/models/template_arg_def_spec.rb +1 -1
  805. data/spec/models/template_def_spec.rb +1 -1
  806. data/spec/models/template_limit_config_spec.rb +67 -0
  807. data/spec/models/tier_spec.rb +47 -0
  808. data/spec/models/trigger_webhook_effect_props_spec.rb +1 -1
  809. data/spec/models/update_account_spec.rb +1 -1
  810. data/spec/models/update_application_spec.rb +17 -1
  811. data/spec/models/update_attribute_effect_props_spec.rb +1 -1
  812. data/spec/models/update_audience_spec.rb +1 -1
  813. data/spec/models/update_campaign_collection_spec.rb +41 -0
  814. data/spec/models/update_campaign_group_spec.rb +1 -1
  815. data/spec/models/update_campaign_spec.rb +1 -1
  816. data/spec/models/update_campaign_template_spec.rb +133 -0
  817. data/spec/models/update_catalog_spec.rb +53 -0
  818. data/spec/models/update_collection_spec.rb +47 -0
  819. data/spec/models/update_coupon_batch_spec.rb +1 -1
  820. data/spec/models/update_coupon_spec.rb +7 -1
  821. data/spec/models/update_custom_effect_spec.rb +7 -7
  822. data/spec/models/update_loyalty_card_spec.rb +41 -0
  823. data/spec/models/update_loyalty_program_spec.rb +13 -1
  824. data/spec/models/update_referral_batch_spec.rb +65 -0
  825. data/spec/models/update_referral_spec.rb +1 -1
  826. data/spec/models/update_role_spec.rb +2 -2
  827. data/spec/models/update_user_latest_feed_timestamp_spec.rb +1 -1
  828. data/spec/models/update_user_spec.rb +1 -1
  829. data/spec/models/user_entity_spec.rb +1 -1
  830. data/spec/models/user_feed_notifications_spec.rb +1 -1
  831. data/spec/models/user_spec.rb +1 -1
  832. data/spec/models/webhook_activation_log_entry_spec.rb +1 -1
  833. data/spec/models/webhook_log_entry_spec.rb +1 -1
  834. data/spec/models/webhook_spec.rb +1 -1
  835. data/spec/models/will_award_giveaway_effect_props_spec.rb +1 -1
  836. data/spec/spec_helper.rb +1 -1
  837. data/talon_one.gemspec +1 -1
  838. metadata +493 -240
  839. data/docs/ApplicationCustomerSearch.md +0 -21
  840. data/docs/FeatureFlags.md +0 -23
  841. data/docs/NewFeatureFlags.md +0 -21
  842. data/docs/UpdateLoyaltyTier.md +0 -19
  843. data/spec/models/application_customer_search_spec.rb +0 -53
  844. data/spec/models/feature_flags_spec.rb +0 -59
  845. data/spec/models/new_feature_flags_spec.rb +0 -53
  846. data/spec/models/update_loyalty_tier_spec.rb +0 -47
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #Talon.One API
3
3
 
4
- #The Talon.One API is used to manage applications and campaigns, as well as to integrate with your application. The operations in the _Integration API_ section are used to integrate with our platform, while the other operations are used to manage applications and campaigns. ### Where is the API? The API is available at the same hostname as these docs. For example, if you are reading this page at `https://mycompany.talon.one/docs/api/`, the URL for the [updateCustomerProfile][] operation is `https://mycompany.talon.one/v1/customer_profiles/id` [updateCustomerProfile]: #operation--v1-customer_profiles--integrationId--put
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}`
5
5
 
6
6
  The version of the OpenAPI document: 1.0.0
7
7
 
@@ -36,38 +36,44 @@ module TalonOne
36
36
  # A string containing an IANA timezone descriptor.
37
37
  attr_accessor :timezone
38
38
 
39
- # A string describing a default currency for new customer sessions.
39
+ # The default currency for new customer sessions.
40
40
  attr_accessor :currency
41
41
 
42
- # A string indicating how should campaigns in this application deal with case sensitivity on coupon codes.
42
+ # The case sensitivity behavior to check coupon codes in the campaigns of this Application.
43
43
  attr_accessor :case_sensitivity
44
44
 
45
- # Arbitrary properties associated with this campaign
45
+ # Arbitrary properties associated with this campaign.
46
46
  attr_accessor :attributes
47
47
 
48
- # Default limits for campaigns created in this application
48
+ # Default limits for campaigns created in this application.
49
49
  attr_accessor :limits
50
50
 
51
- # Default priority for campaigns created in this application, can be one of (universal, stackable, exclusive). If no value is provided, this is set to \"universal\"
51
+ # Default [priority](https://docs.talon.one/docs/product/applications/setting-up-campaign-priorities) for campaigns created in this Application.
52
52
  attr_accessor :campaign_priority
53
53
 
54
- # The strategy used when choosing exclusive campaigns for evaluation, can be one of (listOrder, lowestDiscount, highestDiscount). If no value is provided, this is set to \"listOrder\"
54
+ # The strategy used when choosing exclusive campaigns for evaluation.
55
55
  attr_accessor :exclusive_campaigns_strategy
56
56
 
57
- # The default scope to apply \"setDiscount\" effects on if no scope was provided with the effect.
57
+ # The default scope to apply `setDiscount` effects on if no scope was provided with the effect.
58
58
  attr_accessor :default_discount_scope
59
59
 
60
- # Flag indicating if discounts should cascade for this application
60
+ # Indicates if discounts should cascade for this Application.
61
61
  attr_accessor :enable_cascading_discounts
62
62
 
63
- # Flag indicating if cart items of quantity larger than one should be separated into different items of quantity one
63
+ # Indicates if cart items of quantity larger than one should be separated into different items of quantity one. See [the docs](https://docs.talon.one/docs/product/campaigns/campaign-evaluation/#flattened-cart-items).
64
64
  attr_accessor :enable_flattened_cart_items
65
65
 
66
66
  attr_accessor :attributes_settings
67
67
 
68
- # Flag indicating if this is a live or sandbox application
68
+ # Indicates if this is a live or sandbox Application.
69
69
  attr_accessor :sandbox
70
70
 
71
+ # Indicates if this Application supports partial discounts.
72
+ attr_accessor :enable_partial_discounts
73
+
74
+ # The default scope to apply `setDiscountPerItem` effects on if no scope was provided with the effect.
75
+ attr_accessor :default_discount_additional_cost_per_item_scope
76
+
71
77
  # An array containing all the loyalty programs to which this application is subscribed
72
78
  attr_accessor :loyalty_programs
73
79
 
@@ -114,6 +120,8 @@ module TalonOne
114
120
  :'enable_flattened_cart_items' => :'enableFlattenedCartItems',
115
121
  :'attributes_settings' => :'attributesSettings',
116
122
  :'sandbox' => :'sandbox',
123
+ :'enable_partial_discounts' => :'enablePartialDiscounts',
124
+ :'default_discount_additional_cost_per_item_scope' => :'defaultDiscountAdditionalCostPerItemScope',
117
125
  :'loyalty_programs' => :'loyaltyPrograms'
118
126
  }
119
127
  end
@@ -139,6 +147,8 @@ module TalonOne
139
147
  :'enable_flattened_cart_items' => :'Boolean',
140
148
  :'attributes_settings' => :'AttributesSettings',
141
149
  :'sandbox' => :'Boolean',
150
+ :'enable_partial_discounts' => :'Boolean',
151
+ :'default_discount_additional_cost_per_item_scope' => :'String',
142
152
  :'loyalty_programs' => :'Array<LoyaltyProgram>'
143
153
  }
144
154
  end
@@ -212,10 +222,14 @@ module TalonOne
212
222
 
213
223
  if attributes.key?(:'campaign_priority')
214
224
  self.campaign_priority = attributes[:'campaign_priority']
225
+ else
226
+ self.campaign_priority = 'universal'
215
227
  end
216
228
 
217
229
  if attributes.key?(:'exclusive_campaigns_strategy')
218
230
  self.exclusive_campaigns_strategy = attributes[:'exclusive_campaigns_strategy']
231
+ else
232
+ self.exclusive_campaigns_strategy = 'listOrder'
219
233
  end
220
234
 
221
235
  if attributes.key?(:'default_discount_scope')
@@ -238,6 +252,14 @@ module TalonOne
238
252
  self.sandbox = attributes[:'sandbox']
239
253
  end
240
254
 
255
+ if attributes.key?(:'enable_partial_discounts')
256
+ self.enable_partial_discounts = attributes[:'enable_partial_discounts']
257
+ end
258
+
259
+ if attributes.key?(:'default_discount_additional_cost_per_item_scope')
260
+ self.default_discount_additional_cost_per_item_scope = attributes[:'default_discount_additional_cost_per_item_scope']
261
+ end
262
+
241
263
  if attributes.key?(:'loyalty_programs')
242
264
  if (value = attributes[:'loyalty_programs']).is_a?(Array)
243
265
  self.loyalty_programs = value
@@ -317,6 +339,8 @@ module TalonOne
317
339
  return false unless exclusive_campaigns_strategy_validator.valid?(@exclusive_campaigns_strategy)
318
340
  default_discount_scope_validator = EnumAttributeValidator.new('String', ["sessionTotal", "cartItems", "additionalCosts"])
319
341
  return false unless default_discount_scope_validator.valid?(@default_discount_scope)
342
+ default_discount_additional_cost_per_item_scope_validator = EnumAttributeValidator.new('String', ["price", "itemTotal", "additionalCosts"])
343
+ return false unless default_discount_additional_cost_per_item_scope_validator.valid?(@default_discount_additional_cost_per_item_scope)
320
344
  return false if @loyalty_programs.nil?
321
345
  true
322
346
  end
@@ -403,6 +427,16 @@ module TalonOne
403
427
  @default_discount_scope = default_discount_scope
404
428
  end
405
429
 
430
+ # Custom attribute writer method checking allowed values (enum).
431
+ # @param [Object] default_discount_additional_cost_per_item_scope Object to be assigned
432
+ def default_discount_additional_cost_per_item_scope=(default_discount_additional_cost_per_item_scope)
433
+ validator = EnumAttributeValidator.new('String', ["price", "itemTotal", "additionalCosts"])
434
+ unless validator.valid?(default_discount_additional_cost_per_item_scope)
435
+ fail ArgumentError, "invalid value for \"default_discount_additional_cost_per_item_scope\", must be one of #{validator.allowable_values}."
436
+ end
437
+ @default_discount_additional_cost_per_item_scope = default_discount_additional_cost_per_item_scope
438
+ end
439
+
406
440
  # Checks equality by comparing each attribute.
407
441
  # @param [Object] Object to be compared
408
442
  def ==(o)
@@ -426,6 +460,8 @@ module TalonOne
426
460
  enable_flattened_cart_items == o.enable_flattened_cart_items &&
427
461
  attributes_settings == o.attributes_settings &&
428
462
  sandbox == o.sandbox &&
463
+ enable_partial_discounts == o.enable_partial_discounts &&
464
+ default_discount_additional_cost_per_item_scope == o.default_discount_additional_cost_per_item_scope &&
429
465
  loyalty_programs == o.loyalty_programs
430
466
  end
431
467
 
@@ -438,7 +474,7 @@ module TalonOne
438
474
  # Calculates hash code according to all attributes.
439
475
  # @return [Integer] Hash code
440
476
  def hash
441
- [id, created, modified, account_id, name, description, timezone, currency, case_sensitivity, attributes, limits, campaign_priority, exclusive_campaigns_strategy, default_discount_scope, enable_cascading_discounts, enable_flattened_cart_items, attributes_settings, sandbox, loyalty_programs].hash
477
+ [id, created, modified, account_id, name, description, timezone, currency, case_sensitivity, attributes, limits, campaign_priority, exclusive_campaigns_strategy, default_discount_scope, enable_cascading_discounts, enable_flattened_cart_items, attributes_settings, sandbox, enable_partial_discounts, default_discount_additional_cost_per_item_scope, loyalty_programs].hash
442
478
  end
443
479
 
444
480
  # Builds the object from hash
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #Talon.One API
3
3
 
4
- #The Talon.One API is used to manage applications and campaigns, as well as to integrate with your application. The operations in the _Integration API_ section are used to integrate with our platform, while the other operations are used to manage applications and campaigns. ### Where is the API? The API is available at the same hostname as these docs. For example, if you are reading this page at `https://mycompany.talon.one/docs/api/`, the URL for the [updateCustomerProfile][] operation is `https://mycompany.talon.one/v1/customer_profiles/id` [updateCustomerProfile]: #operation--v1-customer_profiles--integrationId--put
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}`
5
5
 
6
6
  The version of the OpenAPI document: 1.0.0
7
7
 
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #Talon.One API
3
3
 
4
- #The Talon.One API is used to manage applications and campaigns, as well as to integrate with your application. The operations in the _Integration API_ section are used to integrate with our platform, while the other operations are used to manage applications and campaigns. ### Where is the API? The API is available at the same hostname as these docs. For example, if you are reading this page at `https://mycompany.talon.one/docs/api/`, the URL for the [updateCustomerProfile][] operation is `https://mycompany.talon.one/v1/customer_profiles/id` [updateCustomerProfile]: #operation--v1-customer_profiles--integrationId--put
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}`
5
5
 
6
6
  The version of the OpenAPI document: 1.0.0
7
7
 
@@ -21,7 +21,7 @@ module TalonOne
21
21
  # The date the API key expired
22
22
  attr_accessor :expires
23
23
 
24
- # Platform the API key is valid for.
24
+ # The third-party platform the API key is valid for. Use `none` for a generic API key to be used from your own integration layer.
25
25
  attr_accessor :platform
26
26
 
27
27
  # ID of the API Key
@@ -183,7 +183,7 @@ module TalonOne
183
183
  def valid?
184
184
  return false if @title.nil?
185
185
  return false if @expires.nil?
186
- platform_validator = EnumAttributeValidator.new('String', ["none", "segment", "braze", "mparticle", "selligent"])
186
+ platform_validator = EnumAttributeValidator.new('String', ["none", "segment", "braze", "mparticle", "selligent", "iterable", "customer_engagement", "customer_data"])
187
187
  return false unless platform_validator.valid?(@platform)
188
188
  return false if @id.nil?
189
189
  return false if @created_by.nil?
@@ -196,7 +196,7 @@ module TalonOne
196
196
  # Custom attribute writer method checking allowed values (enum).
197
197
  # @param [Object] platform Object to be assigned
198
198
  def platform=(platform)
199
- validator = EnumAttributeValidator.new('String', ["none", "segment", "braze", "mparticle", "selligent"])
199
+ validator = EnumAttributeValidator.new('String', ["none", "segment", "braze", "mparticle", "selligent", "iterable", "customer_engagement", "customer_data"])
200
200
  unless validator.valid?(platform)
201
201
  fail ArgumentError, "invalid value for \"platform\", must be one of #{validator.allowable_values}."
202
202
  end
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #Talon.One API
3
3
 
4
- #The Talon.One API is used to manage applications and campaigns, as well as to integrate with your application. The operations in the _Integration API_ section are used to integrate with our platform, while the other operations are used to manage applications and campaigns. ### Where is the API? The API is available at the same hostname as these docs. For example, if you are reading this page at `https://mycompany.talon.one/docs/api/`, the URL for the [updateCustomerProfile][] operation is `https://mycompany.talon.one/v1/customer_profiles/id` [updateCustomerProfile]: #operation--v1-customer_profiles--integrationId--put
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}`
5
5
 
6
6
  The version of the OpenAPI document: 1.0.0
7
7
 
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #Talon.One API
3
3
 
4
- #The Talon.One API is used to manage applications and campaigns, as well as to integrate with your application. The operations in the _Integration API_ section are used to integrate with our platform, while the other operations are used to manage applications and campaigns. ### Where is the API? The API is available at the same hostname as these docs. For example, if you are reading this page at `https://mycompany.talon.one/docs/api/`, the URL for the [updateCustomerProfile][] operation is `https://mycompany.talon.one/v1/customer_profiles/id` [updateCustomerProfile]: #operation--v1-customer_profiles--integrationId--put
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}`
5
5
 
6
6
  The version of the OpenAPI document: 1.0.0
7
7
 
@@ -15,10 +15,10 @@ require 'date'
15
15
  module TalonOne
16
16
  #
17
17
  class ApplicationCustomer
18
- # Unique ID for this entity.
18
+ # Unique ID for this entity. Unique ID for this entity.
19
19
  attr_accessor :id
20
20
 
21
- # The exact moment this entity was created. The exact moment this entity was created. The exact moment this entity was created.
21
+ # The exact moment this entity was created. The exact moment this entity was created. The exact moment this entity was created. The exact moment this entity was created.
22
22
  attr_accessor :created
23
23
 
24
24
  # The integration ID for this entity sent to and used in the Talon.One system. The integration ID for this entity sent to and used in the Talon.One system.
@@ -36,15 +36,18 @@ module TalonOne
36
36
  # Sum of all purchases made by this customer
37
37
  attr_accessor :total_sales
38
38
 
39
- # A list of loyalty programs joined by the customer
39
+ # **DEPRECATED** A list of loyalty programs joined by the customer.
40
40
  attr_accessor :loyalty_memberships
41
41
 
42
42
  # A list of audiences the customer belongs to
43
43
  attr_accessor :audience_memberships
44
44
 
45
- # Timestamp of the most recent event received from this customer
45
+ # Timestamp of the most recent event received from this customer. This field is updated on calls that trigger the rule-engine and that are not [dry requests](https://docs.talon.one/docs/dev/integration-api/dry-requests/#overlay). For example, [reserving a coupon](https://docs.talon.one/integration-api/#operation/createCouponReservation) for a customer doesn't impact this field.
46
46
  attr_accessor :last_activity
47
47
 
48
+ # The Integration ID of the Customer Profile that referred this Customer in the Application.
49
+ attr_accessor :advocate_integration_id
50
+
48
51
  # Attribute mapping from ruby-style variable name to JSON key.
49
52
  def self.attribute_map
50
53
  {
@@ -57,7 +60,8 @@ module TalonOne
57
60
  :'total_sales' => :'totalSales',
58
61
  :'loyalty_memberships' => :'loyaltyMemberships',
59
62
  :'audience_memberships' => :'audienceMemberships',
60
- :'last_activity' => :'lastActivity'
63
+ :'last_activity' => :'lastActivity',
64
+ :'advocate_integration_id' => :'advocateIntegrationId'
61
65
  }
62
66
  end
63
67
 
@@ -73,7 +77,8 @@ module TalonOne
73
77
  :'total_sales' => :'Float',
74
78
  :'loyalty_memberships' => :'Array<LoyaltyMembership>',
75
79
  :'audience_memberships' => :'Array<AudienceMembership>',
76
- :'last_activity' => :'DateTime'
80
+ :'last_activity' => :'DateTime',
81
+ :'advocate_integration_id' => :'String'
77
82
  }
78
83
  end
79
84
 
@@ -141,6 +146,10 @@ module TalonOne
141
146
  if attributes.key?(:'last_activity')
142
147
  self.last_activity = attributes[:'last_activity']
143
148
  end
149
+
150
+ if attributes.key?(:'advocate_integration_id')
151
+ self.advocate_integration_id = attributes[:'advocate_integration_id']
152
+ end
144
153
  end
145
154
 
146
155
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -159,6 +168,10 @@ module TalonOne
159
168
  invalid_properties.push('invalid value for "integration_id", integration_id cannot be nil.')
160
169
  end
161
170
 
171
+ if @integration_id.to_s.length > 1000
172
+ invalid_properties.push('invalid value for "integration_id", the character length must be smaller than or equal to 1000.')
173
+ end
174
+
162
175
  if @attributes.nil?
163
176
  invalid_properties.push('invalid value for "attributes", attributes cannot be nil.')
164
177
  end
@@ -179,6 +192,10 @@ module TalonOne
179
192
  invalid_properties.push('invalid value for "last_activity", last_activity cannot be nil.')
180
193
  end
181
194
 
195
+ if !@advocate_integration_id.nil? && @advocate_integration_id.to_s.length > 1000
196
+ invalid_properties.push('invalid value for "advocate_integration_id", the character length must be smaller than or equal to 1000.')
197
+ end
198
+
182
199
  invalid_properties
183
200
  end
184
201
 
@@ -188,14 +205,40 @@ module TalonOne
188
205
  return false if @id.nil?
189
206
  return false if @created.nil?
190
207
  return false if @integration_id.nil?
208
+ return false if @integration_id.to_s.length > 1000
191
209
  return false if @attributes.nil?
192
210
  return false if @account_id.nil?
193
211
  return false if @closed_sessions.nil?
194
212
  return false if @total_sales.nil?
195
213
  return false if @last_activity.nil?
214
+ return false if !@advocate_integration_id.nil? && @advocate_integration_id.to_s.length > 1000
196
215
  true
197
216
  end
198
217
 
218
+ # Custom attribute writer method with validation
219
+ # @param [Object] integration_id Value to be assigned
220
+ def integration_id=(integration_id)
221
+ if integration_id.nil?
222
+ fail ArgumentError, 'integration_id cannot be nil'
223
+ end
224
+
225
+ if integration_id.to_s.length > 1000
226
+ fail ArgumentError, 'invalid value for "integration_id", the character length must be smaller than or equal to 1000.'
227
+ end
228
+
229
+ @integration_id = integration_id
230
+ end
231
+
232
+ # Custom attribute writer method with validation
233
+ # @param [Object] advocate_integration_id Value to be assigned
234
+ def advocate_integration_id=(advocate_integration_id)
235
+ if !advocate_integration_id.nil? && advocate_integration_id.to_s.length > 1000
236
+ fail ArgumentError, 'invalid value for "advocate_integration_id", the character length must be smaller than or equal to 1000.'
237
+ end
238
+
239
+ @advocate_integration_id = advocate_integration_id
240
+ end
241
+
199
242
  # Checks equality by comparing each attribute.
200
243
  # @param [Object] Object to be compared
201
244
  def ==(o)
@@ -210,7 +253,8 @@ module TalonOne
210
253
  total_sales == o.total_sales &&
211
254
  loyalty_memberships == o.loyalty_memberships &&
212
255
  audience_memberships == o.audience_memberships &&
213
- last_activity == o.last_activity
256
+ last_activity == o.last_activity &&
257
+ advocate_integration_id == o.advocate_integration_id
214
258
  end
215
259
 
216
260
  # @see the `==` method
@@ -222,7 +266,7 @@ module TalonOne
222
266
  # Calculates hash code according to all attributes.
223
267
  # @return [Integer] Hash code
224
268
  def hash
225
- [id, created, integration_id, attributes, account_id, closed_sessions, total_sales, loyalty_memberships, audience_memberships, last_activity].hash
269
+ [id, created, integration_id, attributes, account_id, closed_sessions, total_sales, loyalty_memberships, audience_memberships, last_activity, advocate_integration_id].hash
226
270
  end
227
271
 
228
272
  # Builds the object from hash
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #Talon.One API
3
3
 
4
- #The Talon.One API is used to manage applications and campaigns, as well as to integrate with your application. The operations in the _Integration API_ section are used to integrate with our platform, while the other operations are used to manage applications and campaigns. ### Where is the API? The API is available at the same hostname as these docs. For example, if you are reading this page at `https://mycompany.talon.one/docs/api/`, the URL for the [updateCustomerProfile][] operation is `https://mycompany.talon.one/v1/customer_profiles/id` [updateCustomerProfile]: #operation--v1-customer_profiles--integrationId--put
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}`
5
5
 
6
6
  The version of the OpenAPI document: 1.0.0
7
7
 
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #Talon.One API
3
3
 
4
- #The Talon.One API is used to manage applications and campaigns, as well as to integrate with your application. The operations in the _Integration API_ section are used to integrate with our platform, while the other operations are used to manage applications and campaigns. ### Where is the API? The API is available at the same hostname as these docs. For example, if you are reading this page at `https://mycompany.talon.one/docs/api/`, the URL for the [updateCustomerProfile][] operation is `https://mycompany.talon.one/v1/customer_profiles/id` [updateCustomerProfile]: #operation--v1-customer_profiles--integrationId--put
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}`
5
5
 
6
6
  The version of the OpenAPI document: 1.0.0
7
7
 
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #Talon.One API
3
3
 
4
- #The Talon.One API is used to manage applications and campaigns, as well as to integrate with your application. The operations in the _Integration API_ section are used to integrate with our platform, while the other operations are used to manage applications and campaigns. ### Where is the API? The API is available at the same hostname as these docs. For example, if you are reading this page at `https://mycompany.talon.one/docs/api/`, the URL for the [updateCustomerProfile][] operation is `https://mycompany.talon.one/v1/customer_profiles/id` [updateCustomerProfile]: #operation--v1-customer_profiles--integrationId--put
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}`
5
5
 
6
6
  The version of the OpenAPI document: 1.0.0
7
7
 
@@ -0,0 +1,212 @@
1
+ =begin
2
+ #Talon.One API
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}`
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 4.3.1
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module TalonOne
16
+ class ApplicationNotification
17
+ # Event type. It can be one of the following: ['campaign_priorities_changed']
18
+ attr_accessor :event
19
+
20
+ # Attribute mapping from ruby-style variable name to JSON key.
21
+ def self.attribute_map
22
+ {
23
+ :'event' => :'event'
24
+ }
25
+ end
26
+
27
+ # Attribute type mapping.
28
+ def self.openapi_types
29
+ {
30
+ :'event' => :'String'
31
+ }
32
+ end
33
+
34
+ # List of attributes with nullable: true
35
+ def self.openapi_nullable
36
+ Set.new([
37
+ ])
38
+ end
39
+
40
+ # Initializes the object
41
+ # @param [Hash] attributes Model attributes in the form of hash
42
+ def initialize(attributes = {})
43
+ if (!attributes.is_a?(Hash))
44
+ fail ArgumentError, "The input argument (attributes) must be a hash in `TalonOne::ApplicationNotification` initialize method"
45
+ end
46
+
47
+ # check to see if the attribute exists and convert string to symbol for hash key
48
+ attributes = attributes.each_with_object({}) { |(k, v), h|
49
+ if (!self.class.attribute_map.key?(k.to_sym))
50
+ fail ArgumentError, "`#{k}` is not a valid attribute in `TalonOne::ApplicationNotification`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
51
+ end
52
+ h[k.to_sym] = v
53
+ }
54
+
55
+ if attributes.key?(:'event')
56
+ self.event = attributes[:'event']
57
+ end
58
+ end
59
+
60
+ # Show invalid properties with the reasons. Usually used together with valid?
61
+ # @return Array for valid properties with the reasons
62
+ def list_invalid_properties
63
+ invalid_properties = Array.new
64
+ if @event.nil?
65
+ invalid_properties.push('invalid value for "event", event cannot be nil.')
66
+ end
67
+
68
+ invalid_properties
69
+ end
70
+
71
+ # Check to see if the all the properties in the model are valid
72
+ # @return true if the model is valid
73
+ def valid?
74
+ return false if @event.nil?
75
+ true
76
+ end
77
+
78
+ # Checks equality by comparing each attribute.
79
+ # @param [Object] Object to be compared
80
+ def ==(o)
81
+ return true if self.equal?(o)
82
+ self.class == o.class &&
83
+ event == o.event
84
+ end
85
+
86
+ # @see the `==` method
87
+ # @param [Object] Object to be compared
88
+ def eql?(o)
89
+ self == o
90
+ end
91
+
92
+ # Calculates hash code according to all attributes.
93
+ # @return [Integer] Hash code
94
+ def hash
95
+ [event].hash
96
+ end
97
+
98
+ # Builds the object from hash
99
+ # @param [Hash] attributes Model attributes in the form of hash
100
+ # @return [Object] Returns the model itself
101
+ def self.build_from_hash(attributes)
102
+ new.build_from_hash(attributes)
103
+ end
104
+
105
+ # Builds the object from hash
106
+ # @param [Hash] attributes Model attributes in the form of hash
107
+ # @return [Object] Returns the model itself
108
+ def build_from_hash(attributes)
109
+ return nil unless attributes.is_a?(Hash)
110
+ self.class.openapi_types.each_pair do |key, type|
111
+ if type =~ /\AArray<(.*)>/i
112
+ # check to ensure the input is an array given that the attribute
113
+ # is documented as an array but the input is not
114
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
115
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
116
+ end
117
+ elsif !attributes[self.class.attribute_map[key]].nil?
118
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
119
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
120
+ end
121
+
122
+ self
123
+ end
124
+
125
+ # Deserializes the data based on type
126
+ # @param string type Data type
127
+ # @param string value Value to be deserialized
128
+ # @return [Object] Deserialized data
129
+ def _deserialize(type, value)
130
+ case type.to_sym
131
+ when :DateTime
132
+ DateTime.parse(value)
133
+ when :Date
134
+ Date.parse(value)
135
+ when :String
136
+ value.to_s
137
+ when :Integer
138
+ value.to_i
139
+ when :Float
140
+ value.to_f
141
+ when :Boolean
142
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
143
+ true
144
+ else
145
+ false
146
+ end
147
+ when :Object
148
+ # generic object (usually a Hash), return directly
149
+ value
150
+ when /\AArray<(?<inner_type>.+)>\z/
151
+ inner_type = Regexp.last_match[:inner_type]
152
+ value.map { |v| _deserialize(inner_type, v) }
153
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
154
+ k_type = Regexp.last_match[:k_type]
155
+ v_type = Regexp.last_match[:v_type]
156
+ {}.tap do |hash|
157
+ value.each do |k, v|
158
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
159
+ end
160
+ end
161
+ else # model
162
+ TalonOne.const_get(type).build_from_hash(value)
163
+ end
164
+ end
165
+
166
+ # Returns the string representation of the object
167
+ # @return [String] String presentation of the object
168
+ def to_s
169
+ to_hash.to_s
170
+ end
171
+
172
+ # to_body is an alias to to_hash (backward compatibility)
173
+ # @return [Hash] Returns the object in the form of hash
174
+ def to_body
175
+ to_hash
176
+ end
177
+
178
+ # Returns the object in the form of hash
179
+ # @return [Hash] Returns the object in the form of hash
180
+ def to_hash
181
+ hash = {}
182
+ self.class.attribute_map.each_pair do |attr, param|
183
+ value = self.send(attr)
184
+ if value.nil?
185
+ is_nullable = self.class.openapi_nullable.include?(attr)
186
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
187
+ end
188
+
189
+ hash[param] = _to_hash(value)
190
+ end
191
+ hash
192
+ end
193
+
194
+ # Outputs non-array value in the form of hash
195
+ # For object, use to_hash. Otherwise, just return the value
196
+ # @param [Object] value Any valid value
197
+ # @return [Hash] Returns the value in the form of hash
198
+ def _to_hash(value)
199
+ if value.is_a?(Array)
200
+ value.compact.map { |v| _to_hash(v) }
201
+ elsif value.is_a?(Hash)
202
+ {}.tap do |hash|
203
+ value.each { |k, v| hash[k] = _to_hash(v) }
204
+ end
205
+ elsif value.respond_to? :to_hash
206
+ value.to_hash
207
+ else
208
+ value
209
+ end
210
+ end
211
+ end
212
+ end