talon_one 5.0.0 → 6.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (327) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +77 -17
  3. data/docs/AchievementProgress.md +2 -0
  4. data/docs/AdditionalCampaignProperties.md +3 -1
  5. data/docs/AnalyticsDataPoint.md +19 -0
  6. data/docs/AnalyticsDataPointWithTrend.md +19 -0
  7. data/docs/AnalyticsDataPointWithTrendAndInfluencedRate.md +21 -0
  8. data/docs/AnalyticsDataPointWithTrendAndUplift.md +21 -0
  9. data/docs/Application.md +4 -0
  10. data/docs/ApplicationAnalyticsDataPoint.md +6 -6
  11. data/docs/ApplicationCIF.md +33 -0
  12. data/docs/ApplicationCIFExpression.md +27 -0
  13. data/docs/ApplicationCampaignAnalytics.md +13 -19
  14. data/docs/ApplicationCampaignStats.md +1 -3
  15. data/docs/AsyncCouponDeletionJobResponse.md +17 -0
  16. data/docs/BaseLoyaltyProgram.md +8 -4
  17. data/docs/BaseNotification.md +1 -1
  18. data/docs/BaseNotificationEntity.md +1 -1
  19. data/docs/Campaign.md +15 -1
  20. data/docs/CampaignCollectionEditedNotification.md +21 -0
  21. data/docs/CampaignNotificationPolicy.md +3 -1
  22. data/docs/CampaignStateChangedNotification.md +2 -2
  23. data/docs/CampaignStoreBudget.md +25 -0
  24. data/docs/CampaignVersions.md +27 -0
  25. data/docs/CardAddedDeductedPointsNotificationPolicy.md +19 -0
  26. data/docs/CartItem.md +1 -1
  27. data/docs/CodeGeneratorSettings.md +1 -1
  28. data/docs/Coupon.md +1 -1
  29. data/docs/CouponConstraints.md +1 -1
  30. data/docs/CouponCreationJob.md +1 -1
  31. data/docs/CouponDeletionFilters.md +43 -0
  32. data/docs/CouponDeletionJob.md +39 -0
  33. data/docs/CustomerSessionV2.md +2 -2
  34. data/docs/Effect.md +8 -0
  35. data/docs/EffectEntity.md +9 -1
  36. data/docs/Environment.md +3 -1
  37. data/docs/Event.md +1 -1
  38. data/docs/GenerateCampaignDescription.md +19 -0
  39. data/docs/GenerateCampaignTags.md +17 -0
  40. data/docs/GenerateItemFilterDescription.md +17 -0
  41. data/docs/GenerateLoyaltyCard.md +19 -0
  42. data/docs/GenerateRuleTitle.md +19 -0
  43. data/docs/GenerateRuleTitleRule.md +19 -0
  44. data/docs/IncreaseAchievementProgressEffectProps.md +1 -1
  45. data/docs/IntegrationApi.md +67 -6
  46. data/docs/IntegrationCoupon.md +1 -1
  47. data/docs/InventoryCoupon.md +1 -1
  48. data/docs/InventoryReferral.md +1 -1
  49. data/docs/LoyaltyBalanceWithTier.md +31 -0
  50. data/docs/LoyaltyBalancesWithTiers.md +19 -0
  51. data/docs/LoyaltyCard.md +6 -2
  52. data/docs/LoyaltyCardBatch.md +21 -0
  53. data/docs/LoyaltyCardBatchResponse.md +19 -0
  54. data/docs/LoyaltyProgram.md +14 -6
  55. data/docs/ManagementApi.md +1044 -69
  56. data/docs/MessageLogResponse.md +3 -3
  57. data/docs/NewAppWideCouponDeletionJob.md +19 -0
  58. data/docs/NewApplication.md +3 -1
  59. data/docs/NewApplicationCIF.md +27 -0
  60. data/docs/NewApplicationCIFExpression.md +21 -0
  61. data/docs/NewBaseNotification.md +1 -1
  62. data/docs/NewCouponCreationJob.md +1 -1
  63. data/docs/NewCouponDeletionJob.md +17 -0
  64. data/docs/NewCoupons.md +1 -1
  65. data/docs/NewCouponsForMultipleRecipients.md +1 -1
  66. data/docs/NewCustomerSessionV2.md +2 -2
  67. data/docs/NewLoyaltyProgram.md +8 -4
  68. data/docs/NewOutgoingIntegrationWebhook.md +2 -0
  69. data/docs/NewReferral.md +1 -1
  70. data/docs/NewReferralsForMultipleAdvocates.md +1 -1
  71. data/docs/NewRevisionVersion.md +37 -0
  72. data/docs/NewWebhook.md +2 -0
  73. data/docs/OktaEvent.md +19 -0
  74. data/docs/OktaEventPayload.md +17 -0
  75. data/docs/OktaEventPayloadData.md +17 -0
  76. data/docs/OktaEventTarget.md +21 -0
  77. data/docs/ProjectedTier.md +21 -0
  78. data/docs/Referral.md +1 -1
  79. data/docs/ReferralConstraints.md +1 -1
  80. data/docs/RejectCouponEffectProps.md +3 -1
  81. data/docs/RejectReferralEffectProps.md +3 -1
  82. data/docs/Revision.md +35 -0
  83. data/docs/RevisionActivation.md +17 -0
  84. data/docs/RevisionVersion.md +53 -0
  85. data/docs/RollbackIncreasedAchievementProgressEffectProps.md +27 -0
  86. data/docs/RuleFailureReason.md +5 -1
  87. data/docs/SSOConfig.md +3 -1
  88. data/docs/ScimBaseUser.md +23 -0
  89. data/docs/ScimBaseUserName.md +17 -0
  90. data/docs/ScimNewUser.md +23 -0
  91. data/docs/ScimPatchOperation.md +21 -0
  92. data/docs/ScimPatchRequest.md +19 -0
  93. data/docs/ScimResource.md +21 -0
  94. data/docs/ScimResourceTypesListResponse.md +17 -0
  95. data/docs/ScimSchemaResource.md +23 -0
  96. data/docs/ScimSchemasListResponse.md +21 -0
  97. data/docs/ScimServiceProviderConfigResponse.md +27 -0
  98. data/docs/ScimServiceProviderConfigResponseBulk.md +21 -0
  99. data/docs/ScimServiceProviderConfigResponseChangePassword.md +17 -0
  100. data/docs/ScimServiceProviderConfigResponseFilter.md +19 -0
  101. data/docs/ScimServiceProviderConfigResponsePatch.md +17 -0
  102. data/docs/ScimUser.md +25 -0
  103. data/docs/ScimUsersListResponse.md +21 -0
  104. data/docs/Tier.md +3 -1
  105. data/docs/TransferLoyaltyCard.md +3 -1
  106. data/docs/UpdateApplication.md +5 -1
  107. data/docs/UpdateApplicationCIF.md +23 -0
  108. data/docs/UpdateCampaign.md +1 -1
  109. data/docs/UpdateCoupon.md +1 -1
  110. data/docs/UpdateCouponBatch.md +1 -1
  111. data/docs/UpdateLoyaltyCard.md +4 -2
  112. data/docs/UpdateLoyaltyProgram.md +8 -4
  113. data/docs/UpdateReferral.md +1 -1
  114. data/docs/UpdateReferralBatch.md +1 -1
  115. data/docs/User.md +3 -1
  116. data/docs/Webhook.md +2 -0
  117. data/docs/WebhookWithOutgoingIntegrationDetails.md +2 -0
  118. data/lib/talon_one/api/integration_api.rb +83 -7
  119. data/lib/talon_one/api/management_api.rb +1127 -78
  120. data/lib/talon_one/models/achievement_progress.rb +16 -1
  121. data/lib/talon_one/models/additional_campaign_properties.rb +21 -6
  122. data/lib/talon_one/models/analytics_data_point.rb +225 -0
  123. data/lib/talon_one/models/analytics_data_point_with_trend.rb +225 -0
  124. data/lib/talon_one/models/analytics_data_point_with_trend_and_influenced_rate.rb +239 -0
  125. data/lib/talon_one/models/analytics_data_point_with_trend_and_uplift.rb +239 -0
  126. data/lib/talon_one/models/application.rb +21 -1
  127. data/lib/talon_one/models/application_analytics_data_point.rb +14 -4
  128. data/lib/talon_one/models/application_campaign_analytics.rb +39 -41
  129. data/lib/talon_one/models/application_campaign_stats.rb +1 -16
  130. data/lib/talon_one/models/application_cif.rb +308 -0
  131. data/lib/talon_one/models/application_cif_expression.rb +275 -0
  132. data/lib/talon_one/models/async_coupon_deletion_job_response.rb +213 -0
  133. data/lib/talon_one/models/attribute.rb +2 -2
  134. data/lib/talon_one/models/base_loyalty_program.rb +44 -25
  135. data/lib/talon_one/models/base_notification.rb +3 -2
  136. data/lib/talon_one/models/base_notification_entity.rb +1 -0
  137. data/lib/talon_one/models/campaign.rb +83 -6
  138. data/lib/talon_one/models/campaign_collection_edited_notification.rb +235 -0
  139. data/lib/talon_one/models/campaign_notification_policy.rb +16 -4
  140. data/lib/talon_one/models/campaign_state_changed_notification.rb +2 -2
  141. data/lib/talon_one/models/campaign_store_budget.rb +275 -0
  142. data/lib/talon_one/models/campaign_versions.rb +259 -0
  143. data/lib/talon_one/models/card_added_deducted_points_notification_policy.rb +269 -0
  144. data/lib/talon_one/models/cart_item.rb +1 -1
  145. data/lib/talon_one/models/code_generator_settings.rb +1 -1
  146. data/lib/talon_one/models/coupon.rb +1 -1
  147. data/lib/talon_one/models/coupon_constraints.rb +1 -1
  148. data/lib/talon_one/models/coupon_creation_job.rb +1 -1
  149. data/lib/talon_one/models/coupon_deletion_filters.rb +375 -0
  150. data/lib/talon_one/models/coupon_deletion_job.rb +370 -0
  151. data/lib/talon_one/models/customer_session_v2.rb +2 -2
  152. data/lib/talon_one/models/effect.rb +41 -1
  153. data/lib/talon_one/models/effect_entity.rb +44 -4
  154. data/lib/talon_one/models/environment.rb +16 -4
  155. data/lib/talon_one/models/event.rb +0 -5
  156. data/lib/talon_one/models/generate_campaign_description.rb +227 -0
  157. data/lib/talon_one/models/generate_campaign_tags.rb +212 -0
  158. data/lib/talon_one/models/generate_item_filter_description.rb +214 -0
  159. data/lib/talon_one/models/generate_loyalty_card.rb +256 -0
  160. data/lib/talon_one/models/generate_rule_title.rb +226 -0
  161. data/lib/talon_one/models/generate_rule_title_rule.rb +221 -0
  162. data/lib/talon_one/models/increase_achievement_progress_effect_props.rb +1 -1
  163. data/lib/talon_one/models/integration_coupon.rb +1 -1
  164. data/lib/talon_one/models/inventory_coupon.rb +1 -1
  165. data/lib/talon_one/models/inventory_referral.rb +1 -1
  166. data/lib/talon_one/models/loyalty_balance_with_tier.rb +276 -0
  167. data/lib/talon_one/models/loyalty_balances_with_tiers.rb +219 -0
  168. data/lib/talon_one/models/loyalty_card.rb +25 -5
  169. data/lib/talon_one/models/loyalty_card_batch.rb +304 -0
  170. data/lib/talon_one/models/loyalty_card_batch_response.rb +227 -0
  171. data/lib/talon_one/models/loyalty_program.rb +70 -29
  172. data/lib/talon_one/models/message_log_response.rb +3 -22
  173. data/lib/talon_one/models/new_app_wide_coupon_deletion_job.rb +227 -0
  174. data/lib/talon_one/models/new_application.rb +14 -4
  175. data/lib/talon_one/models/new_application_cif.rb +262 -0
  176. data/lib/talon_one/models/new_application_cif_expression.rb +229 -0
  177. data/lib/talon_one/models/new_attribute.rb +2 -2
  178. data/lib/talon_one/models/new_base_notification.rb +1 -0
  179. data/lib/talon_one/models/new_coupon_creation_job.rb +1 -1
  180. data/lib/talon_one/models/new_coupon_deletion_job.rb +211 -0
  181. data/lib/talon_one/models/new_coupons.rb +1 -1
  182. data/lib/talon_one/models/new_coupons_for_multiple_recipients.rb +1 -1
  183. data/lib/talon_one/models/new_customer_session_v2.rb +2 -2
  184. data/lib/talon_one/models/new_loyalty_program.rb +44 -25
  185. data/lib/talon_one/models/new_notification_test.rb +2 -2
  186. data/lib/talon_one/models/new_outgoing_integration_webhook.rb +11 -1
  187. data/lib/talon_one/models/new_referral.rb +1 -1
  188. data/lib/talon_one/models/new_referrals_for_multiple_advocates.rb +1 -1
  189. data/lib/talon_one/models/new_revision_version.rb +352 -0
  190. data/lib/talon_one/models/new_webhook.rb +11 -1
  191. data/lib/talon_one/models/okta_event.rb +229 -0
  192. data/lib/talon_one/models/okta_event_payload.rb +212 -0
  193. data/lib/talon_one/models/okta_event_payload_data.rb +214 -0
  194. data/lib/talon_one/models/okta_event_target.rb +243 -0
  195. data/lib/talon_one/models/projected_tier.rb +232 -0
  196. data/lib/talon_one/models/referral.rb +1 -1
  197. data/lib/talon_one/models/referral_constraints.rb +1 -1
  198. data/lib/talon_one/models/reject_coupon_effect_props.rb +14 -4
  199. data/lib/talon_one/models/reject_referral_effect_props.rb +14 -4
  200. data/lib/talon_one/models/revision.rb +319 -0
  201. data/lib/talon_one/models/revision_activation.rb +206 -0
  202. data/lib/talon_one/models/revision_version.rb +466 -0
  203. data/lib/talon_one/models/rollback_increased_achievement_progress_effect_props.rb +288 -0
  204. data/lib/talon_one/models/rule_failure_reason.rb +24 -4
  205. data/lib/talon_one/models/scim_base_user.rb +237 -0
  206. data/lib/talon_one/models/scim_base_user_name.rb +208 -0
  207. data/lib/talon_one/models/scim_new_user.rb +237 -0
  208. data/lib/talon_one/models/scim_patch_operation.rb +267 -0
  209. data/lib/talon_one/models/scim_patch_request.rb +226 -0
  210. data/lib/talon_one/models/scim_resource.rb +228 -0
  211. data/lib/talon_one/models/scim_resource_types_list_response.rb +214 -0
  212. data/lib/talon_one/models/scim_schema_resource.rb +239 -0
  213. data/lib/talon_one/models/scim_schemas_list_response.rb +236 -0
  214. data/lib/talon_one/models/scim_service_provider_config_response.rb +256 -0
  215. data/lib/talon_one/models/scim_service_provider_config_response_bulk.rb +228 -0
  216. data/lib/talon_one/models/scim_service_provider_config_response_change_password.rb +208 -0
  217. data/lib/talon_one/models/scim_service_provider_config_response_filter.rb +218 -0
  218. data/lib/talon_one/models/scim_service_provider_config_response_patch.rb +208 -0
  219. data/lib/talon_one/models/scim_user.rb +252 -0
  220. data/lib/talon_one/models/scim_users_list_response.rb +236 -0
  221. data/lib/talon_one/models/sso_config.rb +14 -4
  222. data/lib/talon_one/models/tier.rb +12 -2
  223. data/lib/talon_one/models/transfer_loyalty_card.rb +14 -4
  224. data/lib/talon_one/models/update_application.rb +24 -4
  225. data/lib/talon_one/models/update_application_cif.rb +237 -0
  226. data/lib/talon_one/models/update_campaign.rb +1 -1
  227. data/lib/talon_one/models/update_coupon.rb +1 -1
  228. data/lib/talon_one/models/update_coupon_batch.rb +1 -1
  229. data/lib/talon_one/models/update_loyalty_card.rb +15 -5
  230. data/lib/talon_one/models/update_loyalty_program.rb +44 -25
  231. data/lib/talon_one/models/update_referral.rb +1 -1
  232. data/lib/talon_one/models/update_referral_batch.rb +1 -1
  233. data/lib/talon_one/models/user.rb +14 -4
  234. data/lib/talon_one/models/webhook.rb +11 -1
  235. data/lib/talon_one/models/webhook_with_outgoing_integration_details.rb +11 -1
  236. data/lib/talon_one/version.rb +1 -1
  237. data/lib/talon_one.rb +54 -11
  238. data/spec/api/integration_api_spec.rb +18 -3
  239. data/spec/api/management_api_spec.rb +227 -23
  240. data/spec/models/achievement_progress_spec.rb +6 -0
  241. data/spec/models/additional_campaign_properties_spec.rb +7 -1
  242. data/spec/models/analytics_data_point_spec.rb +47 -0
  243. data/spec/models/analytics_data_point_with_trend_and_influenced_rate_spec.rb +53 -0
  244. data/spec/models/analytics_data_point_with_trend_and_uplift_spec.rb +53 -0
  245. data/spec/models/analytics_data_point_with_trend_spec.rb +47 -0
  246. data/spec/models/application_campaign_analytics_spec.rb +1 -19
  247. data/spec/models/application_campaign_stats_spec.rb +0 -6
  248. data/spec/models/application_cif_expression_spec.rb +71 -0
  249. data/spec/models/application_cif_spec.rb +89 -0
  250. data/spec/models/application_spec.rb +12 -0
  251. data/spec/models/async_coupon_deletion_job_response_spec.rb +41 -0
  252. data/spec/models/attribute_spec.rb +1 -1
  253. data/spec/models/base_loyalty_program_spec.rb +18 -6
  254. data/spec/models/base_notification_spec.rb +1 -1
  255. data/spec/models/campaign_collection_edited_notification_spec.rb +53 -0
  256. data/spec/models/campaign_notification_policy_spec.rb +6 -0
  257. data/spec/models/campaign_spec.rb +43 -1
  258. data/spec/models/campaign_store_budget_spec.rb +65 -0
  259. data/spec/models/campaign_versions_spec.rb +71 -0
  260. data/spec/models/card_added_deducted_points_notification_policy_spec.rb +51 -0
  261. data/spec/models/coupon_deletion_filters_spec.rb +123 -0
  262. data/spec/models/coupon_deletion_job_spec.rb +107 -0
  263. data/spec/models/effect_entity_spec.rb +24 -0
  264. data/spec/models/effect_spec.rb +24 -0
  265. data/spec/models/environment_spec.rb +6 -0
  266. data/spec/models/generate_campaign_description_spec.rb +47 -0
  267. data/spec/models/generate_campaign_tags_spec.rb +41 -0
  268. data/spec/models/generate_item_filter_description_spec.rb +41 -0
  269. data/spec/models/generate_loyalty_card_spec.rb +51 -0
  270. data/spec/models/generate_rule_title_rule_spec.rb +47 -0
  271. data/spec/models/generate_rule_title_spec.rb +47 -0
  272. data/spec/models/loyalty_balance_with_tier_spec.rb +83 -0
  273. data/spec/models/loyalty_balances_with_tiers_spec.rb +47 -0
  274. data/spec/models/loyalty_card_batch_response_spec.rb +47 -0
  275. data/spec/models/loyalty_card_batch_spec.rb +57 -0
  276. data/spec/models/loyalty_card_spec.rb +12 -0
  277. data/spec/models/loyalty_program_spec.rb +30 -6
  278. data/spec/models/new_app_wide_coupon_deletion_job_spec.rb +47 -0
  279. data/spec/models/new_application_cif_expression_spec.rb +53 -0
  280. data/spec/models/new_application_cif_spec.rb +71 -0
  281. data/spec/models/new_application_spec.rb +6 -0
  282. data/spec/models/new_attribute_spec.rb +1 -1
  283. data/spec/models/new_coupon_deletion_job_spec.rb +41 -0
  284. data/spec/models/new_loyalty_program_spec.rb +18 -6
  285. data/spec/models/new_notification_test_spec.rb +1 -1
  286. data/spec/models/new_outgoing_integration_webhook_spec.rb +6 -0
  287. data/spec/models/new_revision_version_spec.rb +105 -0
  288. data/spec/models/new_webhook_spec.rb +6 -0
  289. data/spec/models/okta_event_payload_data_spec.rb +41 -0
  290. data/spec/models/okta_event_payload_spec.rb +41 -0
  291. data/spec/models/okta_event_spec.rb +47 -0
  292. data/spec/models/okta_event_target_spec.rb +53 -0
  293. data/spec/models/projected_tier_spec.rb +53 -0
  294. data/spec/models/reject_coupon_effect_props_spec.rb +6 -0
  295. data/spec/models/reject_referral_effect_props_spec.rb +6 -0
  296. data/spec/models/revision_activation_spec.rb +41 -0
  297. data/spec/models/revision_spec.rb +95 -0
  298. data/spec/models/revision_version_spec.rb +153 -0
  299. data/spec/models/rollback_increased_achievement_progress_effect_props_spec.rb +71 -0
  300. data/spec/models/rule_failure_reason_spec.rb +12 -0
  301. data/spec/models/scim_base_user_name_spec.rb +41 -0
  302. data/spec/models/scim_base_user_spec.rb +59 -0
  303. data/spec/models/scim_new_user_spec.rb +59 -0
  304. data/spec/models/scim_patch_operation_spec.rb +57 -0
  305. data/spec/models/scim_patch_request_spec.rb +47 -0
  306. data/spec/models/scim_resource_spec.rb +53 -0
  307. data/spec/models/scim_resource_types_list_response_spec.rb +41 -0
  308. data/spec/models/scim_schema_resource_spec.rb +59 -0
  309. data/spec/models/scim_schemas_list_response_spec.rb +53 -0
  310. data/spec/models/scim_service_provider_config_response_bulk_spec.rb +53 -0
  311. data/spec/models/scim_service_provider_config_response_change_password_spec.rb +41 -0
  312. data/spec/models/scim_service_provider_config_response_filter_spec.rb +47 -0
  313. data/spec/models/scim_service_provider_config_response_patch_spec.rb +41 -0
  314. data/spec/models/scim_service_provider_config_response_spec.rb +71 -0
  315. data/spec/models/scim_user_spec.rb +65 -0
  316. data/spec/models/scim_users_list_response_spec.rb +53 -0
  317. data/spec/models/sso_config_spec.rb +6 -0
  318. data/spec/models/tier_spec.rb +6 -0
  319. data/spec/models/transfer_loyalty_card_spec.rb +6 -0
  320. data/spec/models/update_application_cif_spec.rb +59 -0
  321. data/spec/models/update_application_spec.rb +12 -0
  322. data/spec/models/update_loyalty_card_spec.rb +6 -0
  323. data/spec/models/update_loyalty_program_spec.rb +18 -6
  324. data/spec/models/user_spec.rb +6 -0
  325. data/spec/models/webhook_spec.rb +6 -0
  326. data/spec/models/webhook_with_outgoing_integration_details_spec.rb +6 -0
  327. metadata +219 -3
