talon_one 4.0.0 → 6.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (347) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +83 -18
  3. data/docs/AchievementProgress.md +2 -0
  4. data/docs/ActivateUserRequest.md +17 -0
  5. data/docs/AdditionalCampaignProperties.md +3 -1
  6. data/docs/AnalyticsDataPoint.md +19 -0
  7. data/docs/AnalyticsDataPointWithTrend.md +19 -0
  8. data/docs/AnalyticsDataPointWithTrendAndInfluencedRate.md +21 -0
  9. data/docs/AnalyticsDataPointWithTrendAndUplift.md +21 -0
  10. data/docs/Application.md +4 -0
  11. data/docs/ApplicationAnalyticsDataPoint.md +6 -6
  12. data/docs/ApplicationCIF.md +33 -0
  13. data/docs/ApplicationCIFExpression.md +27 -0
  14. data/docs/ApplicationCampaignAnalytics.md +13 -19
  15. data/docs/ApplicationCampaignStats.md +1 -3
  16. data/docs/AsyncCouponDeletionJobResponse.md +17 -0
  17. data/docs/BaseLoyaltyProgram.md +8 -4
  18. data/docs/BaseNotification.md +1 -1
  19. data/docs/BaseNotificationEntity.md +1 -1
  20. data/docs/Campaign.md +15 -1
  21. data/docs/CampaignCollectionEditedNotification.md +21 -0
  22. data/docs/CampaignNotificationPolicy.md +3 -1
  23. data/docs/CampaignStateChangedNotification.md +2 -2
  24. data/docs/CampaignStoreBudget.md +25 -0
  25. data/docs/CampaignVersions.md +27 -0
  26. data/docs/CardAddedDeductedPointsNotificationPolicy.md +19 -0
  27. data/docs/CartItem.md +1 -1
  28. data/docs/CodeGeneratorSettings.md +1 -1
  29. data/docs/Coupon.md +3 -3
  30. data/docs/CouponConstraints.md +1 -1
  31. data/docs/CouponCreationJob.md +1 -1
  32. data/docs/CouponDeletionFilters.md +43 -0
  33. data/docs/CouponDeletionJob.md +39 -0
  34. data/docs/CustomerInventory.md +1 -1
  35. data/docs/CustomerSessionV2.md +2 -2
  36. data/docs/Effect.md +8 -0
  37. data/docs/EffectEntity.md +9 -1
  38. data/docs/Environment.md +3 -1
  39. data/docs/Event.md +1 -1
  40. data/docs/GenerateCampaignDescription.md +19 -0
  41. data/docs/GenerateCampaignTags.md +17 -0
  42. data/docs/GenerateItemFilterDescription.md +17 -0
  43. data/docs/GenerateLoyaltyCard.md +19 -0
  44. data/docs/GenerateRuleTitle.md +19 -0
  45. data/docs/GenerateRuleTitleRule.md +19 -0
  46. data/docs/IncreaseAchievementProgressEffectProps.md +1 -1
  47. data/docs/InlineResponse20044.md +1 -1
  48. data/docs/IntegrationApi.md +77 -16
  49. data/docs/IntegrationCoupon.md +3 -3
  50. data/docs/InventoryCoupon.md +3 -3
  51. data/docs/InventoryReferral.md +1 -1
  52. data/docs/LoyaltyBalanceWithTier.md +31 -0
  53. data/docs/LoyaltyBalancesWithTiers.md +19 -0
  54. data/docs/LoyaltyCard.md +6 -2
  55. data/docs/LoyaltyCardBalances.md +21 -0
  56. data/docs/LoyaltyCardBatch.md +21 -0
  57. data/docs/LoyaltyCardBatchResponse.md +19 -0
  58. data/docs/LoyaltyCardProfileRegistration.md +1 -1
  59. data/docs/LoyaltyProgram.md +14 -6
  60. data/docs/ManagementApi.md +1269 -176
  61. data/docs/MessageLogEntry.md +1 -3
  62. data/docs/MessageLogResponse.md +3 -3
  63. data/docs/NewAppWideCouponDeletionJob.md +19 -0
  64. data/docs/NewApplication.md +3 -1
  65. data/docs/NewApplicationCIF.md +27 -0
  66. data/docs/NewApplicationCIFExpression.md +21 -0
  67. data/docs/NewBaseNotification.md +1 -1
  68. data/docs/NewCouponCreationJob.md +1 -1
  69. data/docs/NewCouponDeletionJob.md +17 -0
  70. data/docs/NewCoupons.md +2 -2
  71. data/docs/NewCouponsForMultipleRecipients.md +1 -1
  72. data/docs/NewCustomerSessionV2.md +2 -2
  73. data/docs/NewExternalInvitation.md +21 -0
  74. data/docs/NewLoyaltyProgram.md +8 -4
  75. data/docs/NewOutgoingIntegrationWebhook.md +2 -0
  76. data/docs/NewReferral.md +1 -1
  77. data/docs/NewReferralsForMultipleAdvocates.md +1 -1
  78. data/docs/NewRevisionVersion.md +37 -0
  79. data/docs/NewWebhook.md +2 -0
  80. data/docs/OktaEvent.md +19 -0
  81. data/docs/OktaEventPayload.md +17 -0
  82. data/docs/OktaEventPayloadData.md +17 -0
  83. data/docs/OktaEventTarget.md +21 -0
  84. data/docs/ProjectedTier.md +21 -0
  85. data/docs/Referral.md +1 -1
  86. data/docs/ReferralConstraints.md +1 -1
  87. data/docs/RejectCouponEffectProps.md +3 -1
  88. data/docs/RejectReferralEffectProps.md +3 -1
  89. data/docs/Revision.md +35 -0
  90. data/docs/RevisionActivation.md +17 -0
  91. data/docs/RevisionVersion.md +53 -0
  92. data/docs/RollbackIncreasedAchievementProgressEffectProps.md +27 -0
  93. data/docs/RuleFailureReason.md +5 -1
  94. data/docs/SSOConfig.md +3 -1
  95. data/docs/ScimBaseUser.md +23 -0
  96. data/docs/ScimBaseUserName.md +17 -0
  97. data/docs/ScimNewUser.md +23 -0
  98. data/docs/ScimPatchOperation.md +21 -0
  99. data/docs/ScimPatchRequest.md +19 -0
  100. data/docs/ScimResource.md +21 -0
  101. data/docs/ScimResourceTypesListResponse.md +17 -0
  102. data/docs/ScimSchemaResource.md +23 -0
  103. data/docs/ScimSchemasListResponse.md +21 -0
  104. data/docs/ScimServiceProviderConfigResponse.md +27 -0
  105. data/docs/ScimServiceProviderConfigResponseBulk.md +21 -0
  106. data/docs/ScimServiceProviderConfigResponseChangePassword.md +17 -0
  107. data/docs/ScimServiceProviderConfigResponseFilter.md +19 -0
  108. data/docs/ScimServiceProviderConfigResponsePatch.md +17 -0
  109. data/docs/ScimUser.md +25 -0
  110. data/docs/ScimUsersListResponse.md +21 -0
  111. data/docs/Tier.md +3 -1
  112. data/docs/TransferLoyaltyCard.md +3 -1
  113. data/docs/UpdateApplication.md +5 -1
  114. data/docs/UpdateApplicationCIF.md +23 -0
  115. data/docs/UpdateCampaign.md +1 -1
  116. data/docs/UpdateCoupon.md +2 -2
  117. data/docs/UpdateCouponBatch.md +1 -1
  118. data/docs/UpdateLoyaltyCard.md +4 -2
  119. data/docs/UpdateLoyaltyProgram.md +8 -4
  120. data/docs/UpdateReferral.md +1 -1
  121. data/docs/UpdateReferralBatch.md +1 -1
  122. data/docs/UpdateUser.md +1 -1
  123. data/docs/User.md +3 -1
  124. data/docs/Webhook.md +2 -0
  125. data/docs/WebhookWithOutgoingIntegrationDetails.md +2 -0
  126. data/lib/talon_one/api/integration_api.rb +101 -25
  127. data/lib/talon_one/api/management_api.rb +1362 -189
  128. data/lib/talon_one/models/achievement_progress.rb +16 -1
  129. data/lib/talon_one/models/activate_user_request.rb +213 -0
  130. data/lib/talon_one/models/additional_campaign_properties.rb +21 -6
  131. data/lib/talon_one/models/analytics_data_point.rb +225 -0
  132. data/lib/talon_one/models/analytics_data_point_with_trend.rb +225 -0
  133. data/lib/talon_one/models/analytics_data_point_with_trend_and_influenced_rate.rb +239 -0
  134. data/lib/talon_one/models/analytics_data_point_with_trend_and_uplift.rb +239 -0
  135. data/lib/talon_one/models/application.rb +21 -1
  136. data/lib/talon_one/models/application_analytics_data_point.rb +14 -4
  137. data/lib/talon_one/models/application_campaign_analytics.rb +39 -41
  138. data/lib/talon_one/models/application_campaign_stats.rb +1 -16
  139. data/lib/talon_one/models/application_cif.rb +308 -0
  140. data/lib/talon_one/models/application_cif_expression.rb +275 -0
  141. data/lib/talon_one/models/async_coupon_deletion_job_response.rb +213 -0
  142. data/lib/talon_one/models/attribute.rb +2 -2
  143. data/lib/talon_one/models/base_loyalty_program.rb +44 -25
  144. data/lib/talon_one/models/base_notification.rb +3 -2
  145. data/lib/talon_one/models/base_notification_entity.rb +1 -0
  146. data/lib/talon_one/models/campaign.rb +83 -6
  147. data/lib/talon_one/models/campaign_collection_edited_notification.rb +235 -0
  148. data/lib/talon_one/models/campaign_notification_policy.rb +16 -4
  149. data/lib/talon_one/models/campaign_state_changed_notification.rb +2 -2
  150. data/lib/talon_one/models/campaign_store_budget.rb +275 -0
  151. data/lib/talon_one/models/campaign_versions.rb +259 -0
  152. data/lib/talon_one/models/card_added_deducted_points_notification_policy.rb +269 -0
  153. data/lib/talon_one/models/cart_item.rb +1 -1
  154. data/lib/talon_one/models/code_generator_settings.rb +1 -1
  155. data/lib/talon_one/models/coupon.rb +3 -3
  156. data/lib/talon_one/models/coupon_constraints.rb +1 -1
  157. data/lib/talon_one/models/coupon_creation_job.rb +1 -1
  158. data/lib/talon_one/models/coupon_deletion_filters.rb +375 -0
  159. data/lib/talon_one/models/coupon_deletion_job.rb +370 -0
  160. data/lib/talon_one/models/customer_inventory.rb +1 -1
  161. data/lib/talon_one/models/customer_session_v2.rb +2 -2
  162. data/lib/talon_one/models/effect.rb +41 -1
  163. data/lib/talon_one/models/effect_entity.rb +44 -4
  164. data/lib/talon_one/models/environment.rb +16 -4
  165. data/lib/talon_one/models/event.rb +0 -5
  166. data/lib/talon_one/models/generate_campaign_description.rb +227 -0
  167. data/lib/talon_one/models/generate_campaign_tags.rb +212 -0
  168. data/lib/talon_one/models/generate_item_filter_description.rb +214 -0
  169. data/lib/talon_one/models/generate_loyalty_card.rb +256 -0
  170. data/lib/talon_one/models/generate_rule_title.rb +226 -0
  171. data/lib/talon_one/models/generate_rule_title_rule.rb +221 -0
  172. data/lib/talon_one/models/increase_achievement_progress_effect_props.rb +1 -1
  173. data/lib/talon_one/models/inline_response20044.rb +1 -1
  174. data/lib/talon_one/models/integration_coupon.rb +3 -3
  175. data/lib/talon_one/models/inventory_coupon.rb +3 -3
  176. data/lib/talon_one/models/inventory_referral.rb +1 -1
  177. data/lib/talon_one/models/loyalty_balance_with_tier.rb +276 -0
  178. data/lib/talon_one/models/loyalty_balances_with_tiers.rb +219 -0
  179. data/lib/talon_one/models/loyalty_card.rb +25 -5
  180. data/lib/talon_one/models/loyalty_card_balances.rb +231 -0
  181. data/lib/talon_one/models/loyalty_card_batch.rb +304 -0
  182. data/lib/talon_one/models/loyalty_card_batch_response.rb +227 -0
  183. data/lib/talon_one/models/loyalty_card_profile_registration.rb +1 -1
  184. data/lib/talon_one/models/loyalty_program.rb +70 -29
  185. data/lib/talon_one/models/message_log_entry.rb +4 -14
  186. data/lib/talon_one/models/message_log_response.rb +3 -22
  187. data/lib/talon_one/models/new_app_wide_coupon_deletion_job.rb +227 -0
  188. data/lib/talon_one/models/new_application.rb +14 -4
  189. data/lib/talon_one/models/new_application_cif.rb +262 -0
  190. data/lib/talon_one/models/new_application_cif_expression.rb +229 -0
  191. data/lib/talon_one/models/new_attribute.rb +2 -2
  192. data/lib/talon_one/models/new_base_notification.rb +1 -0
  193. data/lib/talon_one/models/new_coupon_creation_job.rb +1 -1
  194. data/lib/talon_one/models/new_coupon_deletion_job.rb +211 -0
  195. data/lib/talon_one/models/new_coupons.rb +2 -2
  196. data/lib/talon_one/models/new_coupons_for_multiple_recipients.rb +1 -1
  197. data/lib/talon_one/models/new_customer_session_v2.rb +2 -2
  198. data/lib/talon_one/models/new_external_invitation.rb +235 -0
  199. data/lib/talon_one/models/new_loyalty_program.rb +44 -25
  200. data/lib/talon_one/models/new_notification_test.rb +2 -2
  201. data/lib/talon_one/models/new_outgoing_integration_webhook.rb +11 -1
  202. data/lib/talon_one/models/new_referral.rb +1 -1
  203. data/lib/talon_one/models/new_referrals_for_multiple_advocates.rb +1 -1
  204. data/lib/talon_one/models/new_revision_version.rb +352 -0
  205. data/lib/talon_one/models/new_webhook.rb +11 -1
  206. data/lib/talon_one/models/okta_event.rb +229 -0
  207. data/lib/talon_one/models/okta_event_payload.rb +212 -0
  208. data/lib/talon_one/models/okta_event_payload_data.rb +214 -0
  209. data/lib/talon_one/models/okta_event_target.rb +243 -0
  210. data/lib/talon_one/models/projected_tier.rb +232 -0
  211. data/lib/talon_one/models/referral.rb +1 -1
  212. data/lib/talon_one/models/referral_constraints.rb +1 -1
  213. data/lib/talon_one/models/reject_coupon_effect_props.rb +14 -4
  214. data/lib/talon_one/models/reject_referral_effect_props.rb +14 -4
  215. data/lib/talon_one/models/revision.rb +319 -0
  216. data/lib/talon_one/models/revision_activation.rb +206 -0
  217. data/lib/talon_one/models/revision_version.rb +466 -0
  218. data/lib/talon_one/models/rollback_increased_achievement_progress_effect_props.rb +288 -0
  219. data/lib/talon_one/models/rule_failure_reason.rb +24 -4
  220. data/lib/talon_one/models/scim_base_user.rb +237 -0
  221. data/lib/talon_one/models/scim_base_user_name.rb +208 -0
  222. data/lib/talon_one/models/scim_new_user.rb +237 -0
  223. data/lib/talon_one/models/scim_patch_operation.rb +267 -0
  224. data/lib/talon_one/models/scim_patch_request.rb +226 -0
  225. data/lib/talon_one/models/scim_resource.rb +228 -0
  226. data/lib/talon_one/models/scim_resource_types_list_response.rb +214 -0
  227. data/lib/talon_one/models/scim_schema_resource.rb +239 -0
  228. data/lib/talon_one/models/scim_schemas_list_response.rb +236 -0
  229. data/lib/talon_one/models/scim_service_provider_config_response.rb +256 -0
  230. data/lib/talon_one/models/scim_service_provider_config_response_bulk.rb +228 -0
  231. data/lib/talon_one/models/scim_service_provider_config_response_change_password.rb +208 -0
  232. data/lib/talon_one/models/scim_service_provider_config_response_filter.rb +218 -0
  233. data/lib/talon_one/models/scim_service_provider_config_response_patch.rb +208 -0
  234. data/lib/talon_one/models/scim_user.rb +252 -0
  235. data/lib/talon_one/models/scim_users_list_response.rb +236 -0
  236. data/lib/talon_one/models/sso_config.rb +14 -4
  237. data/lib/talon_one/models/tier.rb +12 -2
  238. data/lib/talon_one/models/transfer_loyalty_card.rb +14 -4
  239. data/lib/talon_one/models/update_application.rb +24 -4
  240. data/lib/talon_one/models/update_application_cif.rb +237 -0
  241. data/lib/talon_one/models/update_campaign.rb +1 -1
  242. data/lib/talon_one/models/update_coupon.rb +2 -2
  243. data/lib/talon_one/models/update_coupon_batch.rb +1 -1
  244. data/lib/talon_one/models/update_loyalty_card.rb +15 -5
  245. data/lib/talon_one/models/update_loyalty_program.rb +44 -25
  246. data/lib/talon_one/models/update_referral.rb +1 -1
  247. data/lib/talon_one/models/update_referral_batch.rb +1 -1
  248. data/lib/talon_one/models/update_user.rb +1 -1
  249. data/lib/talon_one/models/user.rb +14 -4
  250. data/lib/talon_one/models/webhook.rb +11 -1
  251. data/lib/talon_one/models/webhook_with_outgoing_integration_details.rb +11 -1
  252. data/lib/talon_one/version.rb +1 -1
  253. data/lib/talon_one.rb +57 -11
  254. data/spec/api/integration_api_spec.rb +25 -10
  255. data/spec/api/management_api_spec.rb +267 -39
  256. data/spec/models/achievement_progress_spec.rb +6 -0
  257. data/spec/models/activate_user_request_spec.rb +41 -0
  258. data/spec/models/additional_campaign_properties_spec.rb +7 -1
  259. data/spec/models/analytics_data_point_spec.rb +47 -0
  260. data/spec/models/analytics_data_point_with_trend_and_influenced_rate_spec.rb +53 -0
  261. data/spec/models/analytics_data_point_with_trend_and_uplift_spec.rb +53 -0
  262. data/spec/models/analytics_data_point_with_trend_spec.rb +47 -0
  263. data/spec/models/application_campaign_analytics_spec.rb +1 -19
  264. data/spec/models/application_campaign_stats_spec.rb +0 -6
  265. data/spec/models/application_cif_expression_spec.rb +71 -0
  266. data/spec/models/application_cif_spec.rb +89 -0
  267. data/spec/models/application_spec.rb +12 -0
  268. data/spec/models/async_coupon_deletion_job_response_spec.rb +41 -0
  269. data/spec/models/attribute_spec.rb +1 -1
  270. data/spec/models/base_loyalty_program_spec.rb +18 -6
  271. data/spec/models/base_notification_spec.rb +1 -1
  272. data/spec/models/campaign_collection_edited_notification_spec.rb +53 -0
  273. data/spec/models/campaign_notification_policy_spec.rb +6 -0
  274. data/spec/models/campaign_spec.rb +43 -1
  275. data/spec/models/campaign_store_budget_spec.rb +65 -0
  276. data/spec/models/campaign_versions_spec.rb +71 -0
  277. data/spec/models/card_added_deducted_points_notification_policy_spec.rb +51 -0
  278. data/spec/models/coupon_deletion_filters_spec.rb +123 -0
  279. data/spec/models/coupon_deletion_job_spec.rb +107 -0
  280. data/spec/models/effect_entity_spec.rb +24 -0
  281. data/spec/models/effect_spec.rb +24 -0
  282. data/spec/models/environment_spec.rb +6 -0
  283. data/spec/models/generate_campaign_description_spec.rb +47 -0
  284. data/spec/models/generate_campaign_tags_spec.rb +41 -0
  285. data/spec/models/generate_item_filter_description_spec.rb +41 -0
  286. data/spec/models/generate_loyalty_card_spec.rb +51 -0
  287. data/spec/models/generate_rule_title_rule_spec.rb +47 -0
  288. data/spec/models/generate_rule_title_spec.rb +47 -0
  289. data/spec/models/loyalty_balance_with_tier_spec.rb +83 -0
  290. data/spec/models/loyalty_balances_with_tiers_spec.rb +47 -0
  291. data/spec/models/loyalty_card_balances_spec.rb +53 -0
  292. data/spec/models/loyalty_card_batch_response_spec.rb +47 -0
  293. data/spec/models/loyalty_card_batch_spec.rb +57 -0
  294. data/spec/models/loyalty_card_spec.rb +12 -0
  295. data/spec/models/loyalty_program_spec.rb +30 -6
  296. data/spec/models/message_log_entry_spec.rb +1 -7
  297. data/spec/models/new_app_wide_coupon_deletion_job_spec.rb +47 -0
  298. data/spec/models/new_application_cif_expression_spec.rb +53 -0
  299. data/spec/models/new_application_cif_spec.rb +71 -0
  300. data/spec/models/new_application_spec.rb +6 -0
  301. data/spec/models/new_attribute_spec.rb +1 -1
  302. data/spec/models/new_coupon_deletion_job_spec.rb +41 -0
  303. data/spec/models/new_external_invitation_spec.rb +53 -0
  304. data/spec/models/new_loyalty_program_spec.rb +18 -6
  305. data/spec/models/new_notification_test_spec.rb +1 -1
  306. data/spec/models/new_outgoing_integration_webhook_spec.rb +6 -0
  307. data/spec/models/new_revision_version_spec.rb +105 -0
  308. data/spec/models/new_webhook_spec.rb +6 -0
  309. data/spec/models/okta_event_payload_data_spec.rb +41 -0
  310. data/spec/models/okta_event_payload_spec.rb +41 -0
  311. data/spec/models/okta_event_spec.rb +47 -0
  312. data/spec/models/okta_event_target_spec.rb +53 -0
  313. data/spec/models/projected_tier_spec.rb +53 -0
  314. data/spec/models/reject_coupon_effect_props_spec.rb +6 -0
  315. data/spec/models/reject_referral_effect_props_spec.rb +6 -0
  316. data/spec/models/revision_activation_spec.rb +41 -0
  317. data/spec/models/revision_spec.rb +95 -0
  318. data/spec/models/revision_version_spec.rb +153 -0
  319. data/spec/models/rollback_increased_achievement_progress_effect_props_spec.rb +71 -0
  320. data/spec/models/rule_failure_reason_spec.rb +12 -0
  321. data/spec/models/scim_base_user_name_spec.rb +41 -0
  322. data/spec/models/scim_base_user_spec.rb +59 -0
  323. data/spec/models/scim_new_user_spec.rb +59 -0
  324. data/spec/models/scim_patch_operation_spec.rb +57 -0
  325. data/spec/models/scim_patch_request_spec.rb +47 -0
  326. data/spec/models/scim_resource_spec.rb +53 -0
  327. data/spec/models/scim_resource_types_list_response_spec.rb +41 -0
  328. data/spec/models/scim_schema_resource_spec.rb +59 -0
  329. data/spec/models/scim_schemas_list_response_spec.rb +53 -0
  330. data/spec/models/scim_service_provider_config_response_bulk_spec.rb +53 -0
  331. data/spec/models/scim_service_provider_config_response_change_password_spec.rb +41 -0
  332. data/spec/models/scim_service_provider_config_response_filter_spec.rb +47 -0
  333. data/spec/models/scim_service_provider_config_response_patch_spec.rb +41 -0
  334. data/spec/models/scim_service_provider_config_response_spec.rb +71 -0
  335. data/spec/models/scim_user_spec.rb +65 -0
  336. data/spec/models/scim_users_list_response_spec.rb +53 -0
  337. data/spec/models/sso_config_spec.rb +6 -0
  338. data/spec/models/tier_spec.rb +6 -0
  339. data/spec/models/transfer_loyalty_card_spec.rb +6 -0
  340. data/spec/models/update_application_cif_spec.rb +59 -0
  341. data/spec/models/update_application_spec.rb +12 -0
  342. data/spec/models/update_loyalty_card_spec.rb +6 -0
  343. data/spec/models/update_loyalty_program_spec.rb +18 -6
  344. data/spec/models/user_spec.rb +6 -0
  345. data/spec/models/webhook_spec.rb +6 -0
  346. data/spec/models/webhook_with_outgoing_integration_details_spec.rb +6 -0
  347. metadata +246 -18
