talon_one 1.3.0 → 2.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.rspec +2 -0
- data/Gemfile +3 -1
- data/README.md +196 -30
- data/Rakefile +2 -0
- data/docs/APIError.md +11 -0
- data/docs/AcceptCouponEffectProps.md +17 -0
- data/docs/AcceptReferralEffectProps.md +17 -0
- data/docs/AccessLogEntry.md +15 -0
- data/docs/Account.md +28 -2
- data/docs/AccountAdditionalCost.md +29 -0
- data/docs/AccountAnalytics.md +44 -14
- data/docs/AccountEntity.md +9 -0
- data/docs/AccountLimits.md +32 -11
- data/docs/AddFreeItemEffectProps.md +19 -0
- data/docs/AddLoyaltyPointsEffectProps.md +29 -0
- data/docs/AdditionalCost.md +17 -0
- data/docs/Application.md +33 -2
- data/docs/ApplicationAPIKey.md +19 -2
- data/docs/ApplicationApiHealth.md +10 -0
- data/docs/ApplicationCustomer.md +21 -2
- data/docs/ApplicationCustomerEntity.md +9 -0
- data/docs/ApplicationCustomerSearch.md +12 -1
- data/docs/ApplicationEntity.md +9 -0
- data/docs/ApplicationEvent.md +17 -1
- data/docs/ApplicationSession.md +25 -3
- data/docs/ApplicationSessionEntity.md +9 -0
- data/docs/Attribute.md +23 -2
- data/docs/AttributesMandatory.md +19 -0
- data/docs/AttributesSettings.md +17 -0
- data/docs/Audience.md +27 -0
- data/docs/AudienceMembership.md +19 -0
- data/docs/BaseSamlConnection.md +31 -0
- data/docs/Binding.md +10 -0
- data/docs/Campaign.md +36 -1
- data/docs/CampaignAnalytics.md +46 -3
- data/docs/CampaignCopy.md +19 -1
- data/docs/CampaignEntity.md +9 -0
- data/docs/CampaignGroup.md +31 -0
- data/docs/CampaignGroupEntity.md +17 -0
- data/docs/CampaignSearch.md +10 -1
- data/docs/CampaignSet.md +14 -0
- data/docs/CampaignSetBranchNode.md +12 -0
- data/docs/CampaignSetLeafNode.md +10 -0
- data/docs/CampaignSetNode.md +9 -0
- data/docs/CartItem.md +21 -1
- data/docs/CartItemAdjustment.md +11 -0
- data/docs/Change.md +16 -2
- data/docs/ChangeProfilePassword.md +19 -0
- data/docs/CodeGeneratorSettings.md +10 -0
- data/docs/Coupon.md +31 -3
- data/docs/CouponConstraints.md +13 -0
- data/docs/CouponCreatedEffectProps.md +19 -0
- data/docs/CouponRejectionReason.md +11 -0
- data/docs/CouponReservations.md +9 -0
- data/docs/CouponSearch.md +10 -1
- data/docs/CouponValue.md +9 -0
- data/docs/CreateApplicationAPIKey.md +12 -0
- data/docs/CustomerActivityReport.md +22 -1
- data/docs/CustomerAnalytics.md +15 -0
- data/docs/CustomerInventory.md +23 -0
- data/docs/CustomerProfile.md +20 -2
- data/docs/CustomerProfileAudienceRequest.md +17 -0
- data/docs/CustomerProfileAudienceRequestItem.md +21 -0
- data/docs/CustomerProfileIntegrationRequestV2.md +19 -0
- data/docs/CustomerProfileSearchQuery.md +12 -1
- data/docs/CustomerSession.md +24 -3
- data/docs/CustomerSessionV2.md +45 -0
- data/docs/DeductLoyaltyPointsEffectProps.md +23 -0
- data/docs/Effect.md +27 -0
- data/docs/EffectEntity.md +25 -0
- data/docs/EmailEntity.md +9 -0
- data/docs/Entity.md +10 -0
- data/docs/EntityWithTalangVisibleID.md +19 -0
- data/docs/Environment.md +15 -0
- data/docs/ErrorEffectProps.md +17 -0
- data/docs/ErrorResponse.md +10 -0
- data/docs/ErrorSource.md +12 -0
- data/docs/Event.md +19 -1
- data/docs/EventType.md +21 -1
- data/docs/Export.md +15 -1
- data/docs/FeatureFlag.md +12 -0
- data/docs/FeatureFlags.md +15 -3
- data/docs/FeaturesFeed.md +10 -0
- data/docs/FeedNotification.md +27 -0
- data/docs/FuncArgDef.md +10 -0
- data/docs/FunctionDef.md +13 -0
- data/docs/Import.md +14 -0
- data/docs/ImportCoupons.md +9 -0
- data/docs/InlineResponse200.md +10 -0
- data/docs/InlineResponse2001.md +11 -1
- data/docs/InlineResponse20010.md +11 -1
- data/docs/InlineResponse20011.md +10 -0
- data/docs/InlineResponse20012.md +13 -1
- data/docs/InlineResponse20013.md +11 -1
- data/docs/InlineResponse20014.md +10 -0
- data/docs/InlineResponse20015.md +11 -1
- data/docs/InlineResponse20016.md +11 -1
- data/docs/InlineResponse20017.md +10 -0
- data/docs/InlineResponse20018.md +11 -1
- data/docs/InlineResponse20019.md +10 -0
- data/docs/InlineResponse2002.md +11 -1
- data/docs/InlineResponse20020.md +11 -1
- data/docs/InlineResponse20021.md +11 -1
- data/docs/InlineResponse20022.md +11 -1
- data/docs/InlineResponse20023.md +11 -1
- data/docs/InlineResponse20024.md +11 -1
- data/docs/InlineResponse20025.md +12 -3
- data/docs/InlineResponse20026.md +11 -1
- data/docs/InlineResponse20027.md +14 -2
- data/docs/InlineResponse20028.md +11 -1
- data/docs/InlineResponse20029.md +19 -0
- data/docs/InlineResponse2003.md +11 -1
- data/docs/InlineResponse20030.md +19 -0
- data/docs/InlineResponse2004.md +11 -1
- data/docs/InlineResponse2005.md +11 -1
- data/docs/InlineResponse2006.md +10 -0
- data/docs/InlineResponse2007.md +11 -1
- data/docs/InlineResponse2008.md +10 -0
- data/docs/InlineResponse2009.md +10 -0
- data/docs/IntegrationApi.md +327 -72
- data/docs/IntegrationEntity.md +11 -1
- data/docs/IntegrationEvent.md +12 -1
- data/docs/IntegrationProfileEntity.md +9 -0
- data/docs/IntegrationRequest.md +19 -0
- data/docs/IntegrationState.md +13 -0
- data/docs/IntegrationStateV2.md +35 -0
- data/docs/LedgerEntry.md +18 -0
- data/docs/LibraryAttribute.md +15 -0
- data/docs/LimitConfig.md +11 -0
- data/docs/LoginParams.md +10 -0
- data/docs/Loyalty.md +9 -0
- data/docs/LoyaltyLedger.md +11 -1
- data/docs/LoyaltyLedgerEntry.md +23 -1
- data/docs/LoyaltyMembership.md +10 -0
- data/docs/LoyaltyPoints.md +15 -1
- data/docs/LoyaltyProgram.md +20 -2
- data/docs/LoyaltyProgramBalance.md +9 -0
- data/docs/LoyaltyProgramLedgers.md +14 -2
- data/docs/LoyaltyStatistics.md +23 -0
- data/docs/LoyaltySubLedger.md +28 -3
- data/docs/ManagementApi.md +927 -853
- data/docs/ManagerConfig.md +9 -0
- data/docs/Meta.md +16 -3
- data/docs/MultiApplicationEntity.md +9 -0
- data/docs/MultipleCustomerProfileIntegrationRequest.md +17 -0
- data/docs/MultipleCustomerProfileIntegrationRequestItem.md +19 -0
- data/docs/MultipleCustomerProfileIntegrationResponseV2.md +17 -0
- data/docs/MutableEntity.md +9 -0
- data/docs/NewAccount.md +9 -0
- data/docs/NewAccountSignUp.md +11 -0
- data/docs/NewAdditionalCost.md +23 -0
- data/docs/NewApplication.md +29 -1
- data/docs/NewApplicationAPIKey.md +20 -2
- data/docs/NewAttribute.md +20 -2
- data/docs/NewAudience.md +21 -0
- data/docs/NewCampaign.md +23 -1
- data/docs/NewCampaignGroup.md +23 -0
- data/docs/NewCampaignSet.md +12 -0
- data/docs/NewCoupons.md +20 -1
- data/docs/NewCustomerProfile.md +10 -1
- data/docs/NewCustomerSession.md +17 -1
- data/docs/NewCustomerSessionV2.md +31 -0
- data/docs/NewEvent.md +13 -1
- data/docs/NewEventType.md +19 -1
- data/docs/NewFeatureFlags.md +14 -3
- data/docs/NewImport.md +9 -0
- data/docs/NewInvitation.md +12 -0
- data/docs/NewInviteEmail.md +10 -0
- data/docs/NewLoyaltyProgram.md +18 -2
- data/docs/NewPassword.md +10 -0
- data/docs/NewPasswordEmail.md +9 -0
- data/docs/NewReferral.md +13 -0
- data/docs/NewRole.md +12 -0
- data/docs/NewRuleset.md +13 -1
- data/docs/NewSamlConnection.md +21 -3
- data/docs/NewTemplateDef.md +16 -1
- data/docs/NewUser.md +12 -0
- data/docs/NewWebhook.md +17 -1
- data/docs/Notification.md +11 -0
- data/docs/RedeemReferralEffectProps.md +19 -0
- data/docs/Referral.md +18 -0
- data/docs/ReferralCreatedEffectProps.md +17 -0
- data/docs/ReferralRejectionReason.md +11 -0
- data/docs/RejectCouponEffectProps.md +19 -0
- data/docs/RejectReferralEffectProps.md +19 -0
- data/docs/Role.md +18 -2
- data/docs/RoleAssign.md +10 -0
- data/docs/RoleMembership.md +10 -0
- data/docs/RollbackCouponEffectProps.md +17 -0
- data/docs/RollbackDiscountEffectProps.md +19 -0
- data/docs/Rule.md +13 -0
- data/docs/Ruleset.md +18 -1
- data/docs/SamlConnection.md +24 -6
- data/docs/SamlConnectionMetadata.md +23 -0
- data/docs/SamlLoginEndpoint.md +19 -0
- data/docs/Session.md +11 -0
- data/docs/SetDiscountEffectProps.md +21 -0
- data/docs/SetDiscountPerItemEffectProps.md +23 -0
- data/docs/ShowBundleMetadataEffectProps.md +21 -0
- data/docs/ShowNotificationEffectProps.md +21 -0
- data/docs/SlotDef.md +15 -1
- data/docs/TemplateArgDef.md +13 -1
- data/docs/TemplateDef.md +20 -1
- data/docs/TriggerWebhookEffectProps.md +19 -0
- data/docs/UpdateAccount.md +16 -1
- data/docs/UpdateApplication.md +28 -1
- data/docs/UpdateAttributeEffectProps.md +19 -0
- data/docs/UpdateAudience.md +17 -0
- data/docs/UpdateCampaign.md +23 -1
- data/docs/UpdateCampaignGroup.md +23 -0
- data/docs/UpdateCoupon.md +16 -1
- data/docs/UpdateCouponBatch.md +16 -1
- data/docs/UpdateLoyaltyProgram.md +17 -2
- data/docs/UpdateRole.md +13 -1
- data/docs/UpdateUser.md +14 -6
- data/docs/UpdateUserLatestFeedTimestamp.md +17 -0
- data/docs/User.md +25 -5
- data/docs/UserEntity.md +9 -0
- data/docs/UserFeedNotifications.md +19 -0
- data/docs/Webhook.md +20 -1
- data/docs/WebhookActivationLogEntry.md +13 -0
- data/docs/WebhookLogEntry.md +18 -0
- data/lib/talon_one.rb +88 -35
- data/lib/talon_one/api/integration_api.rb +518 -138
- data/lib/talon_one/api/management_api.rb +2328 -1477
- data/lib/talon_one/api_client.rb +45 -46
- data/lib/talon_one/api_error.rb +22 -3
- data/lib/talon_one/configuration.rb +48 -9
- data/lib/talon_one/models/accept_coupon_effect_props.rb +213 -0
- data/lib/talon_one/models/accept_referral_effect_props.rb +213 -0
- data/lib/talon_one/models/access_log_entry.rb +47 -24
- data/lib/talon_one/models/account.rb +72 -49
- data/lib/talon_one/models/account_additional_cost.rb +300 -0
- data/lib/talon_one/models/account_analytics.rb +151 -68
- data/lib/talon_one/models/account_entity.rb +39 -16
- data/lib/talon_one/models/account_limits.rb +83 -45
- data/lib/talon_one/models/add_free_item_effect_props.rb +228 -0
- data/lib/talon_one/models/add_loyalty_points_effect_props.rb +293 -0
- data/lib/talon_one/models/additional_cost.rb +211 -0
- data/lib/talon_one/models/api_error.rb +40 -17
- data/lib/talon_one/models/application.rb +131 -77
- data/lib/talon_one/models/application_api_health.rb +43 -20
- data/lib/talon_one/models/application_api_key.rb +121 -53
- data/lib/talon_one/models/application_customer.rb +66 -31
- data/lib/talon_one/models/application_customer_entity.rb +39 -16
- data/lib/talon_one/models/application_customer_search.rb +42 -19
- data/lib/talon_one/models/application_entity.rb +39 -16
- data/lib/talon_one/models/application_event.rb +48 -25
- data/lib/talon_one/models/application_session.rb +73 -35
- data/lib/talon_one/models/application_session_entity.rb +39 -16
- data/lib/talon_one/models/attribute.rb +73 -38
- data/lib/talon_one/models/attributes_mandatory.rb +222 -0
- data/lib/talon_one/models/attributes_settings.rb +207 -0
- data/lib/talon_one/models/audience.rb +360 -0
- data/lib/talon_one/models/audience_membership.rb +227 -0
- data/lib/talon_one/models/base_saml_connection.rb +359 -0
- data/lib/talon_one/models/binding.rb +39 -16
- data/lib/talon_one/models/campaign.rb +93 -58
- data/lib/talon_one/models/campaign_analytics.rb +223 -50
- data/lib/talon_one/models/campaign_copy.rb +86 -21
- data/lib/talon_one/models/campaign_entity.rb +39 -16
- data/lib/talon_one/models/campaign_group.rb +326 -0
- data/lib/talon_one/models/campaign_group_entity.rb +209 -0
- data/lib/talon_one/models/campaign_search.rb +38 -15
- data/lib/talon_one/models/campaign_set.rb +77 -20
- data/lib/talon_one/models/campaign_set_branch_node.rb +47 -24
- data/lib/talon_one/models/campaign_set_leaf_node.rb +43 -20
- data/lib/talon_one/models/campaign_set_node.rb +38 -15
- data/lib/talon_one/models/cart_item.rb +49 -26
- data/lib/talon_one/models/cart_item_adjustment.rb +43 -20
- data/lib/talon_one/models/change.rb +46 -23
- data/lib/talon_one/models/change_profile_password.rb +227 -0
- data/lib/talon_one/models/code_generator_settings.rb +41 -18
- data/lib/talon_one/models/coupon.rb +117 -40
- data/lib/talon_one/models/coupon_constraints.rb +78 -21
- data/lib/talon_one/models/coupon_created_effect_props.rb +228 -0
- data/lib/talon_one/models/coupon_rejection_reason.rb +45 -22
- data/lib/talon_one/models/coupon_reservations.rb +39 -16
- data/lib/talon_one/models/coupon_search.rb +38 -15
- data/lib/talon_one/models/coupon_value.rb +38 -15
- data/lib/talon_one/models/create_application_api_key.rb +87 -20
- data/lib/talon_one/models/customer_activity_report.rb +62 -39
- data/lib/talon_one/models/customer_analytics.rb +51 -28
- data/lib/talon_one/models/customer_inventory.rb +237 -0
- data/lib/talon_one/models/customer_profile.rb +65 -30
- data/lib/talon_one/models/customer_profile_audience_request.rb +208 -0
- data/lib/talon_one/models/customer_profile_audience_request_item.rb +273 -0
- data/lib/talon_one/models/customer_profile_integration_request_v2.rb +242 -0
- data/lib/talon_one/models/customer_profile_search_query.rb +42 -19
- data/lib/talon_one/models/customer_session.rb +60 -37
- data/lib/talon_one/models/customer_session_v2.rb +447 -0
- data/lib/talon_one/models/deduct_loyalty_points_effect_props.rb +258 -0
- data/lib/talon_one/models/effect.rb +287 -0
- data/lib/talon_one/models/effect_entity.rb +273 -0
- data/lib/talon_one/models/email_entity.rb +38 -15
- data/lib/talon_one/models/entity.rb +39 -16
- data/lib/talon_one/models/entity_with_talang_visible_id.rb +227 -0
- data/lib/talon_one/models/environment.rb +45 -22
- data/lib/talon_one/models/error_effect_props.rb +213 -0
- data/lib/talon_one/models/error_response.rb +39 -16
- data/lib/talon_one/models/error_source.rb +41 -18
- data/lib/talon_one/models/event.rb +51 -28
- data/lib/talon_one/models/event_type.rb +59 -36
- data/lib/talon_one/models/export.rb +48 -25
- data/lib/talon_one/models/feature_flag.rb +41 -18
- data/lib/talon_one/models/feature_flags.rb +46 -23
- data/lib/talon_one/models/features_feed.rb +40 -17
- data/lib/talon_one/models/feed_notification.rb +322 -0
- data/lib/talon_one/models/func_arg_def.rb +42 -19
- data/lib/talon_one/models/function_def.rb +42 -19
- data/lib/talon_one/models/import.rb +48 -25
- data/lib/talon_one/models/import_coupons.rb +38 -15
- data/lib/talon_one/models/{inline_response_200.rb → inline_response200.rb} +40 -17
- data/lib/talon_one/models/{inline_response_200_2.rb → inline_response2001.rb} +41 -18
- data/lib/talon_one/models/{inline_response_200_10.rb → inline_response20010.rb} +41 -18
- data/lib/talon_one/models/{inline_response_200_11.rb → inline_response20011.rb} +40 -17
- data/lib/talon_one/models/inline_response20012.rb +231 -0
- data/lib/talon_one/models/{inline_response_200_13.rb → inline_response20013.rb} +41 -18
- data/lib/talon_one/models/{inline_response_200_14.rb → inline_response20014.rb} +40 -17
- data/lib/talon_one/models/{inline_response_200_15.rb → inline_response20015.rb} +41 -18
- data/lib/talon_one/models/inline_response20016.rb +222 -0
- data/lib/talon_one/models/{inline_response_200_17.rb → inline_response20017.rb} +40 -17
- data/lib/talon_one/models/{inline_response_200_18.rb → inline_response20018.rb} +41 -18
- data/lib/talon_one/models/{inline_response_200_19.rb → inline_response20019.rb} +40 -17
- data/lib/talon_one/models/{inline_response_200_3.rb → inline_response2002.rb} +41 -18
- data/lib/talon_one/models/{inline_response_200_12.rb → inline_response20020.rb} +42 -19
- data/lib/talon_one/models/inline_response20021.rb +227 -0
- data/lib/talon_one/models/{inline_response_200_20.rb → inline_response20022.rb} +41 -18
- data/lib/talon_one/models/{inline_response_200_21.rb → inline_response20023.rb} +41 -18
- data/lib/talon_one/models/{inline_response_200_22.rb → inline_response20024.rb} +41 -18
- data/lib/talon_one/models/{inline_response_200_23.rb → inline_response20025.rb} +41 -18
- data/lib/talon_one/models/{inline_response_200_24.rb → inline_response20026.rb} +41 -18
- data/lib/talon_one/models/{inline_response_200_25.rb → inline_response20027.rb} +44 -21
- data/lib/talon_one/models/{inline_response_200_26.rb → inline_response20028.rb} +41 -18
- data/lib/talon_one/models/{inline_response_200_27.rb → inline_response20029.rb} +41 -18
- data/lib/talon_one/models/{inline_response_200_4.rb → inline_response2003.rb} +41 -18
- data/lib/talon_one/models/{inline_response_200_28.rb → inline_response20030.rb} +41 -18
- data/lib/talon_one/models/{inline_response_200_1.rb → inline_response2004.rb} +41 -18
- data/lib/talon_one/models/{inline_response_200_5.rb → inline_response2005.rb} +41 -18
- data/lib/talon_one/models/{inline_response_200_6.rb → inline_response2006.rb} +40 -17
- data/lib/talon_one/models/{inline_response_200_7.rb → inline_response2007.rb} +41 -18
- data/lib/talon_one/models/{inline_response_200_8.rb → inline_response2008.rb} +40 -17
- data/lib/talon_one/models/{inline_response_200_9.rb → inline_response2009.rb} +40 -17
- data/lib/talon_one/models/integration_entity.rb +41 -18
- data/lib/talon_one/models/integration_event.rb +41 -18
- data/lib/talon_one/models/integration_profile_entity.rb +39 -16
- data/lib/talon_one/models/integration_request.rb +246 -0
- data/lib/talon_one/models/integration_state.rb +42 -19
- data/lib/talon_one/models/integration_state_v2.rb +313 -0
- data/lib/talon_one/models/ledger_entry.rb +53 -30
- data/lib/talon_one/models/library_attribute.rb +50 -27
- data/lib/talon_one/models/limit_config.rb +43 -20
- data/lib/talon_one/models/login_params.rb +39 -16
- data/lib/talon_one/models/loyalty.rb +38 -15
- data/lib/talon_one/models/loyalty_ledger.rb +40 -18
- data/lib/talon_one/models/loyalty_ledger_entry.rb +76 -67
- data/lib/talon_one/models/loyalty_membership.rb +40 -17
- data/lib/talon_one/models/loyalty_points.rb +59 -26
- data/lib/talon_one/models/loyalty_program.rb +67 -29
- data/lib/talon_one/models/loyalty_program_balance.rb +39 -16
- data/lib/talon_one/models/loyalty_program_ledgers.rb +43 -21
- data/lib/talon_one/models/loyalty_statistics.rb +258 -0
- data/lib/talon_one/models/loyalty_sub_ledger.rb +144 -24
- data/lib/talon_one/models/manager_config.rb +39 -16
- data/lib/talon_one/models/meta.rb +45 -21
- data/lib/talon_one/models/multi_application_entity.rb +39 -16
- data/lib/talon_one/models/multiple_customer_profile_integration_request.rb +208 -0
- data/lib/talon_one/models/multiple_customer_profile_integration_request_item.rb +223 -0
- data/lib/talon_one/models/multiple_customer_profile_integration_response_v2.rb +208 -0
- data/lib/talon_one/models/mutable_entity.rb +38 -15
- data/lib/talon_one/models/new_account.rb +39 -16
- data/lib/talon_one/models/new_account_sign_up.rb +41 -18
- data/lib/talon_one/models/new_additional_cost.rb +255 -0
- data/lib/talon_one/models/new_application.rb +138 -48
- data/lib/talon_one/models/new_application_api_key.rb +119 -52
- data/lib/talon_one/models/new_attribute.rb +69 -34
- data/lib/talon_one/models/new_audience.rb +314 -0
- data/lib/talon_one/models/new_campaign.rb +73 -38
- data/lib/talon_one/models/new_campaign_group.rb +265 -0
- data/lib/talon_one/models/new_campaign_set.rb +75 -18
- data/lib/talon_one/models/new_coupons.rb +89 -32
- data/lib/talon_one/models/new_customer_profile.rb +38 -15
- data/lib/talon_one/models/new_customer_session.rb +50 -27
- data/lib/talon_one/models/new_customer_session_v2.rb +322 -0
- data/lib/talon_one/models/new_event.rb +43 -20
- data/lib/talon_one/models/new_event_type.rb +57 -34
- data/lib/talon_one/models/new_feature_flags.rb +44 -21
- data/lib/talon_one/models/new_import.rb +41 -18
- data/lib/talon_one/models/new_invitation.rb +41 -18
- data/lib/talon_one/models/new_invite_email.rb +39 -16
- data/lib/talon_one/models/new_loyalty_program.rb +64 -26
- data/lib/talon_one/models/new_password.rb +40 -17
- data/lib/talon_one/models/new_password_email.rb +38 -15
- data/lib/talon_one/models/new_referral.rb +47 -24
- data/lib/talon_one/models/new_role.rb +41 -18
- data/lib/talon_one/models/new_ruleset.rb +43 -20
- data/lib/talon_one/models/new_saml_connection.rb +105 -67
- data/lib/talon_one/models/new_template_def.rb +45 -22
- data/lib/talon_one/models/new_user.rb +42 -19
- data/lib/talon_one/models/new_webhook.rb +50 -27
- data/lib/talon_one/models/notification.rb +40 -17
- data/lib/talon_one/models/redeem_referral_effect_props.rb +228 -0
- data/lib/talon_one/models/referral.rb +54 -31
- data/lib/talon_one/models/referral_created_effect_props.rb +213 -0
- data/lib/talon_one/models/referral_rejection_reason.rb +45 -22
- data/lib/talon_one/models/reject_coupon_effect_props.rb +228 -0
- data/lib/talon_one/models/reject_referral_effect_props.rb +228 -0
- data/lib/talon_one/models/role.rb +58 -25
- data/lib/talon_one/models/role_assign.rb +39 -16
- data/lib/talon_one/models/role_membership.rb +41 -18
- data/lib/talon_one/models/rollback_coupon_effect_props.rb +213 -0
- data/lib/talon_one/models/rollback_discount_effect_props.rb +228 -0
- data/lib/talon_one/models/rule.rb +42 -19
- data/lib/talon_one/models/ruleset.rb +51 -28
- data/lib/talon_one/models/saml_connection.rb +93 -103
- data/lib/talon_one/models/saml_connection_metadata.rb +294 -0
- data/lib/talon_one/models/saml_login_endpoint.rb +265 -0
- data/lib/talon_one/models/session.rb +41 -18
- data/lib/talon_one/models/set_discount_effect_props.rb +238 -0
- data/lib/talon_one/models/set_discount_per_item_effect_props.rb +253 -0
- data/lib/talon_one/models/show_bundle_metadata_effect_props.rb +247 -0
- data/lib/talon_one/models/show_notification_effect_props.rb +243 -0
- data/lib/talon_one/models/slot_def.rb +44 -21
- data/lib/talon_one/models/template_arg_def.rb +44 -21
- data/lib/talon_one/models/template_def.rb +50 -27
- data/lib/talon_one/models/trigger_webhook_effect_props.rb +228 -0
- data/lib/talon_one/models/update_account.rb +100 -23
- data/lib/talon_one/models/update_application.rb +135 -29
- data/lib/talon_one/models/update_attribute_effect_props.rb +228 -0
- data/lib/talon_one/models/update_audience.rb +231 -0
- data/lib/talon_one/models/update_campaign.rb +73 -38
- data/lib/talon_one/models/update_campaign_group.rb +266 -0
- data/lib/talon_one/models/update_coupon.rb +81 -24
- data/lib/talon_one/models/update_coupon_batch.rb +81 -24
- data/lib/talon_one/models/update_loyalty_program.rb +58 -25
- data/lib/talon_one/models/update_role.rb +42 -19
- data/lib/talon_one/models/update_user.rb +47 -80
- data/lib/talon_one/models/update_user_latest_feed_timestamp.rb +213 -0
- data/lib/talon_one/models/user.rb +67 -59
- data/lib/talon_one/models/user_entity.rb +39 -16
- data/lib/talon_one/models/user_feed_notifications.rb +230 -0
- data/lib/talon_one/models/webhook.rb +53 -30
- data/lib/talon_one/models/webhook_activation_log_entry.rb +46 -23
- data/lib/talon_one/models/webhook_log_entry.rb +52 -29
- data/lib/talon_one/version.rb +4 -4
- data/spec/api/integration_api_spec.rb +76 -15
- data/spec/api/management_api_spec.rb +155 -143
- data/spec/api_client_spec.rb +4 -4
- data/spec/configuration_spec.rb +6 -6
- data/spec/models/{misc_update_user_latest_feature_spec.rb → accept_coupon_effect_props_spec.rb} +11 -11
- data/spec/models/accept_referral_effect_props_spec.rb +41 -0
- data/spec/models/access_log_entry_spec.rb +4 -4
- data/spec/models/account_additional_cost_spec.rb +77 -0
- data/spec/models/account_analytics_spec.rb +33 -9
- data/spec/models/account_entity_spec.rb +4 -4
- data/spec/models/account_limits_spec.rb +10 -4
- data/spec/models/account_spec.rb +5 -5
- data/spec/models/add_free_item_effect_props_spec.rb +47 -0
- data/spec/models/add_loyalty_points_effect_props_spec.rb +77 -0
- data/spec/models/additional_cost_spec.rb +41 -0
- data/spec/models/api_error_spec.rb +4 -4
- data/spec/models/application_api_health_spec.rb +4 -4
- data/spec/models/application_api_key_spec.rb +21 -11
- data/spec/models/application_customer_entity_spec.rb +4 -4
- data/spec/models/application_customer_search_spec.rb +4 -4
- data/spec/models/application_customer_spec.rb +10 -4
- data/spec/models/application_entity_spec.rb +4 -4
- data/spec/models/application_event_spec.rb +4 -4
- data/spec/models/application_session_entity_spec.rb +4 -4
- data/spec/models/application_session_spec.rb +10 -4
- data/spec/models/application_spec.rb +43 -5
- data/spec/models/attribute_spec.rb +10 -4
- data/spec/models/attributes_mandatory_spec.rb +47 -0
- data/spec/models/attributes_settings_spec.rb +41 -0
- data/spec/models/audience_membership_spec.rb +47 -0
- data/spec/models/audience_spec.rb +75 -0
- data/spec/models/base_saml_connection_spec.rb +83 -0
- data/spec/models/binding_spec.rb +4 -4
- data/spec/models/campaign_analytics_spec.rb +64 -4
- data/spec/models/campaign_copy_spec.rb +28 -4
- data/spec/models/campaign_entity_spec.rb +4 -4
- data/spec/models/campaign_group_entity_spec.rb +41 -0
- data/spec/models/campaign_group_spec.rb +83 -0
- data/spec/models/campaign_search_spec.rb +4 -4
- data/spec/models/campaign_set_branch_node_spec.rb +4 -4
- data/spec/models/campaign_set_leaf_node_spec.rb +4 -4
- data/spec/models/campaign_set_node_spec.rb +4 -4
- data/spec/models/campaign_set_spec.rb +10 -4
- data/spec/models/campaign_spec.rb +10 -4
- data/spec/models/cart_item_adjustment_spec.rb +4 -4
- data/spec/models/cart_item_spec.rb +4 -4
- data/spec/models/change_profile_password_spec.rb +47 -0
- data/spec/models/change_spec.rb +4 -4
- data/spec/models/code_generator_settings_spec.rb +4 -4
- data/spec/models/coupon_constraints_spec.rb +10 -4
- data/spec/models/coupon_created_effect_props_spec.rb +47 -0
- data/spec/models/coupon_rejection_reason_spec.rb +5 -5
- data/spec/models/coupon_reservations_spec.rb +4 -4
- data/spec/models/coupon_search_spec.rb +4 -4
- data/spec/models/coupon_spec.rb +22 -4
- data/spec/models/coupon_value_spec.rb +4 -4
- data/spec/models/create_application_api_key_spec.rb +14 -4
- data/spec/models/customer_activity_report_spec.rb +4 -4
- data/spec/models/customer_analytics_spec.rb +4 -4
- data/spec/models/customer_inventory_spec.rb +59 -0
- data/spec/models/customer_profile_audience_request_item_spec.rb +57 -0
- data/spec/models/customer_profile_audience_request_spec.rb +41 -0
- data/spec/models/customer_profile_integration_request_v2_spec.rb +51 -0
- data/spec/models/customer_profile_search_query_spec.rb +4 -4
- data/spec/models/customer_profile_spec.rb +10 -4
- data/spec/models/customer_session_spec.rb +4 -4
- data/spec/models/customer_session_v2_spec.rb +129 -0
- data/spec/models/deduct_loyalty_points_effect_props_spec.rb +59 -0
- data/spec/models/effect_entity_spec.rb +65 -0
- data/spec/models/effect_spec.rb +71 -0
- data/spec/models/email_entity_spec.rb +4 -4
- data/spec/models/entity_spec.rb +4 -4
- data/spec/models/entity_with_talang_visible_id_spec.rb +47 -0
- data/spec/models/environment_spec.rb +4 -4
- data/spec/models/error_effect_props_spec.rb +41 -0
- data/spec/models/error_response_spec.rb +4 -4
- data/spec/models/error_source_spec.rb +4 -4
- data/spec/models/event_spec.rb +4 -4
- data/spec/models/event_type_spec.rb +4 -4
- data/spec/models/export_spec.rb +4 -4
- data/spec/models/feature_flag_spec.rb +4 -4
- data/spec/models/feature_flags_spec.rb +4 -4
- data/spec/models/features_feed_spec.rb +4 -4
- data/spec/models/feed_notification_spec.rb +75 -0
- data/spec/models/func_arg_def_spec.rb +4 -4
- data/spec/models/function_def_spec.rb +4 -4
- data/spec/models/import_coupons_spec.rb +4 -4
- data/spec/models/import_spec.rb +4 -4
- data/spec/models/{inline_response_200_10_spec.rb → inline_response20010_spec.rb} +4 -4
- data/spec/models/{inline_response_200_11_spec.rb → inline_response20011_spec.rb} +4 -4
- data/spec/models/{inline_response_200_12_spec.rb → inline_response20012_spec.rb} +10 -4
- data/spec/models/{inline_response_200_13_spec.rb → inline_response20013_spec.rb} +4 -4
- data/spec/models/{inline_response_200_14_spec.rb → inline_response20014_spec.rb} +4 -4
- data/spec/models/{inline_response_200_15_spec.rb → inline_response20015_spec.rb} +4 -4
- data/spec/models/{inline_response_200_16_spec.rb → inline_response20016_spec.rb} +5 -5
- data/spec/models/{inline_response_200_17_spec.rb → inline_response20017_spec.rb} +4 -4
- data/spec/models/{inline_response_200_18_spec.rb → inline_response20018_spec.rb} +4 -4
- data/spec/models/{inline_response_200_19_spec.rb → inline_response20019_spec.rb} +4 -4
- data/spec/models/{inline_response_200_1_spec.rb → inline_response2001_spec.rb} +4 -4
- data/spec/models/{inline_response_200_20_spec.rb → inline_response20020_spec.rb} +4 -4
- data/spec/models/{inline_response_200_21_spec.rb → inline_response20021_spec.rb} +4 -4
- data/spec/models/{inline_response_200_22_spec.rb → inline_response20022_spec.rb} +4 -4
- data/spec/models/{inline_response_200_23_spec.rb → inline_response20023_spec.rb} +4 -4
- data/spec/models/{inline_response_200_24_spec.rb → inline_response20024_spec.rb} +4 -4
- data/spec/models/{inline_response_200_25_spec.rb → inline_response20025_spec.rb} +4 -10
- data/spec/models/{inline_response_200_26_spec.rb → inline_response20026_spec.rb} +4 -4
- data/spec/models/{inline_response_200_27_spec.rb → inline_response20027_spec.rb} +10 -4
- data/spec/models/{inline_response_200_28_spec.rb → inline_response20028_spec.rb} +4 -4
- data/spec/models/inline_response20029_spec.rb +47 -0
- data/spec/models/{inline_response_200_2_spec.rb → inline_response2002_spec.rb} +4 -4
- data/spec/models/inline_response20030_spec.rb +47 -0
- data/spec/models/{inline_response_200_3_spec.rb → inline_response2003_spec.rb} +4 -4
- data/spec/models/{inline_response_200_4_spec.rb → inline_response2004_spec.rb} +4 -4
- data/spec/models/{inline_response_200_5_spec.rb → inline_response2005_spec.rb} +4 -4
- data/spec/models/{inline_response_200_6_spec.rb → inline_response2006_spec.rb} +4 -4
- data/spec/models/{inline_response_200_7_spec.rb → inline_response2007_spec.rb} +4 -4
- data/spec/models/{inline_response_200_8_spec.rb → inline_response2008_spec.rb} +4 -4
- data/spec/models/{inline_response_200_9_spec.rb → inline_response2009_spec.rb} +4 -4
- data/spec/models/{inline_response_200_spec.rb → inline_response200_spec.rb} +4 -4
- data/spec/models/integration_entity_spec.rb +4 -4
- data/spec/models/integration_event_spec.rb +4 -4
- data/spec/models/integration_profile_entity_spec.rb +4 -4
- data/spec/models/integration_request_spec.rb +51 -0
- data/spec/models/integration_state_spec.rb +4 -4
- data/spec/models/integration_state_v2_spec.rb +95 -0
- data/spec/models/ledger_entry_spec.rb +4 -4
- data/spec/models/library_attribute_spec.rb +4 -4
- data/spec/models/limit_config_spec.rb +4 -4
- data/spec/models/login_params_spec.rb +4 -4
- data/spec/models/loyalty_ledger_entry_spec.rb +16 -8
- data/spec/models/loyalty_ledger_spec.rb +4 -4
- data/spec/models/loyalty_membership_spec.rb +4 -4
- data/spec/models/loyalty_points_spec.rb +11 -5
- data/spec/models/loyalty_program_balance_spec.rb +4 -4
- data/spec/models/loyalty_program_ledgers_spec.rb +4 -4
- data/spec/models/loyalty_program_spec.rb +10 -4
- data/spec/models/loyalty_spec.rb +4 -4
- data/spec/models/loyalty_statistics_spec.rb +59 -0
- data/spec/models/loyalty_sub_ledger_spec.rb +46 -4
- data/spec/models/manager_config_spec.rb +4 -4
- data/spec/models/meta_spec.rb +4 -4
- data/spec/models/multi_application_entity_spec.rb +4 -4
- data/spec/models/multiple_customer_profile_integration_request_item_spec.rb +47 -0
- data/spec/models/multiple_customer_profile_integration_request_spec.rb +41 -0
- data/spec/models/multiple_customer_profile_integration_response_v2_spec.rb +41 -0
- data/spec/models/mutable_entity_spec.rb +4 -4
- data/spec/models/new_account_sign_up_spec.rb +4 -4
- data/spec/models/new_account_spec.rb +4 -4
- data/spec/models/new_additional_cost_spec.rb +59 -0
- data/spec/models/new_application_api_key_spec.rb +21 -11
- data/spec/models/new_application_spec.rb +48 -4
- data/spec/models/new_attribute_spec.rb +10 -4
- data/spec/models/new_audience_spec.rb +57 -0
- data/spec/models/new_campaign_group_spec.rb +59 -0
- data/spec/models/new_campaign_set_spec.rb +10 -4
- data/spec/models/new_campaign_spec.rb +10 -4
- data/spec/models/new_coupons_spec.rb +10 -4
- data/spec/models/new_customer_profile_spec.rb +4 -4
- data/spec/models/new_customer_session_spec.rb +4 -4
- data/spec/models/new_customer_session_v2_spec.rb +87 -0
- data/spec/models/new_event_spec.rb +4 -4
- data/spec/models/new_event_type_spec.rb +4 -4
- data/spec/models/new_feature_flags_spec.rb +4 -4
- data/spec/models/new_import_spec.rb +4 -4
- data/spec/models/new_invitation_spec.rb +4 -4
- data/spec/models/new_invite_email_spec.rb +4 -4
- data/spec/models/new_loyalty_program_spec.rb +10 -4
- data/spec/models/new_password_email_spec.rb +4 -4
- data/spec/models/new_password_spec.rb +4 -4
- data/spec/models/new_referral_spec.rb +4 -4
- data/spec/models/new_role_spec.rb +4 -4
- data/spec/models/new_ruleset_spec.rb +4 -4
- data/spec/models/new_saml_connection_spec.rb +17 -11
- data/spec/models/new_template_def_spec.rb +4 -4
- data/spec/models/new_user_spec.rb +4 -4
- data/spec/models/new_webhook_spec.rb +4 -4
- data/spec/models/notification_spec.rb +4 -4
- data/spec/models/redeem_referral_effect_props_spec.rb +47 -0
- data/spec/models/referral_created_effect_props_spec.rb +41 -0
- data/spec/models/referral_rejection_reason_spec.rb +5 -5
- data/spec/models/referral_spec.rb +4 -4
- data/spec/models/reject_coupon_effect_props_spec.rb +47 -0
- data/spec/models/reject_referral_effect_props_spec.rb +47 -0
- data/spec/models/role_assign_spec.rb +4 -4
- data/spec/models/role_membership_spec.rb +4 -4
- data/spec/models/role_spec.rb +10 -4
- data/spec/models/rollback_coupon_effect_props_spec.rb +41 -0
- data/spec/models/rollback_discount_effect_props_spec.rb +47 -0
- data/spec/models/rule_spec.rb +4 -4
- data/spec/models/ruleset_spec.rb +4 -4
- data/spec/models/saml_connection_metadata_spec.rb +59 -0
- data/spec/models/saml_connection_spec.rb +13 -19
- data/spec/models/saml_login_endpoint_spec.rb +47 -0
- data/spec/models/session_spec.rb +4 -4
- data/spec/models/set_discount_effect_props_spec.rb +53 -0
- data/spec/models/set_discount_per_item_effect_props_spec.rb +59 -0
- data/spec/models/show_bundle_metadata_effect_props_spec.rb +53 -0
- data/spec/models/show_notification_effect_props_spec.rb +53 -0
- data/spec/models/slot_def_spec.rb +4 -4
- data/spec/models/template_arg_def_spec.rb +4 -4
- data/spec/models/template_def_spec.rb +4 -4
- data/spec/models/trigger_webhook_effect_props_spec.rb +47 -0
- data/spec/models/update_account_spec.rb +20 -4
- data/spec/models/update_application_spec.rb +48 -4
- data/spec/models/update_attribute_effect_props_spec.rb +47 -0
- data/spec/models/update_audience_spec.rb +41 -0
- data/spec/models/update_campaign_group_spec.rb +59 -0
- data/spec/models/update_campaign_spec.rb +10 -4
- data/spec/models/update_coupon_batch_spec.rb +10 -4
- data/spec/models/update_coupon_spec.rb +10 -4
- data/spec/models/update_loyalty_program_spec.rb +10 -4
- data/spec/models/update_role_spec.rb +4 -4
- data/spec/models/update_user_latest_feed_timestamp_spec.rb +41 -0
- data/spec/models/update_user_spec.rb +4 -34
- data/spec/models/user_entity_spec.rb +4 -4
- data/spec/models/user_feed_notifications_spec.rb +47 -0
- data/spec/models/user_spec.rb +5 -11
- data/spec/models/webhook_activation_log_entry_spec.rb +4 -4
- data/spec/models/webhook_log_entry_spec.rb +4 -4
- data/spec/models/webhook_spec.rb +4 -4
- data/spec/spec_helper.rb +3 -3
- data/talon_one.gemspec +6 -11
- metadata +314 -228
- data/CHANGELOG.md +0 -63
- data/docs/AttributeQuery.md +0 -7
- data/docs/MiscUpdateUserLatestFeature.md +0 -8
- data/docs/Notifications.md +0 -7
- data/git_push.sh +0 -55
- data/lib/talon_one/models/attribute_query.rb +0 -174
- data/lib/talon_one/models/inline_response_200_16.rb +0 -204
- data/lib/talon_one/models/misc_update_user_latest_feature.rb +0 -183
- data/lib/talon_one/models/notifications.rb +0 -174
- data/spec/models/attribute_query_spec.rb +0 -35
- data/spec/models/notifications_spec.rb +0 -35
- data/talon_one-1.0.0.gem +0 -0
- data/talon_one-1.1.0.gem +0 -0
- data/talon_one-1.1.1.gem +0 -0
- data/talon_one-1.1.2.gem +0 -0
- data/talon_one-1.2.0.gem +0 -0
@@ -3,14 +3,14 @@
|
|
3
3
|
|
4
4
|
#The Talon.One API is used to manage applications and campaigns, as well as to integrate with your application. The operations in the _Integration API_ section are used to integrate with our platform, while the other operations are used to manage applications and campaigns. ### Where is the API? The API is available at the same hostname as these docs. For example, if you are reading this page at `https://mycompany.talon.one/docs/api/`, the URL for the [updateCustomerProfile][] operation is `https://mycompany.talon.one/v1/customer_profiles/id` [updateCustomerProfile]: #operation--v1-customer_profiles--integrationId--put
|
5
5
|
|
6
|
-
OpenAPI
|
6
|
+
The version of the OpenAPI document: 1.0.0
|
7
7
|
|
8
|
-
Generated by: https://
|
9
|
-
|
8
|
+
Generated by: https://openapi-generator.tech
|
9
|
+
OpenAPI Generator version: 4.3.1
|
10
10
|
|
11
11
|
=end
|
12
12
|
|
13
|
-
require '
|
13
|
+
require 'cgi'
|
14
14
|
|
15
15
|
module TalonOne
|
16
16
|
class IntegrationApi
|
@@ -21,8 +21,8 @@ module TalonOne
|
|
21
21
|
end
|
22
22
|
# Create a new coupon reservation
|
23
23
|
# Creates a coupon reservation for all passed customer profiles on this couponID
|
24
|
-
# @param coupon_value The value of a coupon
|
25
|
-
# @param body
|
24
|
+
# @param coupon_value [String] The value of a coupon
|
25
|
+
# @param body [CouponReservations]
|
26
26
|
# @param [Hash] opts the optional parameters
|
27
27
|
# @return [Coupon]
|
28
28
|
def create_coupon_reservation(coupon_value, body, opts = {})
|
@@ -32,10 +32,10 @@ module TalonOne
|
|
32
32
|
|
33
33
|
# Create a new coupon reservation
|
34
34
|
# Creates a coupon reservation for all passed customer profiles on this couponID
|
35
|
-
# @param coupon_value The value of a coupon
|
36
|
-
# @param body
|
35
|
+
# @param coupon_value [String] The value of a coupon
|
36
|
+
# @param body [CouponReservations]
|
37
37
|
# @param [Hash] opts the optional parameters
|
38
|
-
# @return [Array<(Coupon,
|
38
|
+
# @return [Array<(Coupon, Integer, Hash)>] Coupon data, response status code and response headers
|
39
39
|
def create_coupon_reservation_with_http_info(coupon_value, body, opts = {})
|
40
40
|
if @api_client.config.debugging
|
41
41
|
@api_client.config.logger.debug 'Calling API: IntegrationApi.create_coupon_reservation ...'
|
@@ -49,39 +49,49 @@ module TalonOne
|
|
49
49
|
fail ArgumentError, "Missing the required parameter 'body' when calling IntegrationApi.create_coupon_reservation"
|
50
50
|
end
|
51
51
|
# resource path
|
52
|
-
local_var_path = '/v1/coupon_reservations/{couponValue}'.sub('{' + 'couponValue' + '}', coupon_value.to_s)
|
52
|
+
local_var_path = '/v1/coupon_reservations/{couponValue}'.sub('{' + 'couponValue' + '}', CGI.escape(coupon_value.to_s))
|
53
53
|
|
54
54
|
# query parameters
|
55
|
-
query_params = {}
|
55
|
+
query_params = opts[:query_params] || {}
|
56
56
|
|
57
57
|
# header parameters
|
58
|
-
header_params = {}
|
58
|
+
header_params = opts[:header_params] || {}
|
59
59
|
# HTTP header 'Accept' (if needed)
|
60
60
|
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
61
61
|
# HTTP header 'Content-Type'
|
62
62
|
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
63
63
|
|
64
64
|
# form parameters
|
65
|
-
form_params = {}
|
65
|
+
form_params = opts[:form_params] || {}
|
66
66
|
|
67
67
|
# http body (model)
|
68
|
-
post_body = @api_client.object_to_http_body(body)
|
69
|
-
|
70
|
-
|
68
|
+
post_body = opts[:body] || @api_client.object_to_http_body(body)
|
69
|
+
|
70
|
+
# return_type
|
71
|
+
return_type = opts[:return_type] || 'Coupon'
|
72
|
+
|
73
|
+
# auth_names
|
74
|
+
auth_names = opts[:auth_names] || ['api_key_v1', 'integration_auth']
|
75
|
+
|
76
|
+
new_options = opts.merge(
|
71
77
|
:header_params => header_params,
|
72
78
|
:query_params => query_params,
|
73
79
|
:form_params => form_params,
|
74
80
|
:body => post_body,
|
75
81
|
:auth_names => auth_names,
|
76
|
-
:return_type =>
|
82
|
+
:return_type => return_type
|
83
|
+
)
|
84
|
+
|
85
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
77
86
|
if @api_client.config.debugging
|
78
87
|
@api_client.config.logger.debug "API called: IntegrationApi#create_coupon_reservation\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
79
88
|
end
|
80
89
|
return data, status_code, headers
|
81
90
|
end
|
91
|
+
|
82
92
|
# Create a referral code for an advocate
|
83
93
|
# Creates a referral code for an advocate. The code will be valid for the referral campaign for which is created, indicated in the `campaignId` parameter, and will be associated with the profile specified in the `advocateProfileIntegrationId` parameter as the advocate's profile.
|
84
|
-
# @param body
|
94
|
+
# @param body [NewReferral]
|
85
95
|
# @param [Hash] opts the optional parameters
|
86
96
|
# @return [Referral]
|
87
97
|
def create_referral(body, opts = {})
|
@@ -91,9 +101,9 @@ module TalonOne
|
|
91
101
|
|
92
102
|
# Create a referral code for an advocate
|
93
103
|
# Creates a referral code for an advocate. The code will be valid for the referral campaign for which is created, indicated in the `campaignId` parameter, and will be associated with the profile specified in the `advocateProfileIntegrationId` parameter as the advocate's profile.
|
94
|
-
# @param body
|
104
|
+
# @param body [NewReferral]
|
95
105
|
# @param [Hash] opts the optional parameters
|
96
|
-
# @return [Array<(Referral,
|
106
|
+
# @return [Array<(Referral, Integer, Hash)>] Referral data, response status code and response headers
|
97
107
|
def create_referral_with_http_info(body, opts = {})
|
98
108
|
if @api_client.config.debugging
|
99
109
|
@api_client.config.logger.debug 'Calling API: IntegrationApi.create_referral ...'
|
@@ -106,37 +116,47 @@ module TalonOne
|
|
106
116
|
local_var_path = '/v1/referrals'
|
107
117
|
|
108
118
|
# query parameters
|
109
|
-
query_params = {}
|
119
|
+
query_params = opts[:query_params] || {}
|
110
120
|
|
111
121
|
# header parameters
|
112
|
-
header_params = {}
|
122
|
+
header_params = opts[:header_params] || {}
|
113
123
|
# HTTP header 'Accept' (if needed)
|
114
124
|
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
115
125
|
# HTTP header 'Content-Type'
|
116
126
|
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
117
127
|
|
118
128
|
# form parameters
|
119
|
-
form_params = {}
|
129
|
+
form_params = opts[:form_params] || {}
|
120
130
|
|
121
131
|
# http body (model)
|
122
|
-
post_body = @api_client.object_to_http_body(body)
|
123
|
-
|
124
|
-
|
132
|
+
post_body = opts[:body] || @api_client.object_to_http_body(body)
|
133
|
+
|
134
|
+
# return_type
|
135
|
+
return_type = opts[:return_type] || 'Referral'
|
136
|
+
|
137
|
+
# auth_names
|
138
|
+
auth_names = opts[:auth_names] || ['api_key_v1', 'integration_auth']
|
139
|
+
|
140
|
+
new_options = opts.merge(
|
125
141
|
:header_params => header_params,
|
126
142
|
:query_params => query_params,
|
127
143
|
:form_params => form_params,
|
128
144
|
:body => post_body,
|
129
145
|
:auth_names => auth_names,
|
130
|
-
:return_type =>
|
146
|
+
:return_type => return_type
|
147
|
+
)
|
148
|
+
|
149
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
131
150
|
if @api_client.config.debugging
|
132
151
|
@api_client.config.logger.debug "API called: IntegrationApi#create_referral\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
133
152
|
end
|
134
153
|
return data, status_code, headers
|
135
154
|
end
|
155
|
+
|
136
156
|
# Delete coupon reservations
|
137
157
|
# Removes all passed customer profiles reservation from this coupon
|
138
|
-
# @param coupon_value The value of a coupon
|
139
|
-
# @param body
|
158
|
+
# @param coupon_value [String] The value of a coupon
|
159
|
+
# @param body [CouponReservations]
|
140
160
|
# @param [Hash] opts the optional parameters
|
141
161
|
# @return [nil]
|
142
162
|
def delete_coupon_reservation(coupon_value, body, opts = {})
|
@@ -146,10 +166,10 @@ module TalonOne
|
|
146
166
|
|
147
167
|
# Delete coupon reservations
|
148
168
|
# Removes all passed customer profiles reservation from this coupon
|
149
|
-
# @param coupon_value The value of a coupon
|
150
|
-
# @param body
|
169
|
+
# @param coupon_value [String] The value of a coupon
|
170
|
+
# @param body [CouponReservations]
|
151
171
|
# @param [Hash] opts the optional parameters
|
152
|
-
# @return [Array<(nil,
|
172
|
+
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
153
173
|
def delete_coupon_reservation_with_http_info(coupon_value, body, opts = {})
|
154
174
|
if @api_client.config.debugging
|
155
175
|
@api_client.config.logger.debug 'Calling API: IntegrationApi.delete_coupon_reservation ...'
|
@@ -163,38 +183,47 @@ module TalonOne
|
|
163
183
|
fail ArgumentError, "Missing the required parameter 'body' when calling IntegrationApi.delete_coupon_reservation"
|
164
184
|
end
|
165
185
|
# resource path
|
166
|
-
local_var_path = '/v1/coupon_reservations/{couponValue}'.sub('{' + 'couponValue' + '}', coupon_value.to_s)
|
186
|
+
local_var_path = '/v1/coupon_reservations/{couponValue}'.sub('{' + 'couponValue' + '}', CGI.escape(coupon_value.to_s))
|
167
187
|
|
168
188
|
# query parameters
|
169
|
-
query_params = {}
|
189
|
+
query_params = opts[:query_params] || {}
|
170
190
|
|
171
191
|
# header parameters
|
172
|
-
header_params = {}
|
173
|
-
# HTTP header 'Accept' (if needed)
|
174
|
-
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
192
|
+
header_params = opts[:header_params] || {}
|
175
193
|
# HTTP header 'Content-Type'
|
176
194
|
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
177
195
|
|
178
196
|
# form parameters
|
179
|
-
form_params = {}
|
197
|
+
form_params = opts[:form_params] || {}
|
180
198
|
|
181
199
|
# http body (model)
|
182
|
-
post_body = @api_client.object_to_http_body(body)
|
183
|
-
|
184
|
-
|
200
|
+
post_body = opts[:body] || @api_client.object_to_http_body(body)
|
201
|
+
|
202
|
+
# return_type
|
203
|
+
return_type = opts[:return_type]
|
204
|
+
|
205
|
+
# auth_names
|
206
|
+
auth_names = opts[:auth_names] || ['api_key_v1', 'integration_auth']
|
207
|
+
|
208
|
+
new_options = opts.merge(
|
185
209
|
:header_params => header_params,
|
186
210
|
:query_params => query_params,
|
187
211
|
:form_params => form_params,
|
188
212
|
:body => post_body,
|
189
|
-
:auth_names => auth_names
|
213
|
+
:auth_names => auth_names,
|
214
|
+
:return_type => return_type
|
215
|
+
)
|
216
|
+
|
217
|
+
data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
|
190
218
|
if @api_client.config.debugging
|
191
219
|
@api_client.config.logger.debug "API called: IntegrationApi#delete_coupon_reservation\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
192
220
|
end
|
193
221
|
return data, status_code, headers
|
194
222
|
end
|
223
|
+
|
195
224
|
# Delete the personal data of a customer.
|
196
225
|
# Delete all attributes on the customer profile and on entities that reference that customer profile.
|
197
|
-
# @param integration_id The custom identifier for this profile, must be unique within the account.
|
226
|
+
# @param integration_id [String] The custom identifier for this profile, must be unique within the account.
|
198
227
|
# @param [Hash] opts the optional parameters
|
199
228
|
# @return [nil]
|
200
229
|
def delete_customer_data(integration_id, opts = {})
|
@@ -204,9 +233,9 @@ module TalonOne
|
|
204
233
|
|
205
234
|
# Delete the personal data of a customer.
|
206
235
|
# Delete all attributes on the customer profile and on entities that reference that customer profile.
|
207
|
-
# @param integration_id The custom identifier for this profile, must be unique within the account.
|
236
|
+
# @param integration_id [String] The custom identifier for this profile, must be unique within the account.
|
208
237
|
# @param [Hash] opts the optional parameters
|
209
|
-
# @return [Array<(nil,
|
238
|
+
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
210
239
|
def delete_customer_data_with_http_info(integration_id, opts = {})
|
211
240
|
if @api_client.config.debugging
|
212
241
|
@api_client.config.logger.debug 'Calling API: IntegrationApi.delete_customer_data ...'
|
@@ -216,92 +245,119 @@ module TalonOne
|
|
216
245
|
fail ArgumentError, "Missing the required parameter 'integration_id' when calling IntegrationApi.delete_customer_data"
|
217
246
|
end
|
218
247
|
# resource path
|
219
|
-
local_var_path = '/v1/customer_data/{integrationId}'.sub('{' + 'integrationId' + '}', integration_id.to_s)
|
248
|
+
local_var_path = '/v1/customer_data/{integrationId}'.sub('{' + 'integrationId' + '}', CGI.escape(integration_id.to_s))
|
220
249
|
|
221
250
|
# query parameters
|
222
|
-
query_params = {}
|
251
|
+
query_params = opts[:query_params] || {}
|
223
252
|
|
224
253
|
# header parameters
|
225
|
-
header_params = {}
|
226
|
-
# HTTP header 'Accept' (if needed)
|
227
|
-
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
228
|
-
# HTTP header 'Content-Type'
|
229
|
-
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
254
|
+
header_params = opts[:header_params] || {}
|
230
255
|
|
231
256
|
# form parameters
|
232
|
-
form_params = {}
|
257
|
+
form_params = opts[:form_params] || {}
|
233
258
|
|
234
259
|
# http body (model)
|
235
|
-
post_body =
|
236
|
-
|
237
|
-
|
260
|
+
post_body = opts[:body]
|
261
|
+
|
262
|
+
# return_type
|
263
|
+
return_type = opts[:return_type]
|
264
|
+
|
265
|
+
# auth_names
|
266
|
+
auth_names = opts[:auth_names] || ['api_key_v1', 'integration_auth']
|
267
|
+
|
268
|
+
new_options = opts.merge(
|
238
269
|
:header_params => header_params,
|
239
270
|
:query_params => query_params,
|
240
271
|
:form_params => form_params,
|
241
272
|
:body => post_body,
|
242
|
-
:auth_names => auth_names
|
273
|
+
:auth_names => auth_names,
|
274
|
+
:return_type => return_type
|
275
|
+
)
|
276
|
+
|
277
|
+
data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
|
243
278
|
if @api_client.config.debugging
|
244
279
|
@api_client.config.logger.debug "API called: IntegrationApi#delete_customer_data\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
245
280
|
end
|
246
281
|
return data, status_code, headers
|
247
282
|
end
|
248
|
-
|
249
|
-
#
|
250
|
-
#
|
283
|
+
|
284
|
+
# Get an inventory of all data associated with a specific customer profile.
|
285
|
+
# Get information regarding entities referencing this customer profile's integrationId. Currently we support customer profile information, referral codes and reserved coupons. In the future, this will be expanded with loyalty points.
|
286
|
+
# @param integration_id [String] The custom identifier for this profile, must be unique within the account.
|
251
287
|
# @param [Hash] opts the optional parameters
|
252
|
-
# @
|
253
|
-
|
254
|
-
|
288
|
+
# @option opts [Boolean] :profile optional flag to decide if you would like customer profile information in the response
|
289
|
+
# @option opts [Boolean] :referrals optional flag to decide if you would like referral information in the response
|
290
|
+
# @option opts [Boolean] :coupons optional flag to decide if you would like coupon information in the response
|
291
|
+
# @option opts [Boolean] :loyalty optional flag to decide if you would like loyalty information in the response
|
292
|
+
# @return [CustomerInventory]
|
293
|
+
def get_customer_inventory(integration_id, opts = {})
|
294
|
+
data, _status_code, _headers = get_customer_inventory_with_http_info(integration_id, opts)
|
255
295
|
data
|
256
296
|
end
|
257
297
|
|
258
|
-
# Get all
|
259
|
-
#
|
260
|
-
# @param integration_id The custom identifier for this profile, must be unique within the account.
|
298
|
+
# Get an inventory of all data associated with a specific customer profile.
|
299
|
+
# Get information regarding entities referencing this customer profile's integrationId. Currently we support customer profile information, referral codes and reserved coupons. In the future, this will be expanded with loyalty points.
|
300
|
+
# @param integration_id [String] The custom identifier for this profile, must be unique within the account.
|
261
301
|
# @param [Hash] opts the optional parameters
|
262
|
-
# @
|
263
|
-
|
302
|
+
# @option opts [Boolean] :profile optional flag to decide if you would like customer profile information in the response
|
303
|
+
# @option opts [Boolean] :referrals optional flag to decide if you would like referral information in the response
|
304
|
+
# @option opts [Boolean] :coupons optional flag to decide if you would like coupon information in the response
|
305
|
+
# @option opts [Boolean] :loyalty optional flag to decide if you would like loyalty information in the response
|
306
|
+
# @return [Array<(CustomerInventory, Integer, Hash)>] CustomerInventory data, response status code and response headers
|
307
|
+
def get_customer_inventory_with_http_info(integration_id, opts = {})
|
264
308
|
if @api_client.config.debugging
|
265
|
-
@api_client.config.logger.debug 'Calling API: IntegrationApi.
|
309
|
+
@api_client.config.logger.debug 'Calling API: IntegrationApi.get_customer_inventory ...'
|
266
310
|
end
|
267
311
|
# verify the required parameter 'integration_id' is set
|
268
312
|
if @api_client.config.client_side_validation && integration_id.nil?
|
269
|
-
fail ArgumentError, "Missing the required parameter 'integration_id' when calling IntegrationApi.
|
313
|
+
fail ArgumentError, "Missing the required parameter 'integration_id' when calling IntegrationApi.get_customer_inventory"
|
270
314
|
end
|
271
315
|
# resource path
|
272
|
-
local_var_path = '/v1/
|
316
|
+
local_var_path = '/v1/customer_profiles/{integrationId}/inventory'.sub('{' + 'integrationId' + '}', CGI.escape(integration_id.to_s))
|
273
317
|
|
274
318
|
# query parameters
|
275
|
-
query_params = {}
|
319
|
+
query_params = opts[:query_params] || {}
|
320
|
+
query_params[:'profile'] = opts[:'profile'] if !opts[:'profile'].nil?
|
321
|
+
query_params[:'referrals'] = opts[:'referrals'] if !opts[:'referrals'].nil?
|
322
|
+
query_params[:'coupons'] = opts[:'coupons'] if !opts[:'coupons'].nil?
|
323
|
+
query_params[:'loyalty'] = opts[:'loyalty'] if !opts[:'loyalty'].nil?
|
276
324
|
|
277
325
|
# header parameters
|
278
|
-
header_params = {}
|
326
|
+
header_params = opts[:header_params] || {}
|
279
327
|
# HTTP header 'Accept' (if needed)
|
280
328
|
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
281
|
-
# HTTP header 'Content-Type'
|
282
|
-
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
283
329
|
|
284
330
|
# form parameters
|
285
|
-
form_params = {}
|
331
|
+
form_params = opts[:form_params] || {}
|
286
332
|
|
287
333
|
# http body (model)
|
288
|
-
post_body =
|
289
|
-
|
290
|
-
|
334
|
+
post_body = opts[:body]
|
335
|
+
|
336
|
+
# return_type
|
337
|
+
return_type = opts[:return_type] || 'CustomerInventory'
|
338
|
+
|
339
|
+
# auth_names
|
340
|
+
auth_names = opts[:auth_names] || ['api_key_v1', 'integration_auth']
|
341
|
+
|
342
|
+
new_options = opts.merge(
|
291
343
|
:header_params => header_params,
|
292
344
|
:query_params => query_params,
|
293
345
|
:form_params => form_params,
|
294
346
|
:body => post_body,
|
295
347
|
:auth_names => auth_names,
|
296
|
-
:return_type =>
|
348
|
+
:return_type => return_type
|
349
|
+
)
|
350
|
+
|
351
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
297
352
|
if @api_client.config.debugging
|
298
|
-
@api_client.config.logger.debug "API called: IntegrationApi#
|
353
|
+
@api_client.config.logger.debug "API called: IntegrationApi#get_customer_inventory\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
299
354
|
end
|
300
355
|
return data, status_code, headers
|
301
356
|
end
|
357
|
+
|
302
358
|
# Get the users that have this coupon reserved
|
303
359
|
# Returns all users that have this coupon marked as reserved
|
304
|
-
# @param coupon_value The value of a coupon
|
360
|
+
# @param coupon_value [String] The value of a coupon
|
305
361
|
# @param [Hash] opts the optional parameters
|
306
362
|
# @return [InlineResponse200]
|
307
363
|
def get_reserved_customers(coupon_value, opts = {})
|
@@ -311,9 +367,9 @@ module TalonOne
|
|
311
367
|
|
312
368
|
# Get the users that have this coupon reserved
|
313
369
|
# Returns all users that have this coupon marked as reserved
|
314
|
-
# @param coupon_value The value of a coupon
|
370
|
+
# @param coupon_value [String] The value of a coupon
|
315
371
|
# @param [Hash] opts the optional parameters
|
316
|
-
# @return [Array<(InlineResponse200,
|
372
|
+
# @return [Array<(InlineResponse200, Integer, Hash)>] InlineResponse200 data, response status code and response headers
|
317
373
|
def get_reserved_customers_with_http_info(coupon_value, opts = {})
|
318
374
|
if @api_client.config.debugging
|
319
375
|
@api_client.config.logger.debug 'Calling API: IntegrationApi.get_reserved_customers ...'
|
@@ -323,40 +379,49 @@ module TalonOne
|
|
323
379
|
fail ArgumentError, "Missing the required parameter 'coupon_value' when calling IntegrationApi.get_reserved_customers"
|
324
380
|
end
|
325
381
|
# resource path
|
326
|
-
local_var_path = '/v1/coupon_reservations/customerprofiles/{couponValue}'.sub('{' + 'couponValue' + '}', coupon_value.to_s)
|
382
|
+
local_var_path = '/v1/coupon_reservations/customerprofiles/{couponValue}'.sub('{' + 'couponValue' + '}', CGI.escape(coupon_value.to_s))
|
327
383
|
|
328
384
|
# query parameters
|
329
|
-
query_params = {}
|
385
|
+
query_params = opts[:query_params] || {}
|
330
386
|
|
331
387
|
# header parameters
|
332
|
-
header_params = {}
|
388
|
+
header_params = opts[:header_params] || {}
|
333
389
|
# HTTP header 'Accept' (if needed)
|
334
390
|
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
335
|
-
# HTTP header 'Content-Type'
|
336
|
-
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
337
391
|
|
338
392
|
# form parameters
|
339
|
-
form_params = {}
|
393
|
+
form_params = opts[:form_params] || {}
|
340
394
|
|
341
395
|
# http body (model)
|
342
|
-
post_body =
|
343
|
-
|
344
|
-
|
396
|
+
post_body = opts[:body]
|
397
|
+
|
398
|
+
# return_type
|
399
|
+
return_type = opts[:return_type] || 'InlineResponse200'
|
400
|
+
|
401
|
+
# auth_names
|
402
|
+
auth_names = opts[:auth_names] || ['api_key_v1', 'integration_auth']
|
403
|
+
|
404
|
+
new_options = opts.merge(
|
345
405
|
:header_params => header_params,
|
346
406
|
:query_params => query_params,
|
347
407
|
:form_params => form_params,
|
348
408
|
:body => post_body,
|
349
409
|
:auth_names => auth_names,
|
350
|
-
:return_type =>
|
410
|
+
:return_type => return_type
|
411
|
+
)
|
412
|
+
|
413
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
351
414
|
if @api_client.config.debugging
|
352
415
|
@api_client.config.logger.debug "API called: IntegrationApi#get_reserved_customers\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
353
416
|
end
|
354
417
|
return data, status_code, headers
|
355
418
|
end
|
419
|
+
|
356
420
|
# Track an Event
|
357
421
|
# Records an arbitrary event in a customer session. For example, an integration might record an event when a user updates their payment information. The `sessionId` body parameter is required, an event is always part of a session. Much like updating a customer session, if either the profile or the session do not exist, a new empty one will be created. Note that if the specified session already exists, it must belong to the same `profileId` or an error will be returned. As with customer sessions, you can use an empty string for `profileId` to indicate that this is an anonymous session. Updating a customer profile will return a response with the full integration state. This includes the current state of the customer profile, the customer session, the event that was recorded, and an array of effects that took place.
|
358
|
-
# @param body
|
422
|
+
# @param body [NewEvent]
|
359
423
|
# @param [Hash] opts the optional parameters
|
424
|
+
# @option opts [Boolean] :dry Flag to indicate whether to skip persisting the changes or not (Will not persist if set to 'true').
|
360
425
|
# @return [IntegrationState]
|
361
426
|
def track_event(body, opts = {})
|
362
427
|
data, _status_code, _headers = track_event_with_http_info(body, opts)
|
@@ -365,9 +430,10 @@ module TalonOne
|
|
365
430
|
|
366
431
|
# Track an Event
|
367
432
|
# Records an arbitrary event in a customer session. For example, an integration might record an event when a user updates their payment information. The `sessionId` body parameter is required, an event is always part of a session. Much like updating a customer session, if either the profile or the session do not exist, a new empty one will be created. Note that if the specified session already exists, it must belong to the same `profileId` or an error will be returned. As with customer sessions, you can use an empty string for `profileId` to indicate that this is an anonymous session. Updating a customer profile will return a response with the full integration state. This includes the current state of the customer profile, the customer session, the event that was recorded, and an array of effects that took place.
|
368
|
-
# @param body
|
433
|
+
# @param body [NewEvent]
|
369
434
|
# @param [Hash] opts the optional parameters
|
370
|
-
# @
|
435
|
+
# @option opts [Boolean] :dry Flag to indicate whether to skip persisting the changes or not (Will not persist if set to 'true').
|
436
|
+
# @return [Array<(IntegrationState, Integer, Hash)>] IntegrationState data, response status code and response headers
|
371
437
|
def track_event_with_http_info(body, opts = {})
|
372
438
|
if @api_client.config.debugging
|
373
439
|
@api_client.config.logger.debug 'Calling API: IntegrationApi.track_event ...'
|
@@ -380,50 +446,63 @@ module TalonOne
|
|
380
446
|
local_var_path = '/v1/events'
|
381
447
|
|
382
448
|
# query parameters
|
383
|
-
query_params = {}
|
449
|
+
query_params = opts[:query_params] || {}
|
450
|
+
query_params[:'dry'] = opts[:'dry'] if !opts[:'dry'].nil?
|
384
451
|
|
385
452
|
# header parameters
|
386
|
-
header_params = {}
|
453
|
+
header_params = opts[:header_params] || {}
|
387
454
|
# HTTP header 'Accept' (if needed)
|
388
455
|
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
389
456
|
# HTTP header 'Content-Type'
|
390
457
|
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
391
458
|
|
392
459
|
# form parameters
|
393
|
-
form_params = {}
|
460
|
+
form_params = opts[:form_params] || {}
|
394
461
|
|
395
462
|
# http body (model)
|
396
|
-
post_body = @api_client.object_to_http_body(body)
|
397
|
-
|
398
|
-
|
463
|
+
post_body = opts[:body] || @api_client.object_to_http_body(body)
|
464
|
+
|
465
|
+
# return_type
|
466
|
+
return_type = opts[:return_type] || 'IntegrationState'
|
467
|
+
|
468
|
+
# auth_names
|
469
|
+
auth_names = opts[:auth_names] || ['api_key_v1', 'integration_auth']
|
470
|
+
|
471
|
+
new_options = opts.merge(
|
399
472
|
:header_params => header_params,
|
400
473
|
:query_params => query_params,
|
401
474
|
:form_params => form_params,
|
402
475
|
:body => post_body,
|
403
476
|
:auth_names => auth_names,
|
404
|
-
:return_type =>
|
477
|
+
:return_type => return_type
|
478
|
+
)
|
479
|
+
|
480
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
405
481
|
if @api_client.config.debugging
|
406
482
|
@api_client.config.logger.debug "API called: IntegrationApi#track_event\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
407
483
|
end
|
408
484
|
return data, status_code, headers
|
409
485
|
end
|
410
|
-
|
411
|
-
# Update
|
412
|
-
#
|
413
|
-
# @param
|
486
|
+
|
487
|
+
# Update a Customer Profile V1
|
488
|
+
# ⚠️ Deprecation Notice: Support for requests to this endpoint will end on 15.07.2021. We will not remove the endpoint, and it will still be accessible for you to use. For new features support, please migrate to [API V2.0](/Getting-Started/APIV2). Update (or create) a [Customer Profile][]. This profile information can then be matched and/or updated by campaign [Rules][]. The `integrationId` may be any identifier that will remain stable for the customer. For example, you might use a database ID, an email, or a phone number as the `integrationId`. It is vital that this ID **not** change over time, so **don't** use any identifier that the customer can update themselves. E.g. if your application allows a customer to update their e-mail address, you should instead use a database ID. Updating a customer profile will return a response with the full integration state. This includes the current state of the customer profile, the customer session, the event that was recorded, and an array of effects that took place. [Customer Profile]: /Getting-Started/entities#customer-profile [Rules]: /Getting-Started/entities#campaigns-rulesets-and-coupons
|
489
|
+
# @param integration_id [String] The custom identifier for this profile, must be unique within the account.
|
490
|
+
# @param body [NewCustomerProfile]
|
414
491
|
# @param [Hash] opts the optional parameters
|
492
|
+
# @option opts [Boolean] :dry Flag to indicate whether to skip persisting the changes or not (Will not persist if set to 'true').
|
415
493
|
# @return [IntegrationState]
|
416
494
|
def update_customer_profile(integration_id, body, opts = {})
|
417
495
|
data, _status_code, _headers = update_customer_profile_with_http_info(integration_id, body, opts)
|
418
496
|
data
|
419
497
|
end
|
420
498
|
|
421
|
-
# Update a Customer Profile
|
422
|
-
# Update (or create) a [Customer Profile][]. This profile information can then be matched and/or updated by campaign [Rules][]. The `integrationId` may be any identifier that will remain stable for the customer. For example, you might use a database ID, an email, or a phone number as the `integrationId`. It is vital that this ID **not** change over time, so **don't** use any identifier that the customer can update themselves. E.g. if your application allows a customer to update their e-mail address, you should instead use a database ID. Updating a customer profile will return a response with the full integration state. This includes the current state of the customer profile, the customer session, the event that was recorded, and an array of effects that took place. [Customer Profile]: /Getting-Started/entities#customer-profile [Rules]: /Getting-Started/entities#campaigns-rulesets-and-coupons
|
423
|
-
# @param integration_id The custom identifier for this profile, must be unique within the account.
|
424
|
-
# @param body
|
499
|
+
# Update a Customer Profile V1
|
500
|
+
# ⚠️ Deprecation Notice: Support for requests to this endpoint will end on 15.07.2021. We will not remove the endpoint, and it will still be accessible for you to use. For new features support, please migrate to [API V2.0](/Getting-Started/APIV2). Update (or create) a [Customer Profile][]. This profile information can then be matched and/or updated by campaign [Rules][]. The `integrationId` may be any identifier that will remain stable for the customer. For example, you might use a database ID, an email, or a phone number as the `integrationId`. It is vital that this ID **not** change over time, so **don't** use any identifier that the customer can update themselves. E.g. if your application allows a customer to update their e-mail address, you should instead use a database ID. Updating a customer profile will return a response with the full integration state. This includes the current state of the customer profile, the customer session, the event that was recorded, and an array of effects that took place. [Customer Profile]: /Getting-Started/entities#customer-profile [Rules]: /Getting-Started/entities#campaigns-rulesets-and-coupons
|
501
|
+
# @param integration_id [String] The custom identifier for this profile, must be unique within the account.
|
502
|
+
# @param body [NewCustomerProfile]
|
425
503
|
# @param [Hash] opts the optional parameters
|
426
|
-
# @
|
504
|
+
# @option opts [Boolean] :dry Flag to indicate whether to skip persisting the changes or not (Will not persist if set to 'true').
|
505
|
+
# @return [Array<(IntegrationState, Integer, Hash)>] IntegrationState data, response status code and response headers
|
427
506
|
def update_customer_profile_with_http_info(integration_id, body, opts = {})
|
428
507
|
if @api_client.config.debugging
|
429
508
|
@api_client.config.logger.debug 'Calling API: IntegrationApi.update_customer_profile ...'
|
@@ -437,53 +516,271 @@ module TalonOne
|
|
437
516
|
fail ArgumentError, "Missing the required parameter 'body' when calling IntegrationApi.update_customer_profile"
|
438
517
|
end
|
439
518
|
# resource path
|
440
|
-
local_var_path = '/v1/customer_profiles/{integrationId}'.sub('{' + 'integrationId' + '}', integration_id.to_s)
|
519
|
+
local_var_path = '/v1/customer_profiles/{integrationId}'.sub('{' + 'integrationId' + '}', CGI.escape(integration_id.to_s))
|
441
520
|
|
442
521
|
# query parameters
|
443
|
-
query_params = {}
|
522
|
+
query_params = opts[:query_params] || {}
|
523
|
+
query_params[:'dry'] = opts[:'dry'] if !opts[:'dry'].nil?
|
444
524
|
|
445
525
|
# header parameters
|
446
|
-
header_params = {}
|
526
|
+
header_params = opts[:header_params] || {}
|
447
527
|
# HTTP header 'Accept' (if needed)
|
448
528
|
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
449
529
|
# HTTP header 'Content-Type'
|
450
530
|
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
451
531
|
|
452
532
|
# form parameters
|
453
|
-
form_params = {}
|
533
|
+
form_params = opts[:form_params] || {}
|
454
534
|
|
455
535
|
# http body (model)
|
456
|
-
post_body = @api_client.object_to_http_body(body)
|
457
|
-
|
458
|
-
|
536
|
+
post_body = opts[:body] || @api_client.object_to_http_body(body)
|
537
|
+
|
538
|
+
# return_type
|
539
|
+
return_type = opts[:return_type] || 'IntegrationState'
|
540
|
+
|
541
|
+
# auth_names
|
542
|
+
auth_names = opts[:auth_names] || ['api_key_v1', 'integration_auth']
|
543
|
+
|
544
|
+
new_options = opts.merge(
|
459
545
|
:header_params => header_params,
|
460
546
|
:query_params => query_params,
|
461
547
|
:form_params => form_params,
|
462
548
|
:body => post_body,
|
463
549
|
:auth_names => auth_names,
|
464
|
-
:return_type =>
|
550
|
+
:return_type => return_type
|
551
|
+
)
|
552
|
+
|
553
|
+
data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
|
465
554
|
if @api_client.config.debugging
|
466
555
|
@api_client.config.logger.debug "API called: IntegrationApi#update_customer_profile\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
467
556
|
end
|
468
557
|
return data, status_code, headers
|
469
558
|
end
|
470
|
-
|
471
|
-
# Update
|
472
|
-
#
|
473
|
-
# @param body
|
559
|
+
|
560
|
+
# Update a Customer Profile Audiences
|
561
|
+
# Update one ore multiple Customer Profiles with the specified Audiences
|
562
|
+
# @param body [CustomerProfileAudienceRequest]
|
474
563
|
# @param [Hash] opts the optional parameters
|
564
|
+
# @return [nil]
|
565
|
+
def update_customer_profile_audiences(body, opts = {})
|
566
|
+
update_customer_profile_audiences_with_http_info(body, opts)
|
567
|
+
nil
|
568
|
+
end
|
569
|
+
|
570
|
+
# Update a Customer Profile Audiences
|
571
|
+
# Update one ore multiple Customer Profiles with the specified Audiences
|
572
|
+
# @param body [CustomerProfileAudienceRequest]
|
573
|
+
# @param [Hash] opts the optional parameters
|
574
|
+
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
575
|
+
def update_customer_profile_audiences_with_http_info(body, opts = {})
|
576
|
+
if @api_client.config.debugging
|
577
|
+
@api_client.config.logger.debug 'Calling API: IntegrationApi.update_customer_profile_audiences ...'
|
578
|
+
end
|
579
|
+
# verify the required parameter 'body' is set
|
580
|
+
if @api_client.config.client_side_validation && body.nil?
|
581
|
+
fail ArgumentError, "Missing the required parameter 'body' when calling IntegrationApi.update_customer_profile_audiences"
|
582
|
+
end
|
583
|
+
# resource path
|
584
|
+
local_var_path = '/v2/customer_audiences'
|
585
|
+
|
586
|
+
# query parameters
|
587
|
+
query_params = opts[:query_params] || {}
|
588
|
+
|
589
|
+
# header parameters
|
590
|
+
header_params = opts[:header_params] || {}
|
591
|
+
# HTTP header 'Content-Type'
|
592
|
+
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
593
|
+
|
594
|
+
# form parameters
|
595
|
+
form_params = opts[:form_params] || {}
|
596
|
+
|
597
|
+
# http body (model)
|
598
|
+
post_body = opts[:body] || @api_client.object_to_http_body(body)
|
599
|
+
|
600
|
+
# return_type
|
601
|
+
return_type = opts[:return_type]
|
602
|
+
|
603
|
+
# auth_names
|
604
|
+
auth_names = opts[:auth_names] || ['api_key_v1']
|
605
|
+
|
606
|
+
new_options = opts.merge(
|
607
|
+
:header_params => header_params,
|
608
|
+
:query_params => query_params,
|
609
|
+
:form_params => form_params,
|
610
|
+
:body => post_body,
|
611
|
+
:auth_names => auth_names,
|
612
|
+
:return_type => return_type
|
613
|
+
)
|
614
|
+
|
615
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
616
|
+
if @api_client.config.debugging
|
617
|
+
@api_client.config.logger.debug "API called: IntegrationApi#update_customer_profile_audiences\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
618
|
+
end
|
619
|
+
return data, status_code, headers
|
620
|
+
end
|
621
|
+
|
622
|
+
# Update a Customer Profile
|
623
|
+
# Update (or create) a [Customer Profile][]. The `integrationId` may be any identifier that will remain stable for the customer. For example, you might use a database ID, an email, or a phone number as the `integrationId`. It is vital that this ID **not** change over time, so **don't** use any identifier that the customer can update themselves. E.g. if your application allows a customer to update their e-mail address, you should instead use a database ID. [Customer Profile]: /Getting-Started/entities#customer-profile
|
624
|
+
# @param integration_id [String] The custom identifier for this profile, must be unique within the account.
|
625
|
+
# @param body [CustomerProfileIntegrationRequestV2]
|
626
|
+
# @param [Hash] opts the optional parameters
|
627
|
+
# @option opts [Boolean] :run_rule_engine Flag to indicate whether to run the rule engine (Defaults to false).
|
628
|
+
# @option opts [Boolean] :dry Flag to indicate whether to skip persisting the changes or not (Will not persist if set to 'true'. Only used when 'runRuleEngine' is set to 'true').
|
629
|
+
# @return [IntegrationStateV2]
|
630
|
+
def update_customer_profile_v2(integration_id, body, opts = {})
|
631
|
+
data, _status_code, _headers = update_customer_profile_v2_with_http_info(integration_id, body, opts)
|
632
|
+
data
|
633
|
+
end
|
634
|
+
|
635
|
+
# Update a Customer Profile
|
636
|
+
# Update (or create) a [Customer Profile][]. The `integrationId` may be any identifier that will remain stable for the customer. For example, you might use a database ID, an email, or a phone number as the `integrationId`. It is vital that this ID **not** change over time, so **don't** use any identifier that the customer can update themselves. E.g. if your application allows a customer to update their e-mail address, you should instead use a database ID. [Customer Profile]: /Getting-Started/entities#customer-profile
|
637
|
+
# @param integration_id [String] The custom identifier for this profile, must be unique within the account.
|
638
|
+
# @param body [CustomerProfileIntegrationRequestV2]
|
639
|
+
# @param [Hash] opts the optional parameters
|
640
|
+
# @option opts [Boolean] :run_rule_engine Flag to indicate whether to run the rule engine (Defaults to false).
|
641
|
+
# @option opts [Boolean] :dry Flag to indicate whether to skip persisting the changes or not (Will not persist if set to 'true'. Only used when 'runRuleEngine' is set to 'true').
|
642
|
+
# @return [Array<(IntegrationStateV2, Integer, Hash)>] IntegrationStateV2 data, response status code and response headers
|
643
|
+
def update_customer_profile_v2_with_http_info(integration_id, body, opts = {})
|
644
|
+
if @api_client.config.debugging
|
645
|
+
@api_client.config.logger.debug 'Calling API: IntegrationApi.update_customer_profile_v2 ...'
|
646
|
+
end
|
647
|
+
# verify the required parameter 'integration_id' is set
|
648
|
+
if @api_client.config.client_side_validation && integration_id.nil?
|
649
|
+
fail ArgumentError, "Missing the required parameter 'integration_id' when calling IntegrationApi.update_customer_profile_v2"
|
650
|
+
end
|
651
|
+
# verify the required parameter 'body' is set
|
652
|
+
if @api_client.config.client_side_validation && body.nil?
|
653
|
+
fail ArgumentError, "Missing the required parameter 'body' when calling IntegrationApi.update_customer_profile_v2"
|
654
|
+
end
|
655
|
+
# resource path
|
656
|
+
local_var_path = '/v2/customer_profiles/{integrationId}'.sub('{' + 'integrationId' + '}', CGI.escape(integration_id.to_s))
|
657
|
+
|
658
|
+
# query parameters
|
659
|
+
query_params = opts[:query_params] || {}
|
660
|
+
query_params[:'runRuleEngine'] = opts[:'run_rule_engine'] if !opts[:'run_rule_engine'].nil?
|
661
|
+
query_params[:'dry'] = opts[:'dry'] if !opts[:'dry'].nil?
|
662
|
+
|
663
|
+
# header parameters
|
664
|
+
header_params = opts[:header_params] || {}
|
665
|
+
# HTTP header 'Accept' (if needed)
|
666
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
667
|
+
# HTTP header 'Content-Type'
|
668
|
+
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
669
|
+
|
670
|
+
# form parameters
|
671
|
+
form_params = opts[:form_params] || {}
|
672
|
+
|
673
|
+
# http body (model)
|
674
|
+
post_body = opts[:body] || @api_client.object_to_http_body(body)
|
675
|
+
|
676
|
+
# return_type
|
677
|
+
return_type = opts[:return_type] || 'IntegrationStateV2'
|
678
|
+
|
679
|
+
# auth_names
|
680
|
+
auth_names = opts[:auth_names] || ['api_key_v1']
|
681
|
+
|
682
|
+
new_options = opts.merge(
|
683
|
+
:header_params => header_params,
|
684
|
+
:query_params => query_params,
|
685
|
+
:form_params => form_params,
|
686
|
+
:body => post_body,
|
687
|
+
:auth_names => auth_names,
|
688
|
+
:return_type => return_type
|
689
|
+
)
|
690
|
+
|
691
|
+
data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
|
692
|
+
if @api_client.config.debugging
|
693
|
+
@api_client.config.logger.debug "API called: IntegrationApi#update_customer_profile_v2\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
694
|
+
end
|
695
|
+
return data, status_code, headers
|
696
|
+
end
|
697
|
+
|
698
|
+
# Update multiple Customer Profiles
|
699
|
+
# Update (or create) up to 1000 [Customer Profiles][] in 1 request. The `integrationId` may be any identifier that will remain stable for the customer. For example, you might use a database ID, an email, or a phone number as the `integrationId`. It is vital that this ID **not** change over time, so **don't** use any identifier that the customer can update themselves. E.g. if your application allows a customer to update their e-mail address, you should instead use a database ID. [Customer Profiles]: /Getting-Started/entities#customer-profile
|
700
|
+
# @param body [MultipleCustomerProfileIntegrationRequest]
|
701
|
+
# @param [Hash] opts the optional parameters
|
702
|
+
# @option opts [String] :silent If set to 'yes', response will be an empty 204, otherwise a list of the IntegrationStateV2 generated.
|
703
|
+
# @return [MultipleCustomerProfileIntegrationResponseV2]
|
704
|
+
def update_customer_profiles_v2(body, opts = {})
|
705
|
+
data, _status_code, _headers = update_customer_profiles_v2_with_http_info(body, opts)
|
706
|
+
data
|
707
|
+
end
|
708
|
+
|
709
|
+
# Update multiple Customer Profiles
|
710
|
+
# Update (or create) up to 1000 [Customer Profiles][] in 1 request. The `integrationId` may be any identifier that will remain stable for the customer. For example, you might use a database ID, an email, or a phone number as the `integrationId`. It is vital that this ID **not** change over time, so **don't** use any identifier that the customer can update themselves. E.g. if your application allows a customer to update their e-mail address, you should instead use a database ID. [Customer Profiles]: /Getting-Started/entities#customer-profile
|
711
|
+
# @param body [MultipleCustomerProfileIntegrationRequest]
|
712
|
+
# @param [Hash] opts the optional parameters
|
713
|
+
# @option opts [String] :silent If set to 'yes', response will be an empty 204, otherwise a list of the IntegrationStateV2 generated.
|
714
|
+
# @return [Array<(MultipleCustomerProfileIntegrationResponseV2, Integer, Hash)>] MultipleCustomerProfileIntegrationResponseV2 data, response status code and response headers
|
715
|
+
def update_customer_profiles_v2_with_http_info(body, opts = {})
|
716
|
+
if @api_client.config.debugging
|
717
|
+
@api_client.config.logger.debug 'Calling API: IntegrationApi.update_customer_profiles_v2 ...'
|
718
|
+
end
|
719
|
+
# verify the required parameter 'body' is set
|
720
|
+
if @api_client.config.client_side_validation && body.nil?
|
721
|
+
fail ArgumentError, "Missing the required parameter 'body' when calling IntegrationApi.update_customer_profiles_v2"
|
722
|
+
end
|
723
|
+
# resource path
|
724
|
+
local_var_path = '/v2/customer_profiles'
|
725
|
+
|
726
|
+
# query parameters
|
727
|
+
query_params = opts[:query_params] || {}
|
728
|
+
query_params[:'silent'] = opts[:'silent'] if !opts[:'silent'].nil?
|
729
|
+
|
730
|
+
# header parameters
|
731
|
+
header_params = opts[:header_params] || {}
|
732
|
+
# HTTP header 'Accept' (if needed)
|
733
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
734
|
+
# HTTP header 'Content-Type'
|
735
|
+
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
736
|
+
|
737
|
+
# form parameters
|
738
|
+
form_params = opts[:form_params] || {}
|
739
|
+
|
740
|
+
# http body (model)
|
741
|
+
post_body = opts[:body] || @api_client.object_to_http_body(body)
|
742
|
+
|
743
|
+
# return_type
|
744
|
+
return_type = opts[:return_type] || 'MultipleCustomerProfileIntegrationResponseV2'
|
745
|
+
|
746
|
+
# auth_names
|
747
|
+
auth_names = opts[:auth_names] || ['api_key_v1']
|
748
|
+
|
749
|
+
new_options = opts.merge(
|
750
|
+
:header_params => header_params,
|
751
|
+
:query_params => query_params,
|
752
|
+
:form_params => form_params,
|
753
|
+
:body => post_body,
|
754
|
+
:auth_names => auth_names,
|
755
|
+
:return_type => return_type
|
756
|
+
)
|
757
|
+
|
758
|
+
data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
|
759
|
+
if @api_client.config.debugging
|
760
|
+
@api_client.config.logger.debug "API called: IntegrationApi#update_customer_profiles_v2\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
761
|
+
end
|
762
|
+
return data, status_code, headers
|
763
|
+
end
|
764
|
+
|
765
|
+
# Update a Customer Session V1
|
766
|
+
# ⚠️ Deprecation Notice: Support for requests to this endpoint will end on 15.07.2021. We will not remove the endpoint, and it will still be accessible for you to use. For new features support, please migrate to [API V2.0](/Getting-Started/APIV2). Update (or create) a [Customer Session][]. For example, the items in a customers cart are part of a session. The Talon.One platform supports multiple simultaneous sessions for the same profile, so if you have multiple ways of accessing the same application you have the option of either tracking multiple independent sessions or using the same session across all of them. You should share sessions when application access points share other state, such as the users cart. If two points of access to the application have independent state (e.g. a user can have different items in their cart across the two) they should use independent customer session ID's. The `profileId` parameter in the request body should correspond to an `integrationId` for a customer profile, to track an anonymous session use the empty string (`\"\"`) as the `profileId`. Note that you do **not** need to create a customer profile first: if the specified profile does not yet exist, an empty profile will be created automatically. Updating a customer profile will return a response with the full integration state. This includes the current state of the customer profile, the customer session, the event that was recorded, and an array of effects that took place. The currency for the session and the cart items in the session is the same as that of the application with which the session is associated. [Customer Session]: /Getting-Started/entities#customer-session
|
767
|
+
# @param customer_session_id [String] The custom identifier for this session, must be unique within the account.
|
768
|
+
# @param body [NewCustomerSession]
|
769
|
+
# @param [Hash] opts the optional parameters
|
770
|
+
# @option opts [Boolean] :dry Flag to indicate whether to skip persisting the changes or not (Will not persist if set to 'true').
|
475
771
|
# @return [IntegrationState]
|
476
772
|
def update_customer_session(customer_session_id, body, opts = {})
|
477
773
|
data, _status_code, _headers = update_customer_session_with_http_info(customer_session_id, body, opts)
|
478
774
|
data
|
479
775
|
end
|
480
776
|
|
481
|
-
# Update a Customer Session
|
482
|
-
# Update (or create) a [Customer Session][]. For example, the items in a customers cart are part of a session. The Talon.One platform supports multiple simultaneous sessions for the same profile, so if you have multiple ways of accessing the same application you have the option of either tracking multiple independent sessions or using the same session across all of them. You should share sessions when application access points share other state, such as the users cart. If two points of access to the application have independent state (e.g. a user can have different items in their cart across the two) they should use independent customer session ID's. The `profileId` parameter in the request body should correspond to an `integrationId` for a customer profile, to track an anonymous session use the empty string (`\"\"`) as the `profileId`. Note that you do **not** need to create a customer profile first: if the specified profile does not yet exist, an empty profile will be created automatically. Updating a customer profile will return a response with the full integration state. This includes the current state of the customer profile, the customer session, the event that was recorded, and an array of effects that took place. The currency for the session and the cart items in the session is the same as that of the application with which the session is associated. [Customer Session]: /Getting-Started/entities#customer-session
|
483
|
-
# @param customer_session_id The custom identifier for this session, must be unique within the account.
|
484
|
-
# @param body
|
777
|
+
# Update a Customer Session V1
|
778
|
+
# ⚠️ Deprecation Notice: Support for requests to this endpoint will end on 15.07.2021. We will not remove the endpoint, and it will still be accessible for you to use. For new features support, please migrate to [API V2.0](/Getting-Started/APIV2). Update (or create) a [Customer Session][]. For example, the items in a customers cart are part of a session. The Talon.One platform supports multiple simultaneous sessions for the same profile, so if you have multiple ways of accessing the same application you have the option of either tracking multiple independent sessions or using the same session across all of them. You should share sessions when application access points share other state, such as the users cart. If two points of access to the application have independent state (e.g. a user can have different items in their cart across the two) they should use independent customer session ID's. The `profileId` parameter in the request body should correspond to an `integrationId` for a customer profile, to track an anonymous session use the empty string (`\"\"`) as the `profileId`. Note that you do **not** need to create a customer profile first: if the specified profile does not yet exist, an empty profile will be created automatically. Updating a customer profile will return a response with the full integration state. This includes the current state of the customer profile, the customer session, the event that was recorded, and an array of effects that took place. The currency for the session and the cart items in the session is the same as that of the application with which the session is associated. [Customer Session]: /Getting-Started/entities#customer-session
|
779
|
+
# @param customer_session_id [String] The custom identifier for this session, must be unique within the account.
|
780
|
+
# @param body [NewCustomerSession]
|
485
781
|
# @param [Hash] opts the optional parameters
|
486
|
-
# @
|
782
|
+
# @option opts [Boolean] :dry Flag to indicate whether to skip persisting the changes or not (Will not persist if set to 'true').
|
783
|
+
# @return [Array<(IntegrationState, Integer, Hash)>] IntegrationState data, response status code and response headers
|
487
784
|
def update_customer_session_with_http_info(customer_session_id, body, opts = {})
|
488
785
|
if @api_client.config.debugging
|
489
786
|
@api_client.config.logger.debug 'Calling API: IntegrationApi.update_customer_session ...'
|
@@ -497,35 +794,118 @@ module TalonOne
|
|
497
794
|
fail ArgumentError, "Missing the required parameter 'body' when calling IntegrationApi.update_customer_session"
|
498
795
|
end
|
499
796
|
# resource path
|
500
|
-
local_var_path = '/v1/customer_sessions/{customerSessionId}'.sub('{' + 'customerSessionId' + '}', customer_session_id.to_s)
|
797
|
+
local_var_path = '/v1/customer_sessions/{customerSessionId}'.sub('{' + 'customerSessionId' + '}', CGI.escape(customer_session_id.to_s))
|
501
798
|
|
502
799
|
# query parameters
|
503
|
-
query_params = {}
|
800
|
+
query_params = opts[:query_params] || {}
|
801
|
+
query_params[:'dry'] = opts[:'dry'] if !opts[:'dry'].nil?
|
504
802
|
|
505
803
|
# header parameters
|
506
|
-
header_params = {}
|
804
|
+
header_params = opts[:header_params] || {}
|
507
805
|
# HTTP header 'Accept' (if needed)
|
508
806
|
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
509
807
|
# HTTP header 'Content-Type'
|
510
808
|
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
511
809
|
|
512
810
|
# form parameters
|
513
|
-
form_params = {}
|
811
|
+
form_params = opts[:form_params] || {}
|
514
812
|
|
515
813
|
# http body (model)
|
516
|
-
post_body = @api_client.object_to_http_body(body)
|
517
|
-
|
518
|
-
|
814
|
+
post_body = opts[:body] || @api_client.object_to_http_body(body)
|
815
|
+
|
816
|
+
# return_type
|
817
|
+
return_type = opts[:return_type] || 'IntegrationState'
|
818
|
+
|
819
|
+
# auth_names
|
820
|
+
auth_names = opts[:auth_names] || ['api_key_v1', 'integration_auth']
|
821
|
+
|
822
|
+
new_options = opts.merge(
|
519
823
|
:header_params => header_params,
|
520
824
|
:query_params => query_params,
|
521
825
|
:form_params => form_params,
|
522
826
|
:body => post_body,
|
523
827
|
:auth_names => auth_names,
|
524
|
-
:return_type =>
|
828
|
+
:return_type => return_type
|
829
|
+
)
|
830
|
+
|
831
|
+
data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
|
525
832
|
if @api_client.config.debugging
|
526
833
|
@api_client.config.logger.debug "API called: IntegrationApi#update_customer_session\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
527
834
|
end
|
528
835
|
return data, status_code, headers
|
529
836
|
end
|
837
|
+
|
838
|
+
# Update a Customer Session
|
839
|
+
# Update (or create) a [Customer Session][]. For example, the items in a customers cart are part of a session. The Talon.One platform supports multiple simultaneous sessions for the same profile, so if you have multiple ways of accessing the same application you have the option of either tracking multiple independent sessions or using the same session across all of them. You should share sessions when application access points share other state, such as the users cart. If two points of access to the application have independent state (e.g. a user can have different items in their cart across the two) they should use independent customer session ID's. The `profileId` parameter in the request body should correspond to an `integrationId` for a customer profile, to track an anonymous session use the empty string (`\"\"`) as the `profileId`. Note that you do **not** need to create a customer profile first: if the specified profile does not yet exist, an empty profile will be created automatically. Updating a customer profile will return a response with the requested integration state. This includes the effects that were generated due to triggered campaigns, the created coupons and referral objects, as well as any entity that was requested in the request parameter \"responseContent\". The currency for the session and the cart items in the session is the same as that of the application with which the session is associated. [Customer Session]: /Getting-Started/entities#customer-session
|
840
|
+
# @param customer_session_id [String] The custom identifier for this session, must be unique within the account.
|
841
|
+
# @param body [IntegrationRequest]
|
842
|
+
# @param [Hash] opts the optional parameters
|
843
|
+
# @option opts [Boolean] :dry Flag to indicate whether to skip persisting the changes or not (Will not persist if set to 'true').
|
844
|
+
# @return [IntegrationStateV2]
|
845
|
+
def update_customer_session_v2(customer_session_id, body, opts = {})
|
846
|
+
data, _status_code, _headers = update_customer_session_v2_with_http_info(customer_session_id, body, opts)
|
847
|
+
data
|
848
|
+
end
|
849
|
+
|
850
|
+
# Update a Customer Session
|
851
|
+
# Update (or create) a [Customer Session][]. For example, the items in a customers cart are part of a session. The Talon.One platform supports multiple simultaneous sessions for the same profile, so if you have multiple ways of accessing the same application you have the option of either tracking multiple independent sessions or using the same session across all of them. You should share sessions when application access points share other state, such as the users cart. If two points of access to the application have independent state (e.g. a user can have different items in their cart across the two) they should use independent customer session ID's. The `profileId` parameter in the request body should correspond to an `integrationId` for a customer profile, to track an anonymous session use the empty string (`\"\"`) as the `profileId`. Note that you do **not** need to create a customer profile first: if the specified profile does not yet exist, an empty profile will be created automatically. Updating a customer profile will return a response with the requested integration state. This includes the effects that were generated due to triggered campaigns, the created coupons and referral objects, as well as any entity that was requested in the request parameter \"responseContent\". The currency for the session and the cart items in the session is the same as that of the application with which the session is associated. [Customer Session]: /Getting-Started/entities#customer-session
|
852
|
+
# @param customer_session_id [String] The custom identifier for this session, must be unique within the account.
|
853
|
+
# @param body [IntegrationRequest]
|
854
|
+
# @param [Hash] opts the optional parameters
|
855
|
+
# @option opts [Boolean] :dry Flag to indicate whether to skip persisting the changes or not (Will not persist if set to 'true').
|
856
|
+
# @return [Array<(IntegrationStateV2, Integer, Hash)>] IntegrationStateV2 data, response status code and response headers
|
857
|
+
def update_customer_session_v2_with_http_info(customer_session_id, body, opts = {})
|
858
|
+
if @api_client.config.debugging
|
859
|
+
@api_client.config.logger.debug 'Calling API: IntegrationApi.update_customer_session_v2 ...'
|
860
|
+
end
|
861
|
+
# verify the required parameter 'customer_session_id' is set
|
862
|
+
if @api_client.config.client_side_validation && customer_session_id.nil?
|
863
|
+
fail ArgumentError, "Missing the required parameter 'customer_session_id' when calling IntegrationApi.update_customer_session_v2"
|
864
|
+
end
|
865
|
+
# verify the required parameter 'body' is set
|
866
|
+
if @api_client.config.client_side_validation && body.nil?
|
867
|
+
fail ArgumentError, "Missing the required parameter 'body' when calling IntegrationApi.update_customer_session_v2"
|
868
|
+
end
|
869
|
+
# resource path
|
870
|
+
local_var_path = '/v2/customer_sessions/{customerSessionId}'.sub('{' + 'customerSessionId' + '}', CGI.escape(customer_session_id.to_s))
|
871
|
+
|
872
|
+
# query parameters
|
873
|
+
query_params = opts[:query_params] || {}
|
874
|
+
query_params[:'dry'] = opts[:'dry'] if !opts[:'dry'].nil?
|
875
|
+
|
876
|
+
# header parameters
|
877
|
+
header_params = opts[:header_params] || {}
|
878
|
+
# HTTP header 'Accept' (if needed)
|
879
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
880
|
+
# HTTP header 'Content-Type'
|
881
|
+
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
882
|
+
|
883
|
+
# form parameters
|
884
|
+
form_params = opts[:form_params] || {}
|
885
|
+
|
886
|
+
# http body (model)
|
887
|
+
post_body = opts[:body] || @api_client.object_to_http_body(body)
|
888
|
+
|
889
|
+
# return_type
|
890
|
+
return_type = opts[:return_type] || 'IntegrationStateV2'
|
891
|
+
|
892
|
+
# auth_names
|
893
|
+
auth_names = opts[:auth_names] || ['api_key_v1']
|
894
|
+
|
895
|
+
new_options = opts.merge(
|
896
|
+
:header_params => header_params,
|
897
|
+
:query_params => query_params,
|
898
|
+
:form_params => form_params,
|
899
|
+
:body => post_body,
|
900
|
+
:auth_names => auth_names,
|
901
|
+
:return_type => return_type
|
902
|
+
)
|
903
|
+
|
904
|
+
data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
|
905
|
+
if @api_client.config.debugging
|
906
|
+
@api_client.config.logger.debug "API called: IntegrationApi#update_customer_session_v2\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
907
|
+
end
|
908
|
+
return data, status_code, headers
|
909
|
+
end
|
530
910
|
end
|
531
911
|
end
|