@@ -30,6 +30,9 @@ module TalonOne
30
30
  # Name or title for this webhook.
31
31
  attr_accessor :title
32
32
 
33
+ # A description of the webhook.
34
+ attr_accessor :description
35
+
33
36
  # API method for this webhook.
34
37
  attr_accessor :verb
35
38
 
@@ -87,6 +90,7 @@ module TalonOne
87
90
  :'modified' => :'modified',
88
91
  :'application_ids' => :'applicationIds',
89
92
  :'title' => :'title',
93
+ :'description' => :'description',
90
94
  :'verb' => :'verb',
91
95
  :'url' => :'url',
92
96
  :'headers' => :'headers',
@@ -107,6 +111,7 @@ module TalonOne
107
111
  :'modified' => :'DateTime',
108
112
  :'application_ids' => :'Array<Integer>',
109
113
  :'title' => :'String',
114
+ :'description' => :'String',
110
115
  :'verb' => :'String',
111
116
  :'url' => :'String',
112
117
  :'headers' => :'Array<String>',
@@ -162,6 +167,10 @@ module TalonOne
162
167
  self.title = attributes[:'title']
163
168
  end
164
169
 
170
+ if attributes.key?(:'description')
171
+ self.description = attributes[:'description']
172
+ end
173
+
165
174
  if attributes.key?(:'verb')