@@ -23,6 +23,9 @@ module TalonOne
23
23
  # The display name of the achievement in the Campaign Manager.
24
24
  attr_accessor :title
25
25
 
26
+ # The description of the achievement in the Campaign Manager.
27
+ attr_accessor :description
28
+
26
29
  # The ID of the campaign the achievement belongs to.
27
30
  attr_accessor :campaign_id
28
31
 
@@ -72,6 +75,7 @@ module TalonOne
72
75
  :'achievement_id' => :'achievementId',
73
76
  :'name' => :'name',
74
77
  :'title' => :'title',
78
+ :'description' => :'description',
75
79
  :'campaign_id' => :'campaignId',
76
80
  :'status' => :'status',
77
81
  :'target' => :'target',
@@ -88,6 +92,7 @@ module TalonOne
88
92
  :'achievement_id' => :'Integer',
89
93
  :'name' => :'String',
90
94
  :'title' => :'String',
95
+ :'description' => :'String',
91
96
  :'campaign_id' => :'Integer',
92
97
  :'status' => :'String',
93
98
  :'target' => :'Float',
@@ -131,6 +136,10 @@ module TalonOne
131
136
  self.title = attributes[:'title']
132
137
  end
133
138
 
139
+ if attributes.key?(:'description')
140
+ self.description = attributes[:'description']
141
+ end
142
+
134
143
  if attributes.key?(:'campaign_id')
