talon_one 4.0.0 → 6.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +83 -18
- data/docs/AchievementProgress.md +2 -0
- data/docs/ActivateUserRequest.md +17 -0
- data/docs/AdditionalCampaignProperties.md +3 -1
- data/docs/AnalyticsDataPoint.md +19 -0
- data/docs/AnalyticsDataPointWithTrend.md +19 -0
- data/docs/AnalyticsDataPointWithTrendAndInfluencedRate.md +21 -0
- data/docs/AnalyticsDataPointWithTrendAndUplift.md +21 -0
- data/docs/Application.md +4 -0
- data/docs/ApplicationAnalyticsDataPoint.md +6 -6
- data/docs/ApplicationCIF.md +33 -0
- data/docs/ApplicationCIFExpression.md +27 -0
- data/docs/ApplicationCampaignAnalytics.md +13 -19
- data/docs/ApplicationCampaignStats.md +1 -3
- data/docs/AsyncCouponDeletionJobResponse.md +17 -0
- data/docs/BaseLoyaltyProgram.md +8 -4
- data/docs/BaseNotification.md +1 -1
- data/docs/BaseNotificationEntity.md +1 -1
- data/docs/Campaign.md +15 -1
- data/docs/CampaignCollectionEditedNotification.md +21 -0
- data/docs/CampaignNotificationPolicy.md +3 -1
- data/docs/CampaignStateChangedNotification.md +2 -2
- data/docs/CampaignStoreBudget.md +25 -0
- data/docs/CampaignVersions.md +27 -0
- data/docs/CardAddedDeductedPointsNotificationPolicy.md +19 -0
- data/docs/CartItem.md +1 -1
- data/docs/CodeGeneratorSettings.md +1 -1
- data/docs/Coupon.md +3 -3
- data/docs/CouponConstraints.md +1 -1
- data/docs/CouponCreationJob.md +1 -1
- data/docs/CouponDeletionFilters.md +43 -0
- data/docs/CouponDeletionJob.md +39 -0
- data/docs/CustomerInventory.md +1 -1
- data/docs/CustomerSessionV2.md +2 -2
- data/docs/Effect.md +8 -0
- data/docs/EffectEntity.md +9 -1
- data/docs/Environment.md +3 -1
- data/docs/Event.md +1 -1
- data/docs/GenerateCampaignDescription.md +19 -0
- data/docs/GenerateCampaignTags.md +17 -0
- data/docs/GenerateItemFilterDescription.md +17 -0
- data/docs/GenerateLoyaltyCard.md +19 -0
- data/docs/GenerateRuleTitle.md +19 -0
- data/docs/GenerateRuleTitleRule.md +19 -0
- data/docs/IncreaseAchievementProgressEffectProps.md +1 -1
- data/docs/InlineResponse20044.md +1 -1
- data/docs/IntegrationApi.md +77 -16
- data/docs/IntegrationCoupon.md +3 -3
- data/docs/InventoryCoupon.md +3 -3
- data/docs/InventoryReferral.md +1 -1
- data/docs/LoyaltyBalanceWithTier.md +31 -0
- data/docs/LoyaltyBalancesWithTiers.md +19 -0
- data/docs/LoyaltyCard.md +6 -2
- data/docs/LoyaltyCardBalances.md +21 -0
- data/docs/LoyaltyCardBatch.md +21 -0
- data/docs/LoyaltyCardBatchResponse.md +19 -0
- data/docs/LoyaltyCardProfileRegistration.md +1 -1
- data/docs/LoyaltyProgram.md +14 -6
- data/docs/ManagementApi.md +1269 -176
- data/docs/MessageLogEntry.md +1 -3
- data/docs/MessageLogResponse.md +3 -3
- data/docs/NewAppWideCouponDeletionJob.md +19 -0
- data/docs/NewApplication.md +3 -1
- data/docs/NewApplicationCIF.md +27 -0
- data/docs/NewApplicationCIFExpression.md +21 -0
- data/docs/NewBaseNotification.md +1 -1
- data/docs/NewCouponCreationJob.md +1 -1
- data/docs/NewCouponDeletionJob.md +17 -0
- data/docs/NewCoupons.md +2 -2
- data/docs/NewCouponsForMultipleRecipients.md +1 -1
- data/docs/NewCustomerSessionV2.md +2 -2
- data/docs/NewExternalInvitation.md +21 -0
- data/docs/NewLoyaltyProgram.md +8 -4
- data/docs/NewOutgoingIntegrationWebhook.md +2 -0
- data/docs/NewReferral.md +1 -1
- data/docs/NewReferralsForMultipleAdvocates.md +1 -1
- data/docs/NewRevisionVersion.md +37 -0
- data/docs/NewWebhook.md +2 -0
- data/docs/OktaEvent.md +19 -0
- data/docs/OktaEventPayload.md +17 -0
- data/docs/OktaEventPayloadData.md +17 -0
- data/docs/OktaEventTarget.md +21 -0
- data/docs/ProjectedTier.md +21 -0
- data/docs/Referral.md +1 -1
- data/docs/ReferralConstraints.md +1 -1
- data/docs/RejectCouponEffectProps.md +3 -1
- data/docs/RejectReferralEffectProps.md +3 -1
- data/docs/Revision.md +35 -0
- data/docs/RevisionActivation.md +17 -0
- data/docs/RevisionVersion.md +53 -0
- data/docs/RollbackIncreasedAchievementProgressEffectProps.md +27 -0
- data/docs/RuleFailureReason.md +5 -1
- data/docs/SSOConfig.md +3 -1
- data/docs/ScimBaseUser.md +23 -0
- data/docs/ScimBaseUserName.md +17 -0
- data/docs/ScimNewUser.md +23 -0
- data/docs/ScimPatchOperation.md +21 -0
- data/docs/ScimPatchRequest.md +19 -0
- data/docs/ScimResource.md +21 -0
- data/docs/ScimResourceTypesListResponse.md +17 -0
- data/docs/ScimSchemaResource.md +23 -0
- data/docs/ScimSchemasListResponse.md +21 -0
- data/docs/ScimServiceProviderConfigResponse.md +27 -0
- data/docs/ScimServiceProviderConfigResponseBulk.md +21 -0
- data/docs/ScimServiceProviderConfigResponseChangePassword.md +17 -0
- data/docs/ScimServiceProviderConfigResponseFilter.md +19 -0
- data/docs/ScimServiceProviderConfigResponsePatch.md +17 -0
- data/docs/ScimUser.md +25 -0
- data/docs/ScimUsersListResponse.md +21 -0
- data/docs/Tier.md +3 -1
- data/docs/TransferLoyaltyCard.md +3 -1
- data/docs/UpdateApplication.md +5 -1
- data/docs/UpdateApplicationCIF.md +23 -0
- data/docs/UpdateCampaign.md +1 -1
- data/docs/UpdateCoupon.md +2 -2
- data/docs/UpdateCouponBatch.md +1 -1
- data/docs/UpdateLoyaltyCard.md +4 -2
- data/docs/UpdateLoyaltyProgram.md +8 -4
- data/docs/UpdateReferral.md +1 -1
- data/docs/UpdateReferralBatch.md +1 -1
- data/docs/UpdateUser.md +1 -1
- data/docs/User.md +3 -1
- data/docs/Webhook.md +2 -0
- data/docs/WebhookWithOutgoingIntegrationDetails.md +2 -0
- data/lib/talon_one/api/integration_api.rb +101 -25
- data/lib/talon_one/api/management_api.rb +1362 -189
- data/lib/talon_one/models/achievement_progress.rb +16 -1
- data/lib/talon_one/models/activate_user_request.rb +213 -0
- data/lib/talon_one/models/additional_campaign_properties.rb +21 -6
- data/lib/talon_one/models/analytics_data_point.rb +225 -0
- data/lib/talon_one/models/analytics_data_point_with_trend.rb +225 -0
- data/lib/talon_one/models/analytics_data_point_with_trend_and_influenced_rate.rb +239 -0
- data/lib/talon_one/models/analytics_data_point_with_trend_and_uplift.rb +239 -0
- data/lib/talon_one/models/application.rb +21 -1
- data/lib/talon_one/models/application_analytics_data_point.rb +14 -4
- data/lib/talon_one/models/application_campaign_analytics.rb +39 -41
- data/lib/talon_one/models/application_campaign_stats.rb +1 -16
- data/lib/talon_one/models/application_cif.rb +308 -0
- data/lib/talon_one/models/application_cif_expression.rb +275 -0
- data/lib/talon_one/models/async_coupon_deletion_job_response.rb +213 -0
- data/lib/talon_one/models/attribute.rb +2 -2
- data/lib/talon_one/models/base_loyalty_program.rb +44 -25
- data/lib/talon_one/models/base_notification.rb +3 -2
- data/lib/talon_one/models/base_notification_entity.rb +1 -0
- data/lib/talon_one/models/campaign.rb +83 -6
- data/lib/talon_one/models/campaign_collection_edited_notification.rb +235 -0
- data/lib/talon_one/models/campaign_notification_policy.rb +16 -4
- data/lib/talon_one/models/campaign_state_changed_notification.rb +2 -2
- data/lib/talon_one/models/campaign_store_budget.rb +275 -0
- data/lib/talon_one/models/campaign_versions.rb +259 -0
- data/lib/talon_one/models/card_added_deducted_points_notification_policy.rb +269 -0
- data/lib/talon_one/models/cart_item.rb +1 -1
- data/lib/talon_one/models/code_generator_settings.rb +1 -1
- data/lib/talon_one/models/coupon.rb +3 -3
- data/lib/talon_one/models/coupon_constraints.rb +1 -1
- data/lib/talon_one/models/coupon_creation_job.rb +1 -1
- data/lib/talon_one/models/coupon_deletion_filters.rb +375 -0
- data/lib/talon_one/models/coupon_deletion_job.rb +370 -0
- data/lib/talon_one/models/customer_inventory.rb +1 -1
- data/lib/talon_one/models/customer_session_v2.rb +2 -2
- data/lib/talon_one/models/effect.rb +41 -1
- data/lib/talon_one/models/effect_entity.rb +44 -4
- data/lib/talon_one/models/environment.rb +16 -4
- data/lib/talon_one/models/event.rb +0 -5
- data/lib/talon_one/models/generate_campaign_description.rb +227 -0
- data/lib/talon_one/models/generate_campaign_tags.rb +212 -0
- data/lib/talon_one/models/generate_item_filter_description.rb +214 -0
- data/lib/talon_one/models/generate_loyalty_card.rb +256 -0
- data/lib/talon_one/models/generate_rule_title.rb +226 -0
- data/lib/talon_one/models/generate_rule_title_rule.rb +221 -0
- data/lib/talon_one/models/increase_achievement_progress_effect_props.rb +1 -1
- data/lib/talon_one/models/inline_response20044.rb +1 -1
- data/lib/talon_one/models/integration_coupon.rb +3 -3
- data/lib/talon_one/models/inventory_coupon.rb +3 -3
- data/lib/talon_one/models/inventory_referral.rb +1 -1
- data/lib/talon_one/models/loyalty_balance_with_tier.rb +276 -0
- data/lib/talon_one/models/loyalty_balances_with_tiers.rb +219 -0
- data/lib/talon_one/models/loyalty_card.rb +25 -5
- data/lib/talon_one/models/loyalty_card_balances.rb +231 -0
- data/lib/talon_one/models/loyalty_card_batch.rb +304 -0
- data/lib/talon_one/models/loyalty_card_batch_response.rb +227 -0
- data/lib/talon_one/models/loyalty_card_profile_registration.rb +1 -1
- data/lib/talon_one/models/loyalty_program.rb +70 -29
- data/lib/talon_one/models/message_log_entry.rb +4 -14
- data/lib/talon_one/models/message_log_response.rb +3 -22
- data/lib/talon_one/models/new_app_wide_coupon_deletion_job.rb +227 -0
- data/lib/talon_one/models/new_application.rb +14 -4
- data/lib/talon_one/models/new_application_cif.rb +262 -0
- data/lib/talon_one/models/new_application_cif_expression.rb +229 -0
- data/lib/talon_one/models/new_attribute.rb +2 -2
- data/lib/talon_one/models/new_base_notification.rb +1 -0
- data/lib/talon_one/models/new_coupon_creation_job.rb +1 -1
- data/lib/talon_one/models/new_coupon_deletion_job.rb +211 -0
- data/lib/talon_one/models/new_coupons.rb +2 -2
- data/lib/talon_one/models/new_coupons_for_multiple_recipients.rb +1 -1
- data/lib/talon_one/models/new_customer_session_v2.rb +2 -2
- data/lib/talon_one/models/new_external_invitation.rb +235 -0
- data/lib/talon_one/models/new_loyalty_program.rb +44 -25
- data/lib/talon_one/models/new_notification_test.rb +2 -2
- data/lib/talon_one/models/new_outgoing_integration_webhook.rb +11 -1
- data/lib/talon_one/models/new_referral.rb +1 -1
- data/lib/talon_one/models/new_referrals_for_multiple_advocates.rb +1 -1
- data/lib/talon_one/models/new_revision_version.rb +352 -0
- data/lib/talon_one/models/new_webhook.rb +11 -1
- data/lib/talon_one/models/okta_event.rb +229 -0
- data/lib/talon_one/models/okta_event_payload.rb +212 -0
- data/lib/talon_one/models/okta_event_payload_data.rb +214 -0
- data/lib/talon_one/models/okta_event_target.rb +243 -0
- data/lib/talon_one/models/projected_tier.rb +232 -0
- data/lib/talon_one/models/referral.rb +1 -1
- data/lib/talon_one/models/referral_constraints.rb +1 -1
- data/lib/talon_one/models/reject_coupon_effect_props.rb +14 -4
- data/lib/talon_one/models/reject_referral_effect_props.rb +14 -4
- data/lib/talon_one/models/revision.rb +319 -0
- data/lib/talon_one/models/revision_activation.rb +206 -0
- data/lib/talon_one/models/revision_version.rb +466 -0
- data/lib/talon_one/models/rollback_increased_achievement_progress_effect_props.rb +288 -0
- data/lib/talon_one/models/rule_failure_reason.rb +24 -4
- data/lib/talon_one/models/scim_base_user.rb +237 -0
- data/lib/talon_one/models/scim_base_user_name.rb +208 -0
- data/lib/talon_one/models/scim_new_user.rb +237 -0
- data/lib/talon_one/models/scim_patch_operation.rb +267 -0
- data/lib/talon_one/models/scim_patch_request.rb +226 -0
- data/lib/talon_one/models/scim_resource.rb +228 -0
- data/lib/talon_one/models/scim_resource_types_list_response.rb +214 -0
- data/lib/talon_one/models/scim_schema_resource.rb +239 -0
- data/lib/talon_one/models/scim_schemas_list_response.rb +236 -0
- data/lib/talon_one/models/scim_service_provider_config_response.rb +256 -0
- data/lib/talon_one/models/scim_service_provider_config_response_bulk.rb +228 -0
- data/lib/talon_one/models/scim_service_provider_config_response_change_password.rb +208 -0
- data/lib/talon_one/models/scim_service_provider_config_response_filter.rb +218 -0
- data/lib/talon_one/models/scim_service_provider_config_response_patch.rb +208 -0
- data/lib/talon_one/models/scim_user.rb +252 -0
- data/lib/talon_one/models/scim_users_list_response.rb +236 -0
- data/lib/talon_one/models/sso_config.rb +14 -4
- data/lib/talon_one/models/tier.rb +12 -2
- data/lib/talon_one/models/transfer_loyalty_card.rb +14 -4
- data/lib/talon_one/models/update_application.rb +24 -4
- data/lib/talon_one/models/update_application_cif.rb +237 -0
- data/lib/talon_one/models/update_campaign.rb +1 -1
- data/lib/talon_one/models/update_coupon.rb +2 -2
- data/lib/talon_one/models/update_coupon_batch.rb +1 -1
- data/lib/talon_one/models/update_loyalty_card.rb +15 -5
- data/lib/talon_one/models/update_loyalty_program.rb +44 -25
- data/lib/talon_one/models/update_referral.rb +1 -1
- data/lib/talon_one/models/update_referral_batch.rb +1 -1
- data/lib/talon_one/models/update_user.rb +1 -1
- data/lib/talon_one/models/user.rb +14 -4
- data/lib/talon_one/models/webhook.rb +11 -1
- data/lib/talon_one/models/webhook_with_outgoing_integration_details.rb +11 -1
- data/lib/talon_one/version.rb +1 -1
- data/lib/talon_one.rb +57 -11
- data/spec/api/integration_api_spec.rb +25 -10
- data/spec/api/management_api_spec.rb +267 -39
- data/spec/models/achievement_progress_spec.rb +6 -0
- data/spec/models/activate_user_request_spec.rb +41 -0
- data/spec/models/additional_campaign_properties_spec.rb +7 -1
- data/spec/models/analytics_data_point_spec.rb +47 -0
- data/spec/models/analytics_data_point_with_trend_and_influenced_rate_spec.rb +53 -0
- data/spec/models/analytics_data_point_with_trend_and_uplift_spec.rb +53 -0
- data/spec/models/analytics_data_point_with_trend_spec.rb +47 -0
- data/spec/models/application_campaign_analytics_spec.rb +1 -19
- data/spec/models/application_campaign_stats_spec.rb +0 -6
- data/spec/models/application_cif_expression_spec.rb +71 -0
- data/spec/models/application_cif_spec.rb +89 -0
- data/spec/models/application_spec.rb +12 -0
- data/spec/models/async_coupon_deletion_job_response_spec.rb +41 -0
- data/spec/models/attribute_spec.rb +1 -1
- data/spec/models/base_loyalty_program_spec.rb +18 -6
- data/spec/models/base_notification_spec.rb +1 -1
- data/spec/models/campaign_collection_edited_notification_spec.rb +53 -0
- data/spec/models/campaign_notification_policy_spec.rb +6 -0
- data/spec/models/campaign_spec.rb +43 -1
- data/spec/models/campaign_store_budget_spec.rb +65 -0
- data/spec/models/campaign_versions_spec.rb +71 -0
- data/spec/models/card_added_deducted_points_notification_policy_spec.rb +51 -0
- data/spec/models/coupon_deletion_filters_spec.rb +123 -0
- data/spec/models/coupon_deletion_job_spec.rb +107 -0
- data/spec/models/effect_entity_spec.rb +24 -0
- data/spec/models/effect_spec.rb +24 -0
- data/spec/models/environment_spec.rb +6 -0
- data/spec/models/generate_campaign_description_spec.rb +47 -0
- data/spec/models/generate_campaign_tags_spec.rb +41 -0
- data/spec/models/generate_item_filter_description_spec.rb +41 -0
- data/spec/models/generate_loyalty_card_spec.rb +51 -0
- data/spec/models/generate_rule_title_rule_spec.rb +47 -0
- data/spec/models/generate_rule_title_spec.rb +47 -0
- data/spec/models/loyalty_balance_with_tier_spec.rb +83 -0
- data/spec/models/loyalty_balances_with_tiers_spec.rb +47 -0
- data/spec/models/loyalty_card_balances_spec.rb +53 -0
- data/spec/models/loyalty_card_batch_response_spec.rb +47 -0
- data/spec/models/loyalty_card_batch_spec.rb +57 -0
- data/spec/models/loyalty_card_spec.rb +12 -0
- data/spec/models/loyalty_program_spec.rb +30 -6
- data/spec/models/message_log_entry_spec.rb +1 -7
- data/spec/models/new_app_wide_coupon_deletion_job_spec.rb +47 -0
- data/spec/models/new_application_cif_expression_spec.rb +53 -0
- data/spec/models/new_application_cif_spec.rb +71 -0
- data/spec/models/new_application_spec.rb +6 -0
- data/spec/models/new_attribute_spec.rb +1 -1
- data/spec/models/new_coupon_deletion_job_spec.rb +41 -0
- data/spec/models/new_external_invitation_spec.rb +53 -0
- data/spec/models/new_loyalty_program_spec.rb +18 -6
- data/spec/models/new_notification_test_spec.rb +1 -1
- data/spec/models/new_outgoing_integration_webhook_spec.rb +6 -0
- data/spec/models/new_revision_version_spec.rb +105 -0
- data/spec/models/new_webhook_spec.rb +6 -0
- data/spec/models/okta_event_payload_data_spec.rb +41 -0
- data/spec/models/okta_event_payload_spec.rb +41 -0
- data/spec/models/okta_event_spec.rb +47 -0
- data/spec/models/okta_event_target_spec.rb +53 -0
- data/spec/models/projected_tier_spec.rb +53 -0
- data/spec/models/reject_coupon_effect_props_spec.rb +6 -0
- data/spec/models/reject_referral_effect_props_spec.rb +6 -0
- data/spec/models/revision_activation_spec.rb +41 -0
- data/spec/models/revision_spec.rb +95 -0
- data/spec/models/revision_version_spec.rb +153 -0
- data/spec/models/rollback_increased_achievement_progress_effect_props_spec.rb +71 -0
- data/spec/models/rule_failure_reason_spec.rb +12 -0
- data/spec/models/scim_base_user_name_spec.rb +41 -0
- data/spec/models/scim_base_user_spec.rb +59 -0
- data/spec/models/scim_new_user_spec.rb +59 -0
- data/spec/models/scim_patch_operation_spec.rb +57 -0
- data/spec/models/scim_patch_request_spec.rb +47 -0
- data/spec/models/scim_resource_spec.rb +53 -0
- data/spec/models/scim_resource_types_list_response_spec.rb +41 -0
- data/spec/models/scim_schema_resource_spec.rb +59 -0
- data/spec/models/scim_schemas_list_response_spec.rb +53 -0
- data/spec/models/scim_service_provider_config_response_bulk_spec.rb +53 -0
- data/spec/models/scim_service_provider_config_response_change_password_spec.rb +41 -0
- data/spec/models/scim_service_provider_config_response_filter_spec.rb +47 -0
- data/spec/models/scim_service_provider_config_response_patch_spec.rb +41 -0
- data/spec/models/scim_service_provider_config_response_spec.rb +71 -0
- data/spec/models/scim_user_spec.rb +65 -0
- data/spec/models/scim_users_list_response_spec.rb +53 -0
- data/spec/models/sso_config_spec.rb +6 -0
- data/spec/models/tier_spec.rb +6 -0
- data/spec/models/transfer_loyalty_card_spec.rb +6 -0
- data/spec/models/update_application_cif_spec.rb +59 -0
- data/spec/models/update_application_spec.rb +12 -0
- data/spec/models/update_loyalty_card_spec.rb +6 -0
- data/spec/models/update_loyalty_program_spec.rb +18 -6
- data/spec/models/user_spec.rb +6 -0
- data/spec/models/webhook_spec.rb +6 -0
- data/spec/models/webhook_with_outgoing_integration_details_spec.rb +6 -0
- metadata +246 -18
@@ -0,0 +1,235 @@
|
|
1
|
+
=begin
|
2
|
+
#Talon.One API
|
3
|
+
|
4
|
+
#Use the Talon.One API to integrate with your application and to manage applications and campaigns: - Use the operations in the [Integration API section](#integration-api) are used to integrate with our platform - Use the operation in the [Management API section](#management-api) to manage applications and campaigns. ## Determining the base URL of the endpoints The API is available at the same hostname as your Campaign Manager deployment. For example, if you access the Campaign Manager at `https://yourbaseurl.talon.one/`, the URL for the [updateCustomerSessionV2](https://docs.talon.one/integration-api#operation/updateCustomerSessionV2) endpoint is `https://yourbaseurl.talon.one/v2/customer_sessions/{Id}`
|
5
|
+
|
6
|
+
The version of the OpenAPI document:
|
7
|
+
|
8
|
+
Generated by: https://openapi-generator.tech
|
9
|
+
OpenAPI Generator version: 4.3.1
|
10
|
+
|
11
|
+
=end
|
12
|
+
|
13
|
+
require 'date'
|
14
|
+
|
15
|
+
module TalonOne
|
16
|
+
# Parameters for inviting a new user from an external identity provider.
|
17
|
+
class NewExternalInvitation
|
18
|
+
# Name of the user.
|
19
|
+
attr_accessor :name
|
20
|
+
|
21
|
+
# List of user groups in the external identity provider. If there are roles in Talon.One whose names match these user groups, those roles will be automatically assigned to the user upon invitation.
|
22
|
+
attr_accessor :user_groups
|
23
|
+
|
24
|
+
# Email address of the user.
|
25
|
+
attr_accessor :email
|
26
|
+
|
27
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
28
|
+
def self.attribute_map
|
29
|
+
{
|
30
|
+
:'name' => :'name',
|
31
|
+
:'user_groups' => :'userGroups',
|
32
|
+
:'email' => :'email'
|
33
|
+
}
|
34
|
+
end
|
35
|
+
|
36
|
+
# Attribute type mapping.
|
37
|
+
def self.openapi_types
|
38
|
+
{
|
39
|
+
:'name' => :'String',
|
40
|
+
:'user_groups' => :'Array<String>',
|
41
|
+
:'email' => :'String'
|
42
|
+
}
|
43
|
+
end
|
44
|
+
|
45
|
+
# List of attributes with nullable: true
|
46
|
+
def self.openapi_nullable
|
47
|
+
Set.new([
|
48
|
+
])
|
49
|
+
end
|
50
|
+
|
51
|
+
# Initializes the object
|
52
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
53
|
+
def initialize(attributes = {})
|
54
|
+
if (!attributes.is_a?(Hash))
|
55
|
+
fail ArgumentError, "The input argument (attributes) must be a hash in `TalonOne::NewExternalInvitation` initialize method"
|
56
|
+
end
|
57
|
+
|
58
|
+
# check to see if the attribute exists and convert string to symbol for hash key
|
59
|
+
attributes = attributes.each_with_object({}) { |(k, v), h|
|
60
|
+
if (!self.class.attribute_map.key?(k.to_sym))
|
61
|
+
fail ArgumentError, "`#{k}` is not a valid attribute in `TalonOne::NewExternalInvitation`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
|
62
|
+
end
|
63
|
+
h[k.to_sym] = v
|
64
|
+
}
|
65
|
+
|
66
|
+
if attributes.key?(:'name')
|
67
|
+
self.name = attributes[:'name']
|
68
|
+
end
|
69
|
+
|
70
|
+
if attributes.key?(:'user_groups')
|
71
|
+
if (value = attributes[:'user_groups']).is_a?(Array)
|
72
|
+
self.user_groups = value
|
73
|
+
end
|
74
|
+
end
|
75
|
+
|
76
|
+
if attributes.key?(:'email')
|
77
|
+
self.email = attributes[:'email']
|
78
|
+
end
|
79
|
+
end
|
80
|
+
|
81
|
+
# Show invalid properties with the reasons. Usually used together with valid?
|
82
|
+
# @return Array for valid properties with the reasons
|
83
|
+
def list_invalid_properties
|
84
|
+
invalid_properties = Array.new
|
85
|
+
if @email.nil?
|
86
|
+
invalid_properties.push('invalid value for "email", email cannot be nil.')
|
87
|
+
end
|
88
|
+
|
89
|
+
invalid_properties
|
90
|
+
end
|
91
|
+
|
92
|
+
# Check to see if the all the properties in the model are valid
|
93
|
+
# @return true if the model is valid
|
94
|
+
def valid?
|
95
|
+
return false if @email.nil?
|
96
|
+
true
|
97
|
+
end
|
98
|
+
|
99
|
+
# Checks equality by comparing each attribute.
|
100
|
+
# @param [Object] Object to be compared
|
101
|
+
def ==(o)
|
102
|
+
return true if self.equal?(o)
|
103
|
+
self.class == o.class &&
|
104
|
+
name == o.name &&
|
105
|
+
user_groups == o.user_groups &&
|
106
|
+
email == o.email
|
107
|
+
end
|
108
|
+
|
109
|
+
# @see the `==` method
|
110
|
+
# @param [Object] Object to be compared
|
111
|
+
def eql?(o)
|
112
|
+
self == o
|
113
|
+
end
|
114
|
+
|
115
|
+
# Calculates hash code according to all attributes.
|
116
|
+
# @return [Integer] Hash code
|
117
|
+
def hash
|
118
|
+
[name, user_groups, email].hash
|
119
|
+
end
|
120
|
+
|
121
|
+
# Builds the object from hash
|
122
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
123
|
+
# @return [Object] Returns the model itself
|
124
|
+
def self.build_from_hash(attributes)
|
125
|
+
new.build_from_hash(attributes)
|
126
|
+
end
|
127
|
+
|
128
|
+
# Builds the object from hash
|
129
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
130
|
+
# @return [Object] Returns the model itself
|
131
|
+
def build_from_hash(attributes)
|
132
|
+
return nil unless attributes.is_a?(Hash)
|
133
|
+
self.class.openapi_types.each_pair do |key, type|
|
134
|
+
if type =~ /\AArray<(.*)>/i
|
135
|
+
# check to ensure the input is an array given that the attribute
|
136
|
+
# is documented as an array but the input is not
|
137
|
+
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
138
|
+
self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
|
139
|
+
end
|
140
|
+
elsif !attributes[self.class.attribute_map[key]].nil?
|
141
|
+
self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
|
142
|
+
end # or else data not found in attributes(hash), not an issue as the data can be optional
|
143
|
+
end
|
144
|
+
|
145
|
+
self
|
146
|
+
end
|
147
|
+
|
148
|
+
# Deserializes the data based on type
|
149
|
+
# @param string type Data type
|
150
|
+
# @param string value Value to be deserialized
|
151
|
+
# @return [Object] Deserialized data
|
152
|
+
def _deserialize(type, value)
|
153
|
+
case type.to_sym
|
154
|
+
when :DateTime
|
155
|
+
DateTime.parse(value)
|
156
|
+
when :Date
|
157
|
+
Date.parse(value)
|
158
|
+
when :String
|
159
|
+
value.to_s
|
160
|
+
when :Integer
|
161
|
+
value.to_i
|
162
|
+
when :Float
|
163
|
+
value.to_f
|
164
|
+
when :Boolean
|
165
|
+
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
|
166
|
+
true
|
167
|
+
else
|
168
|
+
false
|
169
|
+
end
|
170
|
+
when :Object
|
171
|
+
# generic object (usually a Hash), return directly
|
172
|
+
value
|
173
|
+
when /\AArray<(?<inner_type>.+)>\z/
|
174
|
+
inner_type = Regexp.last_match[:inner_type]
|
175
|
+
value.map { |v| _deserialize(inner_type, v) }
|
176
|
+
when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
|
177
|
+
k_type = Regexp.last_match[:k_type]
|
178
|
+
v_type = Regexp.last_match[:v_type]
|
179
|
+
{}.tap do |hash|
|
180
|
+
value.each do |k, v|
|
181
|
+
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
|
182
|
+
end
|
183
|
+
end
|
184
|
+
else # model
|
185
|
+
TalonOne.const_get(type).build_from_hash(value)
|
186
|
+
end
|
187
|
+
end
|
188
|
+
|
189
|
+
# Returns the string representation of the object
|
190
|
+
# @return [String] String presentation of the object
|
191
|
+
def to_s
|
192
|
+
to_hash.to_s
|
193
|
+
end
|
194
|
+
|
195
|
+
# to_body is an alias to to_hash (backward compatibility)
|
196
|
+
# @return [Hash] Returns the object in the form of hash
|
197
|
+
def to_body
|
198
|
+
to_hash
|
199
|
+
end
|
200
|
+
|
201
|
+
# Returns the object in the form of hash
|
202
|
+
# @return [Hash] Returns the object in the form of hash
|
203
|
+
def to_hash
|
204
|
+
hash = {}
|
205
|
+
self.class.attribute_map.each_pair do |attr, param|
|
206
|
+
value = self.send(attr)
|
207
|
+
if value.nil?
|
208
|
+
is_nullable = self.class.openapi_nullable.include?(attr)
|
209
|
+
next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
|
210
|
+
end
|
211
|
+
|
212
|
+
hash[param] = _to_hash(value)
|
213
|
+
end
|
214
|
+
hash
|
215
|
+
end
|
216
|
+
|
217
|
+
# Outputs non-array value in the form of hash
|
218
|
+
# For object, use to_hash. Otherwise, just return the value
|
219
|
+
# @param [Object] value Any valid value
|
220
|
+
# @return [Hash] Returns the value in the form of hash
|
221
|
+
def _to_hash(value)
|
222
|
+
if value.is_a?(Array)
|
223
|
+
value.compact.map { |v| _to_hash(v) }
|
224
|
+
elsif value.is_a?(Hash)
|
225
|
+
{}.tap do |hash|
|
226
|
+
value.each { |k, v| hash[k] = _to_hash(v) }
|
227
|
+
end
|
228
|
+
elsif value.respond_to? :to_hash
|
229
|
+
value.to_hash
|
230
|
+
else
|
231
|
+
value
|
232
|
+
end
|
233
|
+
end
|
234
|
+
end
|
235
|
+
end
|
@@ -39,17 +39,22 @@ module TalonOne
|
|
39
39
|
# Indicates if this program is a live or sandbox program. Programs of a given type can only be connected to Applications of the same type.
|
40
40
|
attr_accessor :sandbox
|
41
41
|
|
42
|
-
# The policy that defines
|
42
|
+
# The policy that defines when the customer joins the loyalty program. - `not_join`: The customer does not join the loyalty program but can still earn and spend loyalty points. **Note**: The customer does not have a program join date. - `points_activated`: The customer joins the loyalty program only when their earned loyalty points become active for the first time. - `points_earned`: The customer joins the loyalty program when they earn loyalty points for the first time.
|
43
|
+
attr_accessor :program_join_policy
|
44
|
+
|
45
|
+
# The policy that defines how tier expiration, used to reevaluate the customer's current tier, is determined. - `tier_start_date`: The tier expiration is relative to when the customer joined the current tier. - `program_join_date`: The tier expiration is relative to when the customer joined the loyalty program. - `customer_attribute`: The tier expiration is determined by a custom customer attribute. - `absolute_expiration`: The tier is reevaluated at the start of each tier cycle. For this policy, it is required to provide a `tierCycleStartDate`.
|
43
46
|
attr_accessor :tiers_expiration_policy
|
44
47
|
|
45
|
-
#
|
48
|
+
# Timestamp at which the tier cycle starts for all customers in the loyalty program. **Note**: This is only required when the tier expiration policy is set to `absolute_expiration`.
|
49
|
+
attr_accessor :tier_cycle_start_date
|
50
|
+
|
51
|
+
# The amount of time after which the tier expires and is reevaluated. The time format is an **integer** followed by one letter indicating the time unit. Examples: `30s`, `40m`, `1h`, `5D`, `7W`, `10M`, `15Y`. Available units: - `s`: seconds - `m`: minutes - `h`: hours - `D`: days - `W`: weeks - `M`: months - `Y`: years You can round certain units up or down: - `_D` for rounding down days only. Signifies the start of the day. - `_U` for rounding up days, weeks, months and years. Signifies the end of the day, week, month or year.
|
46
52
|
attr_accessor :tiers_expire_in
|
47
53
|
|
48
|
-
#
|
54
|
+
# The policy that defines how customer tiers are downgraded in the loyalty program after tier reevaluation. - `one_down`: If the customer doesn't have enough points to stay in the current tier, they are downgraded by one tier. - `balance_based`: The customer's tier is reevaluated based on the amount of active points they have at the moment.
|
49
55
|
attr_accessor :tiers_downgrade_policy
|
50
56
|
|
51
|
-
|
52
|
-
attr_accessor :program_join_policy
|
57
|
+
attr_accessor :card_code_settings
|
53
58
|
|
54
59
|
# The internal name for the Loyalty Program. This is an immutable value.
|
55
60
|
attr_accessor :name
|
@@ -96,10 +101,12 @@ module TalonOne
|
|
96
101
|
:'allow_subledger' => :'allowSubledger',
|
97
102
|
:'users_per_card_limit' => :'usersPerCardLimit',
|
98
103
|
:'sandbox' => :'sandbox',
|
104
|
+
:'program_join_policy' => :'programJoinPolicy',
|
99
105
|
:'tiers_expiration_policy' => :'tiersExpirationPolicy',
|
106
|
+
:'tier_cycle_start_date' => :'tierCycleStartDate',
|
100
107
|
:'tiers_expire_in' => :'tiersExpireIn',
|
101
108
|
:'tiers_downgrade_policy' => :'tiersDowngradePolicy',
|
102
|
-
:'
|
109
|
+
:'card_code_settings' => :'cardCodeSettings',
|
103
110
|
:'name' => :'name',
|
104
111
|
:'tiers' => :'tiers',
|
105
112
|
:'timezone' => :'timezone',
|
@@ -118,10 +125,12 @@ module TalonOne
|
|
118
125
|
:'allow_subledger' => :'Boolean',
|
119
126
|
:'users_per_card_limit' => :'Integer',
|
120
127
|
:'sandbox' => :'Boolean',
|
128
|
+
:'program_join_policy' => :'String',
|
121
129
|
:'tiers_expiration_policy' => :'String',
|
130
|
+
:'tier_cycle_start_date' => :'DateTime',
|
122
131
|
:'tiers_expire_in' => :'String',
|
123
132
|
:'tiers_downgrade_policy' => :'String',
|
124
|
-
:'
|
133
|
+
:'card_code_settings' => :'CodeGeneratorSettings',
|
125
134
|
:'name' => :'String',
|
126
135
|
:'tiers' => :'Array<NewLoyaltyTier>',
|
127
136
|
:'timezone' => :'String',
|
@@ -184,10 +193,18 @@ module TalonOne
|
|
184
193
|
self.sandbox = attributes[:'sandbox']
|
185
194
|
end
|
186
195
|
|
196
|
+
if attributes.key?(:'program_join_policy')
|
197
|
+
self.program_join_policy = attributes[:'program_join_policy']
|
198
|
+
end
|
199
|
+
|
187
200
|
if attributes.key?(:'tiers_expiration_policy')
|
188
201
|
self.tiers_expiration_policy = attributes[:'tiers_expiration_policy']
|
189
202
|
end
|
190
203
|
|
204
|
+
if attributes.key?(:'tier_cycle_start_date')
|
205
|
+
self.tier_cycle_start_date = attributes[:'tier_cycle_start_date']
|
206
|
+
end
|
207
|
+
|
191
208
|
if attributes.key?(:'tiers_expire_in')
|
192
209
|
self.tiers_expire_in = attributes[:'tiers_expire_in']
|
193
210
|
end
|
@@ -196,8 +213,8 @@ module TalonOne
|
|
196
213
|
self.tiers_downgrade_policy = attributes[:'tiers_downgrade_policy']
|
197
214
|
end
|
198
215
|
|
199
|
-
if attributes.key?(:'
|
200
|
-
self.
|
216
|
+
if attributes.key?(:'card_code_settings')
|
217
|
+
self.card_code_settings = attributes[:'card_code_settings']
|
201
218
|
end
|
202
219
|
|
203
220
|
if attributes.key?(:'name')
|
@@ -277,12 +294,12 @@ module TalonOne
|
|
277
294
|
return false if @allow_subledger.nil?
|
278
295
|
return false if !@users_per_card_limit.nil? && @users_per_card_limit < 0
|
279
296
|
return false if @sandbox.nil?
|
280
|
-
|
297
|
+
program_join_policy_validator = EnumAttributeValidator.new('String', ["not_join", "points_activated", "points_earned"])
|
298
|
+
return false unless program_join_policy_validator.valid?(@program_join_policy)
|
299
|
+
tiers_expiration_policy_validator = EnumAttributeValidator.new('String', ["tier_start_date", "program_join_date", "customer_attribute", "absolute_expiration"])
|
281
300
|
return false unless tiers_expiration_policy_validator.valid?(@tiers_expiration_policy)
|
282
301
|
tiers_downgrade_policy_validator = EnumAttributeValidator.new('String', ["one_down", "balance_based"])
|
283
302
|
return false unless tiers_downgrade_policy_validator.valid?(@tiers_downgrade_policy)
|
284
|
-
program_join_policy_validator = EnumAttributeValidator.new('String', ["not_join", "points_activated", "points_earned"])
|
285
|
-
return false unless program_join_policy_validator.valid?(@program_join_policy)
|
286
303
|
return false if @name.nil?
|
287
304
|
return false if @timezone.nil?
|
288
305
|
return false if @timezone.to_s.length < 1
|
@@ -300,10 +317,20 @@ module TalonOne
|
|
300
317
|
@users_per_card_limit = users_per_card_limit
|
301
318
|
end
|
302
319
|
|
320
|
+
# Custom attribute writer method checking allowed values (enum).
|
321
|
+
# @param [Object] program_join_policy Object to be assigned
|
322
|
+
def program_join_policy=(program_join_policy)
|
323
|
+
validator = EnumAttributeValidator.new('String', ["not_join", "points_activated", "points_earned"])
|
324
|
+
unless validator.valid?(program_join_policy)
|
325
|
+
fail ArgumentError, "invalid value for \"program_join_policy\", must be one of #{validator.allowable_values}."
|
326
|
+
end
|
327
|
+
@program_join_policy = program_join_policy
|
328
|
+
end
|
329
|
+
|
303
330
|
# Custom attribute writer method checking allowed values (enum).
|
304
331
|
# @param [Object] tiers_expiration_policy Object to be assigned
|
305
332
|
def tiers_expiration_policy=(tiers_expiration_policy)
|
306
|
-
validator = EnumAttributeValidator.new('String', ["tier_start_date", "program_join_date"])
|
333
|
+
validator = EnumAttributeValidator.new('String', ["tier_start_date", "program_join_date", "customer_attribute", "absolute_expiration"])
|
307
334
|
unless validator.valid?(tiers_expiration_policy)
|
308
335
|
fail ArgumentError, "invalid value for \"tiers_expiration_policy\", must be one of #{validator.allowable_values}."
|
309
336
|
end
|
@@ -320,16 +347,6 @@ module TalonOne
|
|
320
347
|
@tiers_downgrade_policy = tiers_downgrade_policy
|
321
348
|
end
|
322
349
|
|
323
|
-
# Custom attribute writer method checking allowed values (enum).
|
324
|
-
# @param [Object] program_join_policy Object to be assigned
|
325
|
-
def program_join_policy=(program_join_policy)
|
326
|
-
validator = EnumAttributeValidator.new('String', ["not_join", "points_activated", "points_earned"])
|
327
|
-
unless validator.valid?(program_join_policy)
|
328
|
-
fail ArgumentError, "invalid value for \"program_join_policy\", must be one of #{validator.allowable_values}."
|
329
|
-
end
|
330
|
-
@program_join_policy = program_join_policy
|
331
|
-
end
|
332
|
-
|
333
350
|
# Custom attribute writer method with validation
|
334
351
|
# @param [Object] timezone Value to be assigned
|
335
352
|
def timezone=(timezone)
|
@@ -357,10 +374,12 @@ module TalonOne
|
|
357
374
|
allow_subledger == o.allow_subledger &&
|
358
375
|
users_per_card_limit == o.users_per_card_limit &&
|
359
376
|
sandbox == o.sandbox &&
|
377
|
+
program_join_policy == o.program_join_policy &&
|
360
378
|
tiers_expiration_policy == o.tiers_expiration_policy &&
|
379
|
+
tier_cycle_start_date == o.tier_cycle_start_date &&
|
361
380
|
tiers_expire_in == o.tiers_expire_in &&
|
362
381
|
tiers_downgrade_policy == o.tiers_downgrade_policy &&
|
363
|
-
|
382
|
+
card_code_settings == o.card_code_settings &&
|
364
383
|
name == o.name &&
|
365
384
|
tiers == o.tiers &&
|
366
385
|
timezone == o.timezone &&
|
@@ -376,7 +395,7 @@ module TalonOne
|
|
376
395
|
# Calculates hash code according to all attributes.
|
377
396
|
# @return [Integer] Hash code
|
378
397
|
def hash
|
379
|
-
[title, description, subscribed_applications, default_validity, default_pending, allow_subledger, users_per_card_limit, sandbox, tiers_expiration_policy, tiers_expire_in, tiers_downgrade_policy,
|
398
|
+
[title, description, subscribed_applications, default_validity, default_pending, allow_subledger, users_per_card_limit, sandbox, program_join_policy, tiers_expiration_policy, tier_cycle_start_date, tiers_expire_in, tiers_downgrade_policy, card_code_settings, name, tiers, timezone, card_based].hash
|
380
399
|
end
|
381
400
|
|
382
401
|
# Builds the object from hash
|
@@ -155,7 +155,7 @@ module TalonOne
|
|
155
155
|
# @return true if the model is valid
|
156
156
|
def valid?
|
157
157
|
return false if @type.nil?
|
158
|
-
type_validator = EnumAttributeValidator.new('String', ["campaign", "loyalty_added_deducted_points", "coupon", "expiring_coupons", "expiring_points", "pending_to_active_points", "strikethrough_pricing", "tier_downgrade", "tier_upgrade", "tier_will_downgrade", "card_expiring_points"])
|
158
|
+
type_validator = EnumAttributeValidator.new('String', ["campaign", "loyalty_added_deducted_points", "card_added_deducted_points", "coupon", "expiring_coupons", "expiring_points", "pending_to_active_points", "strikethrough_pricing", "tier_downgrade", "tier_upgrade", "tier_will_downgrade", "card_expiring_points"])
|
159
159
|
return false unless type_validator.valid?(@type)
|
160
160
|
return false if @verb.nil?
|
161
161
|
verb_validator = EnumAttributeValidator.new('String', ["POST", "PUT", "GET", "DELETE", "PATCH"])
|
@@ -168,7 +168,7 @@ module TalonOne
|
|
168
168
|
# Custom attribute writer method checking allowed values (enum).
|
169
169
|
# @param [Object] type Object to be assigned
|
170
170
|
def type=(type)
|
171
|
-
validator = EnumAttributeValidator.new('String', ["campaign", "loyalty_added_deducted_points", "coupon", "expiring_coupons", "expiring_points", "pending_to_active_points", "strikethrough_pricing", "tier_downgrade", "tier_upgrade", "tier_will_downgrade", "card_expiring_points"])
|
171
|
+
validator = EnumAttributeValidator.new('String', ["campaign", "loyalty_added_deducted_points", "card_added_deducted_points", "coupon", "expiring_coupons", "expiring_points", "pending_to_active_points", "strikethrough_pricing", "tier_downgrade", "tier_upgrade", "tier_will_downgrade", "card_expiring_points"])
|
172
172
|
unless validator.valid?(type)
|
173
173
|
fail ArgumentError, "invalid value for \"type\", must be one of #{validator.allowable_values}."
|
174
174
|
end
|
@@ -17,6 +17,9 @@ module TalonOne
|
|
17
17
|
# Webhook title.
|
18
18
|
attr_accessor :title
|
19
19
|
|
20
|
+
# A description of the webhook.
|
21
|
+
attr_accessor :description
|
22
|
+
|
20
23
|
# IDs of the Applications to which a webhook must be linked.
|
21
24
|
attr_accessor :application_ids
|
22
25
|
|
@@ -24,6 +27,7 @@ module TalonOne
|
|
24
27
|
def self.attribute_map
|
25
28
|
{
|
26
29
|
:'title' => :'title',
|
30
|
+
:'description' => :'description',
|
27
31
|
:'application_ids' => :'applicationIds'
|
28
32
|
}
|
29
33
|
end
|
@@ -32,6 +36,7 @@ module TalonOne
|
|
32
36
|
def self.openapi_types
|
33
37
|
{
|
34
38
|
:'title' => :'String',
|
39
|
+
:'description' => :'String',
|
35
40
|
:'application_ids' => :'Array<Integer>'
|
36
41
|
}
|
37
42
|
end
|
@@ -61,6 +66,10 @@ module TalonOne
|
|
61
66
|
self.title = attributes[:'title']
|
62
67
|
end
|
63
68
|
|
69
|
+
if attributes.key?(:'description')
|
70
|
+
self.description = attributes[:'description']
|
71
|
+
end
|
72
|
+
|
64
73
|
if attributes.key?(:'application_ids')
|
65
74
|
if (value = attributes[:'application_ids']).is_a?(Array)
|
66
75
|
self.application_ids = value
|
@@ -97,6 +106,7 @@ module TalonOne
|
|
97
106
|
return true if self.equal?(o)
|
98
107
|
self.class == o.class &&
|
99
108
|
title == o.title &&
|
109
|
+
description == o.description &&
|
100
110
|
application_ids == o.application_ids
|
101
111
|
end
|
102
112
|
|
@@ -109,7 +119,7 @@ module TalonOne
|
|
109
119
|
# Calculates hash code according to all attributes.
|
110
120
|
# @return [Integer] Hash code
|
111
121
|
def hash
|
112
|
-
[title, application_ids].hash
|
122
|
+
[title, description, application_ids].hash
|
113
123
|
end
|
114
124
|
|
115
125
|
# Builds the object from hash
|
@@ -18,7 +18,7 @@ module TalonOne
|
|
18
18
|
# Timestamp at which point the referral code becomes valid.
|
19
19
|
attr_accessor :start_date
|
20
20
|
|
21
|
-
# Expiration date of the referral code. Referral never expires if this is omitted
|
21
|
+
# Expiration date of the referral code. Referral never expires if this is omitted.
|
22
22
|
attr_accessor :expiry_date
|
23
23
|
|
24
24
|
# The number of times a referral code can be used. `0` means no limit but any campaign usage limits will still apply.
|
@@ -18,7 +18,7 @@ module TalonOne
|
|
18
18
|
# Timestamp at which point the referral code becomes valid.
|
19
19
|
attr_accessor :start_date
|
20
20
|
|
21
|
-
# Expiration date of the referral code. Referral never expires if this is omitted
|
21
|
+
# Expiration date of the referral code. Referral never expires if this is omitted.
|
22
22
|
attr_accessor :expiry_date
|
23
23
|
|
24
24
|
# The number of times a referral code can be used. `0` means no limit but any campaign usage limits will still apply.
|