166
175
  self.verb = attributes[:'verb']
167
176
  end
@@ -309,6 +318,7 @@ module TalonOne
309
318
  modified == o.modified &&
310
319
  application_ids == o.application_ids &&
311
320
  title == o.title &&
321
+ description == o.description &&
312
322
  verb == o.verb &&
313
323
  url == o.url &&
314
324
  headers == o.headers &&
@@ -329,7 +339,7 @@ module TalonOne
329
339
  # Calculates hash code according to all attributes.
330
340
  # @return [Integer] Hash code
331
341
  def hash
332
- [id, created, modified, application_ids, title, verb, url, headers, payload, params, enabled, outgoing_integration_template_id, outgoing_integration_type_id, outgoing_integration_type_name].hash
342
+ [id, created, modified, application_ids, title, description, verb, url, headers, payload, params, enabled, outgoing_integration_template_id, outgoing_integration_type_id, outgoing_integration_type_name].hash
333
343
  end
334
344
 
335
345
  # Builds the object from hash
@@ -11,5 +11,5 @@ OpenAPI Generator version: 4.3.1
11
11
  =end
12
12
 
13
13
  module TalonOne
14
- VERSION = '5.0.0'
14
+ VERSION = '6.0.0'
15
15
  end
data/lib/talon_one.rb CHANGED
@@ -44,21 +44,17 @@ require 'talon_one/models/add_to_audience_effect_props'
44
44
  require 'talon_one/models/added_deducted_points_notification_policy'