135
144
  self.campaign_id = attributes[:'campaign_id']
136
145
  end
@@ -189,6 +198,10 @@ module TalonOne
189
198
  invalid_properties.push('invalid value for "title", title cannot be nil.')
190
199
  end
191
200
 
201
+ if @description.nil?
202
+ invalid_properties.push('invalid value for "description", description cannot be nil.')
203
+ end
204
+
192
205
  if @campaign_id.nil?
193
206
  invalid_properties.push('invalid value for "campaign_id", campaign_id cannot be nil.')
194
207
  end
@@ -221,6 +234,7 @@ module TalonOne
221
234
  return false if @name.to_s.length < 1
222
235
  return false if @name !~ Regexp.new(/^[a-zA-Z]\w+$/)
223
236
  return false if @title.nil?
237
+ return false if @description.nil?
224
238
  return false if @campaign_id.nil?
225
239
  return false if @status.nil?
226
240
  status_validator = EnumAttributeValidator.new('String', ["inprogress", "completed", "expired"])
@@ -272,6 +286,7 @@ module TalonOne
272
286
  achievement_id == o.achievement_id &&
273
287
  name == o.name &&
274
288
  title == o.title &&
289
+ description == o.description &&
275
290
  campaign_id == o.campaign_id &&
276
291
  status == o.status &&
