talon_one 2.3.0 → 2.5.1

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