45
45
  require 'talon_one/models/additional_campaign_properties'
46
46
  require 'talon_one/models/additional_cost'
47
+ require 'talon_one/models/analytics_data_point'
48
+ require 'talon_one/models/analytics_data_point_with_trend'
49
+ require 'talon_one/models/analytics_data_point_with_trend_and_influenced_rate'
50
+ require 'talon_one/models/analytics_data_point_with_trend_and_uplift'
47
51
  require 'talon_one/models/application'
48
52
  require 'talon_one/models/application_api_key'
49
53
  require 'talon_one/models/application_analytics_data_point'
50
- require 'talon_one/models/application_analytics_data_point_avg_items_per_session'
51
- require 'talon_one/models/application_analytics_data_point_avg_session_value'
52
- require 'talon_one/models/application_analytics_data_point_sessions_count'
53
- require 'talon_one/models/application_analytics_data_point_total_revenue'
54
54
  require 'talon_one/models/application_api_health'
55
+ require 'talon_one/models/application_cif'
56
+ require 'talon_one/models/application_cif_expression'
55
57
  require 'talon_one/models/application_campaign_analytics'
56
- require 'talon_one/models/application_campaign_analytics_avg_items_per_session'
57
- require 'talon_one/models/application_campaign_analytics_avg_session_value'
58
- require 'talon_one/models/application_campaign_analytics_coupons_count'
59
- require 'talon_one/models/application_campaign_analytics_sessions_count'
60
- require 'talon_one/models/application_campaign_analytics_total_discounts'
61
- require 'talon_one/models/application_campaign_analytics_total_revenue'
62
58
  require 'talon_one/models/application_campaign_stats'
63
59
  require 'talon_one/models/application_customer'
64
60
  require 'talon_one/models/application_customer_entity'
@@ -70,6 +66,7 @@ require 'talon_one/models/application_session'
70
66
  require 'talon_one/models/application_session_entity'
71
67
  require 'talon_one/models/application_store_entity'
72
68
  require 'talon_one/models/async_coupon_creation_response'
69
+ require 'talon_one/models/async_coupon_deletion_job_response'
73
70
  require 'talon_one/models/attribute'
74
71
  require 'talon_one/models/attributes_mandatory'
75
72
  require 'talon_one/models/attributes_settings'
@@ -95,6 +92,7 @@ require 'talon_one/models/campaign_activation_request'
95
92
  require 'talon_one/models/campaign_analytics'
96
93
  require 'talon_one/models/campaign_budget'
97
94
  require 'talon_one/models/campaign_collection'
95
+ require 'talon_one/models/campaign_collection_edited_notification'
98
96
  require 'talon_one/models/campaign_collection_without_payload'
99
97
  require 'talon_one/models/campaign_copy'
100
98
  require 'talon_one/models/campaign_created_notification'
@@ -115,9 +113,12 @@ require 'talon_one/models/campaign_set_branch_node'
115
113
  require 'talon_one/models/campaign_set_leaf_node'
116
114
  require 'talon_one/models/campaign_set_node'
117
115
  require 'talon_one/models/campaign_state_changed_notification'
116
+ require 'talon_one/models/campaign_store_budget'
118
117
  require 'talon_one/models/campaign_template'
119
118
  require 'talon_one/models/campaign_template_collection'
120
119
  require 'talon_one/models/campaign_template_params'
120
+ require 'talon_one/models/campaign_versions'
121
+ require 'talon_one/models/card_added_deducted_points_notification_policy'
121
122
  require 'talon_one/models/card_expiring_points_notification_policy'
122
123
  require 'talon_one/models/card_expiring_points_notification_trigger'
123
124
  require 'talon_one/models/card_ledger_points_entry_integration_api'
@@ -141,6 +142,8 @@ require 'talon_one/models/coupon'
141
142
  require 'talon_one/models/coupon_constraints'
142
143
  require 'talon_one/models/coupon_created_effect_props'
143
144
  require 'talon_one/models/coupon_creation_job'
145
+ require 'talon_one/models/coupon_deletion_filters'
146
+ require 'talon_one/models/coupon_deletion_job'
144
147
  require 'talon_one/models/coupon_limit_configs'
145
148
  require 'talon_one/models/coupon_rejection_reason'
146
149
  require 'talon_one/models/coupon_reservations'