277
292
  target == o.target &&
@@ -290,7 +305,7 @@ module TalonOne
290
305
  # Calculates hash code according to all attributes.
291
306
  # @return [Integer] Hash code
292
307
  def hash
293
- [achievement_id, name, title, campaign_id, status, target, progress, start_date, completion_date, end_date].hash
308
+ [achievement_id, name, title, description, campaign_id, status, target, progress, start_date, completion_date, end_date].hash
294
309
  end
295
310
 
296
311
  # Builds the object from hash
@@ -0,0 +1,213 @@
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 access the Campaign Manager at `https://yourbaseurl.talon.one/`, the URL for the [updateCustomerSessionV2](https://docs.talon.one/integration-api#operation/updateCustomerSessionV2) endpoint is `https://yourbaseurl.talon.one/v2/customer_sessions/{Id}`
5
+
6
+ The version of the OpenAPI document:
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
+ #
17
+ class ActivateUserRequest
18
+ # The email address associated with the user profile.
19
+ attr_accessor :email
20
+
21
+ # Attribute mapping from ruby-style variable name to JSON key.
22
+ def self.attribute_map
23
+ {
24
+ :'email' => :'email'
25
+ }
26
+ end
27
+
28
+ # Attribute type mapping.
29
+ def self.openapi_types
30
+ {
31
+ :'email' => :'String'
32
+ }
33
+ end
34
+
35
+ # List of attributes with nullable: true
36
+ def self.openapi_nullable
37
+ Set.new([
38
+ ])
39
+ end
40
+
41
+ # Initializes the object
42
+ # @param [Hash] attributes Model attributes in the form of hash
43
+ def initialize(attributes = {})
44
+ if (!attributes.is_a?(Hash))
45
+ fail ArgumentError, "The input argument (attributes) must be a hash in `TalonOne::ActivateUserRequest` initialize method"
46
+ end
47
+
48
+ # check to see if the attribute exists and convert string to symbol for hash key
49
+ attributes = attributes.each_with_object({}) { |(k, v), h|
50
+ if (!self.class.attribute_map.key?(k.to_sym))
51
+ fail ArgumentError, "`#{k}` is not a valid attribute in `TalonOne::ActivateUserRequest`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
52
+ end
53
+ h[k.to_sym] = v
54
+ }
55
+
56
+ if attributes.key?(:'email')
57
+ self.email = attributes[:'email']
58
+ end
59
+ end
60
+
61
+ # Show invalid properties with the reasons. Usually used together with valid?
62
+ # @return Array for valid properties with the reasons
63
+ def list_invalid_properties
64
+ invalid_properties = Array.new
65
+ if @email.nil?
66
+ invalid_properties.push('invalid value for "email", email cannot be nil.')
67
+ end
68
+
69
+ invalid_properties
70
+ end
71
+
72
+ # Check to see if the all the properties in the model are valid
73
+ # @return true if the model is valid
74
+ def valid?
75
+ return false if @email.nil?
76
+ true
77
+ end
78
+
79
+ # Checks equality by comparing each attribute.
80
+ # @param [Object] Object to be compared
81
+ def ==(o)
82
+ return true if self.equal?(o)
83
+ self.class == o.class &&
84
+ email == o.email
85
+ end
86
+
87
+ # @see the `==` method
88
+ # @param [Object] Object to be compared
89
+ def eql?(o)
90
+ self == o
91
+ end
92
+
93
+ # Calculates hash code according to all attributes.
94
+ # @return [Integer] Hash code
95
+ def hash
96
+ [email].hash
97
+ end
98
+
99
+ # Builds the object from hash
100
+ # @param [Hash] attributes Model attributes in the form of hash
101
+ # @return [Object] Returns the model itself
102
+ def self.build_from_hash(attributes)
103
+ new.build_from_hash(attributes)
104
+ end
105
+
106
+ # Builds the object from hash
107
+ # @param [Hash] attributes Model attributes in the form of hash
108
+ # @return [Object] Returns the model itself
109
+ def build_from_hash(attributes)
110
+ return nil unless attributes.is_a?(Hash)
111
+ self.class.openapi_types.each_pair do |key, type|
112
+ if type =~ /\AArray<(.*)>/i
113
+ # check to ensure the input is an array given that the attribute
114
+ # is documented as an array but the input is not
115
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
116
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
117
+ end
118
+ elsif !attributes[self.class.attribute_map[key]].nil?
119
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
120
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
121
+ end
122
+
123
+ self
124
+ end
125
+
126
+ # Deserializes the data based on type
127
+ # @param string type Data type
128
+ # @param string value Value to be deserialized
129
+ # @return [Object] Deserialized data
130
+ def _deserialize(type, value)
131
+ case type.to_sym
132
+ when :DateTime
133
+ DateTime.parse(value)
134
+ when :Date
135
+ Date.parse(value)
136
+ when :String
137
+ value.to_s
138
+ when :Integer
139
+ value.to_i
140
+ when :Float
141
+ value.to_f
142
+ when :Boolean
143
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
144
+ true
145
+ else
146
+ false
147
+ end
148
+ when :Object
149
+ # generic object (usually a Hash), return directly
150
+ value
151
+ when /\AArray<(?<inner_type>.+)>\z/
152
+ inner_type = Regexp.last_match[:inner_type]
153
+ value.map { |v| _deserialize(inner_type, v) }
154
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
155
+ k_type = Regexp.last_match[:k_type]
156
+ v_type = Regexp.last_match[:v_type]
157
+ {}.tap do |hash|
158
+ value.each do |k, v|
159
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
160
+ end
161
+ end
162
+ else # model
163
+ TalonOne.const_get(type).build_from_hash(value)
164
+ end
165
+ end
166
+
167
+ # Returns the string representation of the object
168
+ # @return [String] String presentation of the object
169
+ def to_s
170
+ to_hash.to_s
171
+ end
172
+
173
+ # to_body is an alias to to_hash (backward compatibility)
174
+ # @return [Hash] Returns the object in the form of hash
175
+ def to_body
176
+ to_hash
177
+ end
178
+
179
+ # Returns the object in the form of hash
180
+ # @return [Hash] Returns the object in the form of hash
181
+ def to_hash
182
+ hash = {}
183
+ self.class.attribute_map.each_pair do |attr, param|
184
+ value = self.send(attr)
185
+ if value.nil?
186
+ is_nullable = self.class.openapi_nullable.include?(attr)
187
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
188
+ end
189
+
190
+ hash[param] = _to_hash(value)
191
+ end
192
+ hash
193
+ end
194
+
195
+ # Outputs non-array value in the form of hash
196
+ # For object, use to_hash. Otherwise, just return the value
197
+ # @param [Object] value Any valid value
198
+ # @return [Hash] Returns the value in the form of hash
199
+ def _to_hash(value)
200
+ if value.is_a?(Array)
201
+ value.compact.map { |v| _to_hash(v) }
202
+ elsif value.is_a?(Hash)
203
+ {}.tap do |hash|
204
+ value.each { |k, v| hash[k] = _to_hash(v) }
205
+ end
206
+ elsif value.respond_to? :to_hash
207
+ value.to_hash
208
+ else
209
+ value
210
+ end
211
+ end
212
+ end
213
+ end
@@ -80,6 +80,9 @@ module TalonOne
80
80
  # A campaign state described exactly as in the Campaign Manager.
81
81
  attr_accessor :frontend_state
82
82
 
83
+ # Indicates whether the linked stores were imported via a CSV file.
84
+ attr_accessor :stores_imported
85
+
83
86
  class EnumAttributeValidator
84
87
  attr_reader :datatype
85
88
  attr_reader :allowable_values
@@ -126,7 +129,8 @@ module TalonOne
126
129
  :'created_by' => :'createdBy',
127
130
  :'updated_by' => :'updatedBy',
128
131
  :'template_id' => :'templateId',
129
- :'frontend_state' => :'frontendState'
132
+ :'frontend_state' => :'frontendState',
133
+ :'stores_imported' => :'storesImported'
130
134
  }
131
135
  end
132
136
 
@@ -154,7 +158,8 @@ module TalonOne
154
158
  :'created_by' => :'String',
155
159
  :'updated_by' => :'String',
156
160
  :'template_id' => :'Integer',
157
- :'frontend_state' => :'String'
161
+ :'frontend_state' => :'String',
162
+ :'stores_imported' => :'Boolean'
158
163
  }
159
164
  end
160
165
 
@@ -268,6 +273,10 @@ module TalonOne
268
273
  if attributes.key?(:'frontend_state')
269
274
  self.frontend_state = attributes[:'frontend_state']
270
275
  end
276
+
277
+ if attributes.key?(:'stores_imported')
278
+ self.stores_imported = attributes[:'stores_imported']
279
+ end
271
280
  end
272
281
 
273
282
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -282,6 +291,10 @@ module TalonOne
282
291
  invalid_properties.push('invalid value for "frontend_state", frontend_state cannot be nil.')
283
292
  end
284
293
 
294
+ if @stores_imported.nil?
295
+ invalid_properties.push('invalid value for "stores_imported", stores_imported cannot be nil.')
296
+ end
297
+
285
298
  invalid_properties
286
299
  end
287
300
 
@@ -290,15 +303,16 @@ module TalonOne
290
303
  def valid?