@@ -194,6 +197,12 @@ require 'talon_one/models/feature_flag'
194
197
  require 'talon_one/models/features_feed'
195
198
  require 'talon_one/models/func_arg_def'
196
199
  require 'talon_one/models/function_def'
200
+ require 'talon_one/models/generate_campaign_description'
201
+ require 'talon_one/models/generate_campaign_tags'
202
+ require 'talon_one/models/generate_item_filter_description'
203
+ require 'talon_one/models/generate_loyalty_card'
204
+ require 'talon_one/models/generate_rule_title'
205
+ require 'talon_one/models/generate_rule_title_rule'
197
206
  require 'talon_one/models/get_integration_coupon_request'
198
207
  require 'talon_one/models/giveaway'
199
208
  require 'talon_one/models/giveaways_pool'
@@ -273,9 +282,13 @@ require 'talon_one/models/limit_counter'
273
282
  require 'talon_one/models/login_params'
274
283
  require 'talon_one/models/loyalty'
275
284
  require 'talon_one/models/loyalty_balance'
285
+ require 'talon_one/models/loyalty_balance_with_tier'
276
286
  require 'talon_one/models/loyalty_balances'
287
+ require 'talon_one/models/loyalty_balances_with_tiers'
277
288
  require 'talon_one/models/loyalty_card'
278
289
  require 'talon_one/models/loyalty_card_balances'
290
+ require 'talon_one/models/loyalty_card_batch'
291
+ require 'talon_one/models/loyalty_card_batch_response'
279
292
  require 'talon_one/models/loyalty_card_profile_registration'
280
293
  require 'talon_one/models/loyalty_card_registration'
281
294
  require 'talon_one/models/loyalty_dashboard_data'
@@ -288,7 +301,6 @@ require 'talon_one/models/loyalty_program'
288
301
  require 'talon_one/models/loyalty_program_balance'
289
302
  require 'talon_one/models/loyalty_program_entity'
290
303
  require 'talon_one/models/loyalty_program_ledgers'
291
- require 'talon_one/models/loyalty_program_subledgers'
292
304
  require 'talon_one/models/loyalty_program_transaction'
293
305
  require 'talon_one/models/loyalty_sub_ledger'
294
306
  require 'talon_one/models/loyalty_tier'
@@ -313,8 +325,11 @@ require 'talon_one/models/mutable_entity'
313
325
  require 'talon_one/models/new_account'
314
326
  require 'talon_one/models/new_account_sign_up'
315
327
  require 'talon_one/models/new_additional_cost'
328
+ require 'talon_one/models/new_app_wide_coupon_deletion_job'
316
329
  require 'talon_one/models/new_application'
317
330
  require 'talon_one/models/new_application_api_key'
331
+ require 'talon_one/models/new_application_cif'
332
+ require 'talon_one/models/new_application_cif_expression'
318
333
  require 'talon_one/models/new_attribute'
319
334
  require 'talon_one/models/new_audience'
320
335
  require 'talon_one/models/new_base_notification'
@@ -327,6 +342,7 @@ require 'talon_one/models/new_campaign_template'
327
342
  require 'talon_one/models/new_catalog'
328
343
  require 'talon_one/models/new_collection'
329
344
  require 'talon_one/models/new_coupon_creation_job'
345
+ require 'talon_one/models/new_coupon_deletion_job'
330
346
  require 'talon_one/models/new_coupons'
331
347
  require 'talon_one/models/new_coupons_for_multiple_recipients'
332
348
  require 'talon_one/models/new_custom_effect'
@@ -353,6 +369,7 @@ require 'talon_one/models/new_picklist'
353
369
  require 'talon_one/models/new_referral'
354
370
  require 'talon_one/models/new_referrals_for_multiple_advocates'
355
371
  require 'talon_one/models/new_return'
372
+ require 'talon_one/models/new_revision_version'
356
373
  require 'talon_one/models/new_role'
357
374
  require 'talon_one/models/new_role_v2'
358
375
  require 'talon_one/models/new_ruleset'
@@ -365,6 +382,10 @@ require 'talon_one/models/notification'
365
382
  require 'talon_one/models/notification_activation'
366
383
  require 'talon_one/models/notification_list_item'
367
384
  require 'talon_one/models/notification_test'
385
+ require 'talon_one/models/okta_event'
386
+ require 'talon_one/models/okta_event_payload'
387
+ require 'talon_one/models/okta_event_payload_data'
388
+ require 'talon_one/models/okta_event_target'
368
389
  require 'talon_one/models/one_time_code'
369
390
  require 'talon_one/models/outgoing_integration_braze_policy'
370
391
  require 'talon_one/models/outgoing_integration_clever_tap_policy'
@@ -382,6 +403,7 @@ require 'talon_one/models/pending_points_notification_policy'
382
403
  require 'talon_one/models/picklist'
383
404
  require 'talon_one/models/product'
384
405
  require 'talon_one/models/profile_audiences_changes'
406
+ require 'talon_one/models/projected_tier'
385
407
  require 'talon_one/models/redeem_referral_effect_props'
386
408
  require 'talon_one/models/referral'
387
409
  require 'talon_one/models/referral_constraints'
@@ -396,6 +418,9 @@ require 'talon_one/models/reopen_session_response'
396
418
  require 'talon_one/models/reserve_coupon_effect_props'
397
419
  require 'talon_one/models/return_integration_request'
398
420
  require 'talon_one/models/returned_cart_item'
421
+ require 'talon_one/models/revision'
422
+ require 'talon_one/models/revision_activation'
423
+ require 'talon_one/models/revision_version'
399
424
  require 'talon_one/models/role'
400
425
  require 'talon_one/models/role_assign'
401
426
  require 'talon_one/models/role_membership'
@@ -409,6 +434,7 @@ require 'talon_one/models/rollback_added_loyalty_points_effect_props'
409
434
  require 'talon_one/models/rollback_coupon_effect_props'
410
435
  require 'talon_one/models/rollback_deducted_loyalty_points_effect_props'
411
436
  require 'talon_one/models/rollback_discount_effect_props'
437
+ require 'talon_one/models/rollback_increased_achievement_progress_effect_props'
412
438
  require 'talon_one/models/rollback_referral_effect_props'
413
439
  require 'talon_one/models/rule'
414
440
  require 'talon_one/models/rule_failure_reason'
@@ -418,6 +444,22 @@ require 'talon_one/models/saml_connection'
418
444
  require 'talon_one/models/saml_connection_internal'
419
445
  require 'talon_one/models/saml_connection_metadata'
420
446
  require 'talon_one/models/saml_login_endpoint'
447
+ require 'talon_one/models/scim_base_user'
448
+ require 'talon_one/models/scim_base_user_name'
449
+ require 'talon_one/models/scim_new_user'
450
+ require 'talon_one/models/scim_patch_operation'
451
+ require 'talon_one/models/scim_patch_request'
452
+ require 'talon_one/models/scim_resource'
453
+ require 'talon_one/models/scim_resource_types_list_response'
454
+ require 'talon_one/models/scim_schema_resource'
455
+ require 'talon_one/models/scim_schemas_list_response'
456
+ require 'talon_one/models/scim_service_provider_config_response'
457
+ require 'talon_one/models/scim_service_provider_config_response_bulk'
458
+ require 'talon_one/models/scim_service_provider_config_response_change_password'
459
+ require 'talon_one/models/scim_service_provider_config_response_filter'
460
+ require 'talon_one/models/scim_service_provider_config_response_patch'
461
+ require 'talon_one/models/scim_user'
462
+ require 'talon_one/models/scim_users_list_response'
421
463
  require 'talon_one/models/session'
422
464
  require 'talon_one/models/set_discount_effect_props'