291
304
  return false if @budgets.nil?
292
305
  return false if @frontend_state.nil?
293
- frontend_state_validator = EnumAttributeValidator.new('String', ["expired", "scheduled", "running", "draft"])
306
+ frontend_state_validator = EnumAttributeValidator.new('String', ["expired", "scheduled", "running", "disabled", "archived"])
294
307
  return false unless frontend_state_validator.valid?(@frontend_state)
308
+ return false if @stores_imported.nil?
295
309
  true
296
310
  end
297
311
 
298
312
  # Custom attribute writer method checking allowed values (enum).
299
313
  # @param [Object] frontend_state Object to be assigned
300
314
  def frontend_state=(frontend_state)
301
- validator = EnumAttributeValidator.new('String', ["expired", "scheduled", "running", "draft"])
315
+ validator = EnumAttributeValidator.new('String', ["expired", "scheduled", "running", "disabled", "archived"])
302
316
  unless validator.valid?(frontend_state)
303
317
  fail ArgumentError, "invalid value for \"frontend_state\", must be one of #{validator.allowable_values}."
304
318
  end
@@ -331,7 +345,8 @@ module TalonOne
331
345
  created_by == o.created_by &&
332
346
  updated_by == o.updated_by &&
333
347
  template_id == o.template_id &&
334
- frontend_state == o.frontend_state
348
+ frontend_state == o.frontend_state &&
349
+ stores_imported == o.stores_imported
335
350
  end
336
351
 
337
352
  # @see the `==` method
@@ -343,7 +358,7 @@ module TalonOne
343
358
  # Calculates hash code according to all attributes.
344
359
  # @return [Integer] Hash code
345
360
  def hash
346
- [budgets, coupon_redemption_count, referral_redemption_count, discount_count, discount_effect_count, coupon_creation_count, custom_effect_count, referral_creation_count, add_free_item_effect_count, awarded_giveaways_count, created_loyalty_points_count, created_loyalty_points_effect_count, redeemed_loyalty_points_count, redeemed_loyalty_points_effect_count, call_api_effect_count, reservecoupon_effect_count, last_activity, updated, created_by, updated_by, template_id, frontend_state].hash
361
+ [budgets, coupon_redemption_count, referral_redemption_count, discount_count, discount_effect_count, coupon_creation_count, custom_effect_count, referral_creation_count, add_free_item_effect_count, awarded_giveaways_count, created_loyalty_points_count, created_loyalty_points_effect_count, redeemed_loyalty_points_count, redeemed_loyalty_points_effect_count, call_api_effect_count, reservecoupon_effect_count, last_activity, updated, created_by, updated_by, template_id, frontend_state, stores_imported].hash
347
362
  end
348
363
 
349
364
  # Builds the object from hash