423
465
  require 'talon_one/models/set_discount_per_additional_cost_effect_props'
@@ -452,6 +494,7 @@ require 'talon_one/models/update_account'
452
494
  require 'talon_one/models/update_achievement'
453
495
  require 'talon_one/models/update_application'
454
496
  require 'talon_one/models/update_application_api_key'
497
+ require 'talon_one/models/update_application_cif'
455
498
  require 'talon_one/models/update_attribute_effect_props'
456
499
  require 'talon_one/models/update_audience'
457
500
  require 'talon_one/models/update_campaign'
@@ -131,6 +131,19 @@ describe 'IntegrationApi' do
131
131
  end
132
132
  end
133
133
 
134
+ # unit tests for generate_loyalty_card
135
+ # Generate loyalty card
136
+ # Generate a loyalty card in a specified [card-based loyalty program](https://docs.talon.one/docs/product/loyalty-programs/card-based/card-based-overview). To link the card to one or more customer profiles, use the &#x60;customerProfileIds&#x60; parameter in the request body. **Note:** - The number of customer profiles linked to the loyalty card cannot exceed the loyalty program&#39;s &#x60;usersPerCardLimit&#x60;. To find the program&#39;s limit, use the [Get loyalty program](https://docs.talon.one/management-api#tag/Loyalty/operation/getLoyaltyProgram) endpoint. - If the loyalty program has a defined code format, it will be used for the loyalty card identifier.
137
+ # @param loyalty_program_id Identifier of the card-based loyalty program containing the loyalty card. You can get the ID with the [List loyalty programs](https://docs.talon.one/management-api#tag/Loyalty/operation/getLoyaltyPrograms) endpoint.
138
+ # @param body body
139
+ # @param [Hash] opts the optional parameters
140
+ # @return [LoyaltyCard]
141
+ describe 'generate_loyalty_card test' do
142
+ it 'should work' do
143
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
144
+ end
145
+ end
146
+
134
147
  # unit tests for get_customer_inventory
135
148
  # List customer data
136
149
  # Return the customer inventory regarding entities referencing this customer profile&#39;s &#x60;integrationId&#x60;. Typical entities returned are: customer profile information, referral codes, loyalty points, loyalty cards and reserved coupons. Reserved coupons also include redeemed coupons.
@@ -169,7 +182,9 @@ describe 'IntegrationApi' do
169
182
  # @param [Hash] opts the optional parameters
170
183
  # @option opts [DateTime] :end_date Used to return expired, active, and pending loyalty balances before this timestamp. You can enter any past, present, or future timestamp value. **Note:** - It must be an RFC3339 timestamp string. - You can include a time component in your string, for example, &#x60;T23:59:59&#x60; to specify the end of the day. The time zone setting considered is &#x60;UTC&#x60;. If you do not include a time component, a default time value of &#x60;T00:00:00&#x60; (midnight) in &#x60;UTC&#x60; is considered.
171
184
  # @option opts [String] :subledger_id The ID of the subledger by which we filter the data.
172
- # @return [LoyaltyBalances]
185
+ # @option opts [Boolean] :include_tiers Indicates whether tier information is included in the response. When set to &#x60;true&#x60;, the response includes information about the current tier and the number of points required to move to next tier.
186
+ # @option opts [Boolean] :include_projected_tier Indicates whether the customer&#39;s projected tier information is included in the response. When set to &#x60;true&#x60;, the response includes information about the customer’s active points and the name of the projected tier. **Note** We recommend filtering by &#x60;subledgerId&#x60; for better performance.
187
+ # @return [LoyaltyBalancesWithTiers]
173
188
  describe 'get_loyalty_balances test' do
174
189
  it 'should work' do
175
190
  # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
@@ -317,7 +332,7 @@ describe 'IntegrationApi' do
317
332
 
318
333
  # unit tests for sync_catalog
319
334
  # Sync cart item catalog