@@ -0,0 +1,225 @@
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 access the Campaign Manager at `https://yourbaseurl.talon.one/`, the URL for the [updateCustomerSessionV2](https://docs.talon.one/integration-api#operation/updateCustomerSessionV2) endpoint is `https://yourbaseurl.talon.one/v2/customer_sessions/{Id}`
5
+
6
+ The version of the OpenAPI document:
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 4.3.1
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module TalonOne
16
+ class AnalyticsDataPoint
17
+ attr_accessor :total
18
+
19
+ attr_accessor :influenced
20
+
21
+ # Attribute mapping from ruby-style variable name to JSON key.
22
+ def self.attribute_map
23
+ {
24
+ :'total' => :'total',
25
+ :'influenced' => :'influenced'
26
+ }
27
+ end
28
+
29
+ # Attribute type mapping.
30
+ def self.openapi_types
31
+ {
32
+ :'total' => :'Float',
33
+ :'influenced' => :'Float'
34
+ }
35
+ end
36
+
37
+ # List of attributes with nullable: true
38
+ def self.openapi_nullable
39
+ Set.new([
40
+ ])
41
+ end
42
+
43
+ # Initializes the object
44
+ # @param [Hash] attributes Model attributes in the form of hash
45
+ def initialize(attributes = {})
46
+ if (!attributes.is_a?(Hash))
47
+ fail ArgumentError, "The input argument (attributes) must be a hash in `TalonOne::AnalyticsDataPoint` initialize method"
48
+ end
49
+
50
+ # check to see if the attribute exists and convert string to symbol for hash key
51
+ attributes = attributes.each_with_object({}) { |(k, v), h|
52
+ if (!self.class.attribute_map.key?(k.to_sym))
53
+ fail ArgumentError, "`#{k}` is not a valid attribute in `TalonOne::AnalyticsDataPoint`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
54
+ end
55
+ h[k.to_sym] = v
56
+ }
57
+
58
+ if attributes.key?(:'total')
59
+ self.total = attributes[:'total']
60
+ end
61
+
62
+ if attributes.key?(:'influenced')
63
+ self.influenced = attributes[:'influenced']
64
+ end
65
+ end
66
+
67
+ # Show invalid properties with the reasons. Usually used together with valid?
68
+ # @return Array for valid properties with the reasons
69
+ def list_invalid_properties
70
+ invalid_properties = Array.new
71
+ if @total.nil?
72
+ invalid_properties.push('invalid value for "total", total cannot be nil.')
73
+ end
74
+
75
+ if @influenced.nil?
76
+ invalid_properties.push('invalid value for "influenced", influenced cannot be nil.')
77
+ end
78
+
79
+ invalid_properties
80
+ end
81
+
82
+ # Check to see if the all the properties in the model are valid
83
+ # @return true if the model is valid
84
+ def valid?
85
+ return false if @total.nil?
86
+ return false if @influenced.nil?
87
+ true
88
+ end
89
+
90
+ # Checks equality by comparing each attribute.
91
+ # @param [Object] Object to be compared
92
+ def ==(o)
93
+ return true if self.equal?(o)
94
+ self.class == o.class &&
95
+ total == o.total &&
96
+ influenced == o.influenced
97
+ end
98
+
99
+ # @see the `==` method
100
+ # @param [Object] Object to be compared
101
+ def eql?(o)
102
+ self == o
103
+ end
104
+
105
+ # Calculates hash code according to all attributes.
106
+ # @return [Integer] Hash code
107
+ def hash
108
+ [total, influenced].hash
109
+ end
110
+
111
+ # Builds the object from hash
112
+ # @param [Hash] attributes Model attributes in the form of hash
113
+ # @return [Object] Returns the model itself
114
+ def self.build_from_hash(attributes)
115
+ new.build_from_hash(attributes)
116
+ end
117
+
118
+ # Builds the object from hash
119
+ # @param [Hash] attributes Model attributes in the form of hash
120
+ # @return [Object] Returns the model itself
121
+ def build_from_hash(attributes)
122
+ return nil unless attributes.is_a?(Hash)
123
+ self.class.openapi_types.each_pair do |key, type|
124
+ if type =~ /\AArray<(.*)>/i
125
+ # check to ensure the input is an array given that the attribute
126
+ # is documented as an array but the input is not
127
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
128
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
129
+ end
130
+ elsif !attributes[self.class.attribute_map[key]].nil?
131
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
132
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
133
+ end
134
+
135
+ self
136
+ end
137
+
138
+ # Deserializes the data based on type
139
+ # @param string type Data type
140
+ # @param string value Value to be deserialized
141
+ # @return [Object] Deserialized data
142
+ def _deserialize(type, value)
143
+ case type.to_sym
144
+ when :DateTime
145
+ DateTime.parse(value)
146
+ when :Date
147
+ Date.parse(value)
148
+ when :String
149
+ value.to_s
150
+ when :Integer
151
+ value.to_i
152
+ when :Float
153
+ value.to_f
154
+ when :Boolean
155
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
156
+ true
157
+ else
158
+ false
159
+ end
160
+ when :Object
161
+ # generic object (usually a Hash), return directly
162
+ value
163
+ when /\AArray<(?<inner_type>.+)>\z/
164
+ inner_type = Regexp.last_match[:inner_type]
165
+ value.map { |v| _deserialize(inner_type, v) }
166
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
167
+ k_type = Regexp.last_match[:k_type]
168
+ v_type = Regexp.last_match[:v_type]
169
+ {}.tap do |hash|
170
+ value.each do |k, v|
171
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
172
+ end
173
+ end
174
+ else # model
175
+ TalonOne.const_get(type).build_from_hash(value)
176
+ end
177
+ end
178
+
179
+ # Returns the string representation of the object
180
+ # @return [String] String presentation of the object
181
+ def to_s
182
+ to_hash.to_s
183
+ end
184
+
185
+ # to_body is an alias to to_hash (backward compatibility)
186
+ # @return [Hash] Returns the object in the form of hash
187
+ def to_body
188
+ to_hash
189
+ end
190
+
191
+ # Returns the object in the form of hash
192
+ # @return [Hash] Returns the object in the form of hash
193
+ def to_hash
194
+ hash = {}
195
+ self.class.attribute_map.each_pair do |attr, param|
196
+ value = self.send(attr)
197
+ if value.nil?
198
+ is_nullable = self.class.openapi_nullable.include?(attr)
199
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
200
+ end
201
+
202
+ hash[param] = _to_hash(value)
203
+ end
204
+ hash
205
+ end
206
+
207
+ # Outputs non-array value in the form of hash
208
+ # For object, use to_hash. Otherwise, just return the value
209
+ # @param [Object] value Any valid value
210
+ # @return [Hash] Returns the value in the form of hash
211
+ def _to_hash(value)
212
+ if value.is_a?(Array)
213
+ value.compact.map { |v| _to_hash(v) }
214
+ elsif value.is_a?(Hash)
215
+ {}.tap do |hash|
216
+ value.each { |k, v| hash[k] = _to_hash(v) }
217
+ end
218
+ elsif value.respond_to? :to_hash
219
+ value.to_hash
220
+ else
221
+ value
222
+ end
223
+ end
224
+ end
225
+ end