320
- # Perform one or more of the following actions for a given cart item catalog: - Adding an item to the catalog. - Adding several items to the catalog. - Editing the attributes of an item in the catalog. - Editing the attributes of several items in the catalog. - Removing an item from the catalog. - Removing several items from the catalog. You can add, update, or delete up to 1000 cart items in a single request. Each item synced to a catalog must have a unique &#x60;SKU&#x60;. **Important**: Syncing items with duplicate &#x60;SKU&#x60; values in a single request returns an error message with a &#x60;400&#x60; status code. For more information, read [managing cart item catalogs](https://docs.talon.one/docs/product/account/dev-tools/managing-cart-item-catalogs). ### Filtering cart items Use [cart item attributes](https://docs.talon.one/docs/product/account/dev-tools/managing-attributes) to filter items and select the ones you want to edit or delete when editing or deleting more than one item at a time. The &#x60;filters&#x60; array contains an object with the following properties: - &#x60;attr&#x60;: A [cart item attribute](https://docs.talon.one/docs/product/account/dev-tools/managing-attributes) connected to the catalog. It is applied to all items in the catalog. - &#x60;op&#x60;: The filtering operator indicating the relationship between the value of each cart item in the catalog and the value of the &#x60;value&#x60; property for the attribute selected in &#x60;attr&#x60;. The value of &#x60;op&#x60; can be one of the following: - &#x60;EQ&#x60;: Equal to &#x60;value&#x60; - &#x60;LT&#x60;: Less than &#x60;value&#x60; - &#x60;LE&#x60;: Less than or equal to &#x60;value&#x60; - &#x60;GT&#x60;: Greater than &#x60;value&#x60; - &#x60;GE&#x60;: Greater than or equal to &#x60;value&#x60; - &#x60;IN&#x60;: One of the comma-separated values that &#x60;value&#x60; is set to. **Note:** &#x60;GE&#x60;, &#x60;LE&#x60;, &#x60;GT&#x60;, &#x60;LT&#x60; are for numeric values only. - &#x60;value&#x60;: The value of the attribute selected in &#x60;attr&#x60;. ### Payload examples Synchronization actions are sent as &#x60;PUT&#x60; requests. See the structure for each action: &lt;details&gt; &lt;summary&gt;&lt;strong&gt;Adding an item to the catalog&lt;/strong&gt;&lt;/summary&gt; &lt;div&gt; &#x60;&#x60;&#x60;json { \&quot;actions\&quot;: [ { \&quot;payload\&quot;: { \&quot;attributes\&quot;: { \&quot;color\&quot;: \&quot;Navy blue\&quot;, \&quot;type\&quot;: \&quot;shoes\&quot; }, \&quot;replaceIfExists\&quot;: true, \&quot;sku\&quot;: \&quot;SKU1241028\&quot;, \&quot;price\&quot;: 100, \&quot;product\&quot;: { \&quot;name\&quot;: \&quot;sneakers\&quot; } }, \&quot;type\&quot;: \&quot;ADD\&quot; } ] } &#x60;&#x60;&#x60; &lt;/div&gt; &lt;/details&gt; &lt;details&gt; &lt;summary&gt;&lt;strong&gt;Adding several items to the catalog&lt;/strong&gt;&lt;/summary&gt; &lt;div&gt; &#x60;&#x60;&#x60;json { \&quot;actions\&quot;: [ { \&quot;payload\&quot;: { \&quot;attributes\&quot;: { \&quot;color\&quot;: \&quot;Navy blue\&quot;, \&quot;type\&quot;: \&quot;shoes\&quot; }, \&quot;replaceIfExists\&quot;: true, \&quot;sku\&quot;: \&quot;SKU1241027\&quot;, \&quot;price\&quot;: 100, \&quot;product\&quot;: { \&quot;name\&quot;: \&quot;sneakers\&quot; } }, \&quot;type\&quot;: \&quot;ADD\&quot; }, { \&quot;payload\&quot;: { \&quot;attributes\&quot;: { \&quot;color\&quot;: \&quot;Navy blue\&quot;, \&quot;type\&quot;: \&quot;shoes\&quot; }, \&quot;replaceIfExists\&quot;: true, \&quot;sku\&quot;: \&quot;SKU1241028\&quot;, \&quot;price\&quot;: 100, \&quot;product\&quot;: { \&quot;name\&quot;: \&quot;sneakers\&quot; } }, \&quot;type\&quot;: \&quot;ADD\&quot; } ] } &#x60;&#x60;&#x60; &lt;/div&gt; &lt;/details&gt; &lt;details&gt; &lt;summary&gt;&lt;strong&gt;Editing the attributes of an item in the catalog&lt;/strong&gt;&lt;/summary&gt; &lt;div&gt; &#x60;&#x60;&#x60;json { \&quot;actions\&quot;: [ { \&quot;payload\&quot;: { \&quot;attributes\&quot;: { \&quot;age\&quot;: 11, \&quot;origin\&quot;: \&quot;germany\&quot; }, \&quot;createIfNotExists\&quot;: false, \&quot;sku\&quot;: \&quot;SKU1241028\&quot;, \&quot;product\&quot;: { \&quot;name\&quot;: \&quot;sneakers\&quot; } }, \&quot;type\&quot;: \&quot;PATCH\&quot; } ] } &#x60;&#x60;&#x60; &lt;/div&gt; &lt;/details&gt; &lt;details&gt; &lt;summary&gt;&lt;strong&gt;Editing the attributes of several items in the catalog&lt;/strong&gt;&lt;/summary&gt; &lt;div&gt; &#x60;&#x60;&#x60;json { \&quot;actions\&quot;: [ { \&quot;payload\&quot;: { \&quot;attributes\&quot;: { \&quot;color\&quot;: \&quot;red\&quot; }, \&quot;filters\&quot;: [ { \&quot;attr\&quot;: \&quot;color\&quot;, \&quot;op\&quot;: \&quot;EQ\&quot;, \&quot;value\&quot;: \&quot;blue\&quot; } ] }, \&quot;type\&quot;: \&quot;PATCH_MANY\&quot; } ] } &#x60;&#x60;&#x60; &lt;/div&gt; &lt;/details&gt; &lt;details&gt; &lt;summary&gt;&lt;strong&gt;Removing an item from the catalog&lt;/strong&gt;&lt;/summary&gt; &lt;div&gt; &#x60;&#x60;&#x60;json { \&quot;actions\&quot;: [ { \&quot;payload\&quot;: { \&quot;sku\&quot;: \&quot;SKU1241028\&quot; }, \&quot;type\&quot;: \&quot;REMOVE\&quot; } ] } &#x60;&#x60;&#x60; &lt;/div&gt; &lt;/details&gt; &lt;details&gt; &lt;summary&gt;&lt;strong&gt;Removing several items from the catalog&lt;/strong&gt;&lt;/summary&gt; &lt;div&gt; &#x60;&#x60;&#x60;json { \&quot;actions\&quot;: [ { \&quot;payload\&quot;: { \&quot;filters\&quot;: [ { \&quot;attr\&quot;: \&quot;color\&quot;, \&quot;op\&quot;: \&quot;EQ\&quot;, \&quot;value\&quot;: \&quot;blue\&quot; } ] }, \&quot;type\&quot;: \&quot;REMOVE_MANY\&quot; } ] } &#x60;&#x60;&#x60; &lt;/div&gt; &lt;/details&gt; &lt;details&gt; &lt;summary&gt;&lt;strong&gt;Removing shoes of sizes above 45 from the catalog&lt;/strong&gt;&lt;/summary&gt; &lt;div&gt; &lt;p&gt; Let&#39;s imagine that we have a shoe store and we have decided to stop selling shoes larger than size 45. We can remove from the catalog all the shoes of sizes above 45 with a single action:&lt;/p&gt; &#x60;&#x60;&#x60;json { \&quot;actions\&quot;: [ { \&quot;payload\&quot;: { \&quot;filters\&quot;: [ { \&quot;attr\&quot;: \&quot;size\&quot;, \&quot;op\&quot;: \&quot;GT\&quot;, \&quot;value\&quot;: \&quot;45\&quot; } ] }, \&quot;type\&quot;: \&quot;REMOVE_MANY\&quot; } ] } &#x60;&#x60;&#x60; &lt;/div&gt; &lt;/details&gt;
335
+ # Perform the following actions for a given cart item catalog: - Add an item to the catalog. - Add multiple items to the catalog. - Update the attributes of an item in the catalog. - Update the attributes of multiple items in the catalog. - Remove an item from the catalog. - Remove multiple items from the catalog. You can either add, update, or delete up to 1000 cart items in a single request. Each item synced to a catalog must have a unique &#x60;SKU&#x60;. **Important**: You can perform only one type of action in a single sync request. Syncing items with duplicate &#x60;SKU&#x60; values in a single request returns an error message with a &#x60;400&#x60; status code. For more information, read [managing cart item catalogs](https://docs.talon.one/docs/product/account/dev-tools/managing-cart-item-catalogs). ### Filtering cart items Use [cart item attributes](https://docs.talon.one/docs/product/account/dev-tools/managing-attributes) to filter items and select the ones you want to edit or delete when editing or deleting more than one item at a time. The &#x60;filters&#x60; array contains an object with the following properties: - &#x60;attr&#x60;: A [cart item attribute](https://docs.talon.one/docs/product/account/dev-tools/managing-attributes) connected to the catalog. It is applied to all items in the catalog. - &#x60;op&#x60;: The filtering operator indicating the relationship between the value of each cart item in the catalog and the value of the &#x60;value&#x60; property for the attribute selected in &#x60;attr&#x60;. The value of &#x60;op&#x60; can be one of the following: - &#x60;EQ&#x60;: Equal to &#x60;value&#x60; - &#x60;LT&#x60;: Less than &#x60;value&#x60; - &#x60;LE&#x60;: Less than or equal to &#x60;value&#x60; - &#x60;GT&#x60;: Greater than &#x60;value&#x60; - &#x60;GE&#x60;: Greater than or equal to &#x60;value&#x60; - &#x60;IN&#x60;: One of the comma-separated values that &#x60;value&#x60; is set to. **Note:** &#x60;GE&#x60;, &#x60;LE&#x60;, &#x60;GT&#x60;, &#x60;LT&#x60; are for numeric values only. - &#x60;value&#x60;: The value of the attribute selected in &#x60;attr&#x60;. ### Payload examples Synchronization actions are sent as &#x60;PUT&#x60; requests. See the structure for each action: &lt;details&gt; &lt;summary&gt;&lt;strong&gt;Adding an item to the catalog&lt;/strong&gt;&lt;/summary&gt; &lt;div&gt; &#x60;&#x60;&#x60;json { \&quot;actions\&quot;: [ { \&quot;payload\&quot;: { \&quot;attributes\&quot;: { \&quot;color\&quot;: \&quot;Navy blue\&quot;, \&quot;type\&quot;: \&quot;shoes\&quot; }, \&quot;replaceIfExists\&quot;: true, \&quot;sku\&quot;: \&quot;SKU1241028\&quot;, \&quot;price\&quot;: 100, \&quot;product\&quot;: { \&quot;name\&quot;: \&quot;sneakers\&quot; } }, \&quot;type\&quot;: \&quot;ADD\&quot; } ] } &#x60;&#x60;&#x60; &lt;/div&gt; &lt;/details&gt; &lt;details&gt; &lt;summary&gt;&lt;strong&gt;Adding multiple items to the catalog&lt;/strong&gt;&lt;/summary&gt; &lt;div&gt; &#x60;&#x60;&#x60;json { \&quot;actions\&quot;: [ { \&quot;payload\&quot;: { \&quot;attributes\&quot;: { \&quot;color\&quot;: \&quot;Navy blue\&quot;, \&quot;type\&quot;: \&quot;shoes\&quot; }, \&quot;replaceIfExists\&quot;: true, \&quot;sku\&quot;: \&quot;SKU1241027\&quot;, \&quot;price\&quot;: 100, \&quot;product\&quot;: { \&quot;name\&quot;: \&quot;sneakers\&quot; } }, \&quot;type\&quot;: \&quot;ADD\&quot; }, { \&quot;payload\&quot;: { \&quot;attributes\&quot;: { \&quot;color\&quot;: \&quot;Navy blue\&quot;, \&quot;type\&quot;: \&quot;shoes\&quot; }, \&quot;replaceIfExists\&quot;: true, \&quot;sku\&quot;: \&quot;SKU1241028\&quot;, \&quot;price\&quot;: 100, \&quot;product\&quot;: { \&quot;name\&quot;: \&quot;sneakers\&quot; } }, \&quot;type\&quot;: \&quot;ADD\&quot; } ] } &#x60;&#x60;&#x60; &lt;/div&gt; &lt;/details&gt; &lt;details&gt; &lt;summary&gt;&lt;strong&gt;Updating the attributes of an item in the catalog&lt;/strong&gt;&lt;/summary&gt; &lt;div&gt; &#x60;&#x60;&#x60;json { \&quot;actions\&quot;: [ { \&quot;payload\&quot;: { \&quot;attributes\&quot;: { \&quot;age\&quot;: 11, \&quot;origin\&quot;: \&quot;germany\&quot; }, \&quot;createIfNotExists\&quot;: false, \&quot;sku\&quot;: \&quot;SKU1241028\&quot;, \&quot;product\&quot;: { \&quot;name\&quot;: \&quot;sneakers\&quot; } }, \&quot;type\&quot;: \&quot;PATCH\&quot; } ] } &#x60;&#x60;&#x60; &lt;/div&gt; &lt;/details&gt; &lt;details&gt; &lt;summary&gt;&lt;strong&gt;Updating the attributes of multiple items in the catalog&lt;/strong&gt;&lt;/summary&gt; &lt;div&gt; &#x60;&#x60;&#x60;json { \&quot;actions\&quot;: [ { \&quot;payload\&quot;: { \&quot;attributes\&quot;: { \&quot;color\&quot;: \&quot;red\&quot; }, \&quot;filters\&quot;: [ { \&quot;attr\&quot;: \&quot;color\&quot;, \&quot;op\&quot;: \&quot;EQ\&quot;, \&quot;value\&quot;: \&quot;blue\&quot; } ] }, \&quot;type\&quot;: \&quot;PATCH_MANY\&quot; } ] } &#x60;&#x60;&#x60; &lt;/div&gt; &lt;/details&gt; &lt;details&gt; &lt;summary&gt;&lt;strong&gt;Removing an item from the catalog&lt;/strong&gt;&lt;/summary&gt; &lt;div&gt; &#x60;&#x60;&#x60;json { \&quot;actions\&quot;: [ { \&quot;payload\&quot;: { \&quot;sku\&quot;: \&quot;SKU1241028\&quot; }, \&quot;type\&quot;: \&quot;REMOVE\&quot; } ] } &#x60;&#x60;&#x60; &lt;/div&gt; &lt;/details&gt; &lt;details&gt; &lt;summary&gt;&lt;strong&gt;Removing multiple items from the catalog&lt;/strong&gt;&lt;/summary&gt; &lt;div&gt; &#x60;&#x60;&#x60;json { \&quot;actions\&quot;: [ { \&quot;payload\&quot;: { \&quot;filters\&quot;: [ { \&quot;attr\&quot;: \&quot;color\&quot;, \&quot;op\&quot;: \&quot;EQ\&quot;, \&quot;value\&quot;: \&quot;blue\&quot; } ] }, \&quot;type\&quot;: \&quot;REMOVE_MANY\&quot; } ] } &#x60;&#x60;&#x60; &lt;/div&gt; &lt;/details&gt; &lt;details&gt; &lt;summary&gt;&lt;strong&gt;Removing shoes of sizes above 45 from the catalog&lt;/strong&gt;&lt;/summary&gt; &lt;div&gt; &lt;p&gt; Let&#39;s imagine that we have a shoe store and we have decided to stop selling shoes larger than size 45. We can remove from the catalog all the shoes of sizes above 45 with a single action:&lt;/p&gt; &#x60;&#x60;&#x60;json { \&quot;actions\&quot;: [ { \&quot;payload\&quot;: { \&quot;filters\&quot;: [ { \&quot;attr\&quot;: \&quot;size\&quot;, \&quot;op\&quot;: \&quot;GT\&quot;, \&quot;value\&quot;: \&quot;45\&quot; } ] }, \&quot;type\&quot;: \&quot;REMOVE_MANY\&quot; } ] } &#x60;&#x60;&#x60; &lt;/div&gt; &lt;/details&gt;
321
336
  # @param catalog_id The ID of the catalog. You can find the ID in the Campaign Manager in **Account** &gt; **Tools** &gt; **Cart item catalogs**.
322
337
  # @param body body
323
338
  # @param [Hash] opts the optional parameters
@@ -414,7 +429,7 @@ describe 'IntegrationApi' do
414
429
  # @param customer_session_id The &#x60;integration ID&#x60; of the customer session. You set this ID when you create a customer session. You can see existing customer session integration IDs in the Campaign Manager&#39;s **Sessions** menu, or via the [List Application session](https://docs.talon.one/management-api#operation/getApplicationSessions) endpoint.
415
430
  # @param body body
416
431
  # @param [Hash] opts the optional parameters
417
- # @option opts [Boolean] :dry Indicates whether to persist the changes. Changes are ignored when &#x60;dry&#x3D;true&#x60;. When set to &#x60;true&#x60;: - The endpoint will **only** consider the payload that you pass when **closing** the session. When you do not use the &#x60;dry&#x60; parameter, the endpoint behaves as a typical PUT endpoint. Each update builds upon the previous ones. - You can use the &#x60;evaluableCampaignIds&#x60; body property to select specific campaigns to run. [See the docs](https://docs.talon.one/docs/dev/integration-api/dry-requests).
432
+ # @option opts [Boolean] :dry Indicates whether to persist the changes. Changes are ignored when &#x60;dry&#x3D;true&#x60;. When set to &#x60;true&#x60;: - The endpoint considers **only** the payload that you pass when **closing** the session. When you do not use the &#x60;dry&#x60; parameter, the endpoint behaves as a typical PUT endpoint. Each update builds upon the previous ones. - You can use the &#x60;evaluableCampaignIds&#x60; body property to select specific campaigns to run. [See the docs](https://docs.talon.one/docs/dev/integration-api/dry-requests).
418
433
  # @option opts [DateTime] :now A timestamp value of a future date that acts as a current date when included in the query. Use this parameter, for example, to test campaigns that would be evaluated for this customer session in the future (say, [scheduled campaigns](https://docs.talon.one/docs/product/campaigns/settings/managing-campaign-schedule)). **Note:** - It must be an RFC3339 timestamp string. - It can **only** be a date in the future. - It can **only** be used if the &#x60;dry&#x60; parameter in the query is set to &#x60;true&#x60;.
419
434
  # @return [IntegrationStateV2]
420
435
  describe 'update_customer_session_v2 test' do