Class: Google::Apis::WalletobjectsV1::LoyaltyClass

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/walletobjects_v1/classes.rb,
lib/google/apis/walletobjects_v1/representations.rb,
lib/google/apis/walletobjects_v1/representations.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ LoyaltyClass



5228
5229
5230
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5228

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#account_id_labelString

The account ID label, such as "Member ID." Recommended maximum length is 15 characters to ensure full string is displayed on smaller screens. Corresponds to the JSON property accountIdLabel



4930
4931
4932
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 4930

def 
  @account_id_label
end

#account_name_labelString

The account name label, such as "Member Name." Recommended maximum length is 15 characters to ensure full string is displayed on smaller screens. Corresponds to the JSON property accountNameLabel



4936
4937
4938
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 4936

def 
  @account_name_label
end

#allow_multiple_users_per_objectBoolean Also known as: allow_multiple_users_per_object?

Deprecated. Use multipleDevicesAndHoldersAllowedStatus instead. Corresponds to the JSON property allowMultipleUsersPerObject



4941
4942
4943
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 4941

def allow_multiple_users_per_object
  @allow_multiple_users_per_object
end

Optional app or website link that will be displayed as a button on the front of the pass. If AppLinkData is provided for the corresponding object that will be used instead. Corresponds to the JSON property appLinkData



4949
4950
4951
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 4949

def app_link_data
  @app_link_data
end

#callback_optionsGoogle::Apis::WalletobjectsV1::CallbackOptions

Callback options to be used to call the issuer back for every save/delete of an object for this class by the end-user. All objects of this class are eligible for the callback. Corresponds to the JSON property callbackOptions



4956
4957
4958
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 4956

def callback_options
  @callback_options
end

#class_template_infoGoogle::Apis::WalletobjectsV1::ClassTemplateInfo

Template information about how the class should be displayed. If unset, Google will fallback to a default set of fields to display. Corresponds to the JSON property classTemplateInfo



4962
4963
4964
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 4962

def class_template_info
  @class_template_info
end

#country_codeString

Country code used to display the card's country (when the user is not in that country), as well as to display localized content when content is not available in the user's locale. Corresponds to the JSON property countryCode



4969
4970
4971
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 4969

def country_code
  @country_code
end

#discoverable_programGoogle::Apis::WalletobjectsV1::DiscoverableProgram

Information about how a class may be discovered and instantiated from within the Google Wallet app. This is done by searching for a loyalty or gift card program and scanning or manually entering. Corresponds to the JSON property discoverableProgram



4976
4977
4978
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 4976

def discoverable_program
  @discoverable_program
end

#enable_smart_tapBoolean Also known as: enable_smart_tap?

Identifies whether this class supports Smart Tap. The redemptionIssuers and one of object level smartTapRedemptionLevel, barcode.value, oraccountId fields must also be set up correctly in order for a pass to support Smart Tap. Corresponds to the JSON propertyenableSmartTap`



4983
4984
4985
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 4983

def enable_smart_tap
  @enable_smart_tap
end

#hero_imageGoogle::Apis::WalletobjectsV1::Image

Wrapping type for Google hosted images. Corresponds to the JSON property heroImage



4989
4990
4991
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 4989

def hero_image
  @hero_image
end

#hex_background_colorString

The background color for the card. If not set the dominant color of the hero image is used, and if no hero image is set, the dominant color of the logo is used. The format is #rrggbb where rrggbb is a hex RGB triplet, such as # ffcc00. You can also use the shorthand version of the RGB triplet which is # rgb, such as #fc0. Corresponds to the JSON property hexBackgroundColor



4998
4999
5000
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 4998

def hex_background_color
  @hex_background_color
end

#homepage_uriGoogle::Apis::WalletobjectsV1::Uri

The URI of your application's home page. Populating the URI in this field results in the exact same behavior as populating an URI in linksModuleData ( when an object is rendered, a link to the homepage is shown in what would usually be thought of as the linksModuleData section of the object). Corresponds to the JSON property homepageUri



5006
5007
5008
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5006

def homepage_uri
  @homepage_uri
end

#idString

Required. The unique identifier for a class. This ID must be unique across all classes from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'. Corresponds to the JSON property id



5015
5016
5017
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5015

def id
  @id
end

#image_modules_dataArray<Google::Apis::WalletobjectsV1::ImageModuleData>

Image module data. The maximum number of these fields displayed is 1 from object level and 1 for class object level. Corresponds to the JSON property imageModulesData



5021
5022
5023
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5021

def image_modules_data
  @image_modules_data
end

#info_module_dataGoogle::Apis::WalletobjectsV1::InfoModuleData

Deprecated. Use textModulesData instead. Corresponds to the JSON property infoModuleData



5026
5027
5028
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5026

def info_module_data
  @info_module_data
end

#issuer_nameString

Required. The issuer name. Recommended maximum length is 20 characters to ensure full string is displayed on smaller screens. Corresponds to the JSON property issuerName



5032
5033
5034
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5032

def issuer_name
  @issuer_name
end

#kindString

Identifies what kind of resource this is. Value: the fixed string " walletobjects#loyaltyClass". Corresponds to the JSON property kind



5038
5039
5040
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5038

def kind
  @kind
end

Links module data. If links module data is also defined on the object, both will be displayed. Corresponds to the JSON property linksModuleData



5044
5045
5046
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5044

def links_module_data
  @links_module_data
end

#localized_account_id_labelGoogle::Apis::WalletobjectsV1::LocalizedString

Translated strings for the account_id_label. Recommended maximum length is 15 characters to ensure full string is displayed on smaller screens. Corresponds to the JSON property localizedAccountIdLabel



5050
5051
5052
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5050

def 
  @localized_account_id_label
end

#localized_account_name_labelGoogle::Apis::WalletobjectsV1::LocalizedString

Translated strings for the account_name_label. Recommended maximum length is 15 characters to ensure full string is displayed on smaller screens. Corresponds to the JSON property localizedAccountNameLabel



5056
5057
5058
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5056

def 
  @localized_account_name_label
end

#localized_issuer_nameGoogle::Apis::WalletobjectsV1::LocalizedString

Translated strings for the issuer_name. Recommended maximum length is 20 characters to ensure full string is displayed on smaller screens. Corresponds to the JSON property localizedIssuerName



5062
5063
5064
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5062

def localized_issuer_name
  @localized_issuer_name
end

#localized_program_nameGoogle::Apis::WalletobjectsV1::LocalizedString

Translated strings for the program_name. The app may display an ellipsis after the first 20 characters to ensure full string is displayed on smaller screens. Corresponds to the JSON property localizedProgramName



5068
5069
5070
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5068

def localized_program_name
  @localized_program_name
end

#localized_rewards_tierGoogle::Apis::WalletobjectsV1::LocalizedString

Translated strings for the rewards_tier. Recommended maximum length is 7 characters to ensure full string is displayed on smaller screens. Corresponds to the JSON property localizedRewardsTier



5074
5075
5076
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5074

def localized_rewards_tier
  @localized_rewards_tier
end

#localized_rewards_tier_labelGoogle::Apis::WalletobjectsV1::LocalizedString

Translated strings for the rewards_tier_label. Recommended maximum length is 9 characters to ensure full string is displayed on smaller screens. Corresponds to the JSON property localizedRewardsTierLabel



5080
5081
5082
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5080

def localized_rewards_tier_label
  @localized_rewards_tier_label
end

#localized_secondary_rewards_tierGoogle::Apis::WalletobjectsV1::LocalizedString

Translated strings for the secondary_rewards_tier. Corresponds to the JSON property localizedSecondaryRewardsTier



5085
5086
5087
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5085

def localized_secondary_rewards_tier
  @localized_secondary_rewards_tier
end

#localized_secondary_rewards_tier_labelGoogle::Apis::WalletobjectsV1::LocalizedString

Translated strings for the secondary_rewards_tier_label. Corresponds to the JSON property localizedSecondaryRewardsTierLabel



5090
5091
5092
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5090

def localized_secondary_rewards_tier_label
  @localized_secondary_rewards_tier_label
end

#locationsArray<Google::Apis::WalletobjectsV1::LatLongPoint>

Note: This field is currently not supported to trigger geo notifications. Corresponds to the JSON property locations



5095
5096
5097
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5095

def locations
  @locations
end

#merchant_locationsArray<Google::Apis::WalletobjectsV1::MerchantLocation>

Merchant locations. There is a maximum of ten on the class. Any additional MerchantLocations added beyond the 10 will be rejected. These locations will trigger a notification when a user enters within a Google-set radius of the point. This field replaces the deprecated LatLongPoints. Corresponds to the JSON property merchantLocations



5103
5104
5105
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5103

def merchant_locations
  @merchant_locations
end

#messagesArray<Google::Apis::WalletobjectsV1::Message>

An array of messages displayed in the app. All users of this object will receive its associated messages. The maximum number of these fields is 10. Corresponds to the JSON property messages



5109
5110
5111
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5109

def messages
  @messages
end

#multiple_devices_and_holders_allowed_statusString

Identifies whether multiple users and devices will save the same object referencing this class. Corresponds to the JSON property multipleDevicesAndHoldersAllowedStatus



5115
5116
5117
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5115

def multiple_devices_and_holders_allowed_status
  @multiple_devices_and_holders_allowed_status
end

#notify_preferenceString

Whether or not field updates to this class should trigger notifications. When set to NOTIFY, we will attempt to trigger a field update notification to users. These notifications will only be sent to users if the field is part of an allowlist. If not specified, no notification will be triggered. This setting is ephemeral and needs to be set with each PATCH or UPDATE request, otherwise a notification will not be triggered. Corresponds to the JSON property notifyPreference



5125
5126
5127
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5125

def notify_preference
  @notify_preference
end

#program_logoGoogle::Apis::WalletobjectsV1::Image

Wrapping type for Google hosted images. Corresponds to the JSON property programLogo



5130
5131
5132
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5130

def 
  @program_logo
end

#program_nameString

Required. The program name, such as "Adam's Apparel". The app may display an ellipsis after the first 20 characters to ensure full string is displayed on smaller screens. Corresponds to the JSON property programName



5137
5138
5139
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5137

def program_name
  @program_name
end

#redemption_issuersArray<Fixnum>

Identifies which redemption issuers can redeem the pass over Smart Tap. Redemption issuers are identified by their issuer ID. Redemption issuers must have at least one Smart Tap key configured. The enableSmartTap and one of object level smartTapRedemptionValue, barcode.value, oraccountIdfields must also be set up correctly in order for a pass to support Smart Tap. Corresponds to the JSON propertyredemptionIssuers`



5146
5147
5148
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5146

def redemption_issuers
  @redemption_issuers
end

#reviewGoogle::Apis::WalletobjectsV1::Review

The review comments set by the platform when a class is marked approved or rejected. Corresponds to the JSON property review



5152
5153
5154
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5152

def review
  @review
end

#review_statusString

Required. The status of the class. This field can be set to draft or underReview using the insert, patch, or update API calls. Once the review state is changed from draft it may not be changed back to draft. You should keep this field to draft when the class is under development. A draft class cannot be used to create any object. You should set this field to underReview when you believe the class is ready for use. The platform will automatically set this field to approved and it can be immediately used to create or migrate objects. When updating an already approved class you should keep setting this field to underReview. Corresponds to the JSON property reviewStatus



5165
5166
5167
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5165

def review_status
  @review_status
end

#rewards_tierString

The rewards tier, such as "Gold" or "Platinum." Recommended maximum length is 7 characters to ensure full string is displayed on smaller screens. Corresponds to the JSON property rewardsTier



5171
5172
5173
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5171

def rewards_tier
  @rewards_tier
end

#rewards_tier_labelString

The rewards tier label, such as "Rewards Tier." Recommended maximum length is 9 characters to ensure full string is displayed on smaller screens. Corresponds to the JSON property rewardsTierLabel



5177
5178
5179
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5177

def rewards_tier_label
  @rewards_tier_label
end

#secondary_rewards_tierString

The secondary rewards tier, such as "Gold" or "Platinum." Corresponds to the JSON property secondaryRewardsTier



5182
5183
5184
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5182

def secondary_rewards_tier
  @secondary_rewards_tier
end

#secondary_rewards_tier_labelString

The secondary rewards tier label, such as "Rewards Tier." Corresponds to the JSON property secondaryRewardsTierLabel



5187
5188
5189
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5187

def secondary_rewards_tier_label
  @secondary_rewards_tier_label
end

#security_animationGoogle::Apis::WalletobjectsV1::SecurityAnimation

Optional information about the security animation. If this is set a security animation will be rendered on pass details. Corresponds to the JSON property securityAnimation



5193
5194
5195
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5193

def security_animation
  @security_animation
end

#text_modules_dataArray<Google::Apis::WalletobjectsV1::TextModuleData>

Text module data. If text module data is also defined on the class, both will be displayed. The maximum number of these fields displayed is 10 from the object and 10 from the class. Corresponds to the JSON property textModulesData



5200
5201
5202
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5200

def text_modules_data
  @text_modules_data
end

#value_added_module_dataArray<Google::Apis::WalletobjectsV1::ValueAddedModuleData>

Optional value added module data. Maximum of fifteen on the class. For a pass only fifteen will be displayed, prioritizing those from the object. Corresponds to the JSON property valueAddedModuleData



5206
5207
5208
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5206

def value_added_module_data
  @value_added_module_data
end

#versionFixnum

Deprecated Corresponds to the JSON property version



5211
5212
5213
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5211

def version
  @version
end

#view_unlock_requirementString

View Unlock Requirement options for the loyalty card. Corresponds to the JSON property viewUnlockRequirement



5216
5217
5218
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5216

def view_unlock_requirement
  @view_unlock_requirement
end

#wide_program_logoGoogle::Apis::WalletobjectsV1::Image

Wrapping type for Google hosted images. Corresponds to the JSON property wideProgramLogo



5221
5222
5223
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5221

def 
  @wide_program_logo
end

#word_markGoogle::Apis::WalletobjectsV1::Image

Wrapping type for Google hosted images. Corresponds to the JSON property wordMark



5226
5227
5228
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5226

def word_mark
  @word_mark
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



5233
5234
5235
5236
5237
5238
5239
5240
5241
5242
5243
5244
5245
5246
5247
5248
5249
5250
5251
5252
5253
5254
5255
5256
5257
5258
5259
5260
5261
5262
5263
5264
5265
5266
5267
5268
5269
5270
5271
5272
5273
5274
5275
5276
5277
5278
5279
5280
5281
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5233

def update!(**args)
  @account_id_label = args[:account_id_label] if args.key?(:account_id_label)
  @account_name_label = args[:account_name_label] if args.key?(:account_name_label)
  @allow_multiple_users_per_object = args[:allow_multiple_users_per_object] if args.key?(:allow_multiple_users_per_object)
  @app_link_data = args[:app_link_data] if args.key?(:app_link_data)
  @callback_options = args[:callback_options] if args.key?(:callback_options)
  @class_template_info = args[:class_template_info] if args.key?(:class_template_info)
  @country_code = args[:country_code] if args.key?(:country_code)
  @discoverable_program = args[:discoverable_program] if args.key?(:discoverable_program)
  @enable_smart_tap = args[:enable_smart_tap] if args.key?(:enable_smart_tap)
  @hero_image = args[:hero_image] if args.key?(:hero_image)
  @hex_background_color = args[:hex_background_color] if args.key?(:hex_background_color)
  @homepage_uri = args[:homepage_uri] if args.key?(:homepage_uri)
  @id = args[:id] if args.key?(:id)
  @image_modules_data = args[:image_modules_data] if args.key?(:image_modules_data)
  @info_module_data = args[:info_module_data] if args.key?(:info_module_data)
  @issuer_name = args[:issuer_name] if args.key?(:issuer_name)
  @kind = args[:kind] if args.key?(:kind)
  @links_module_data = args[:links_module_data] if args.key?(:links_module_data)
  @localized_account_id_label = args[:localized_account_id_label] if args.key?(:localized_account_id_label)
  @localized_account_name_label = args[:localized_account_name_label] if args.key?(:localized_account_name_label)
  @localized_issuer_name = args[:localized_issuer_name] if args.key?(:localized_issuer_name)
  @localized_program_name = args[:localized_program_name] if args.key?(:localized_program_name)
  @localized_rewards_tier = args[:localized_rewards_tier] if args.key?(:localized_rewards_tier)
  @localized_rewards_tier_label = args[:localized_rewards_tier_label] if args.key?(:localized_rewards_tier_label)
  @localized_secondary_rewards_tier = args[:localized_secondary_rewards_tier] if args.key?(:localized_secondary_rewards_tier)
  @localized_secondary_rewards_tier_label = args[:localized_secondary_rewards_tier_label] if args.key?(:localized_secondary_rewards_tier_label)
  @locations = args[:locations] if args.key?(:locations)
  @merchant_locations = args[:merchant_locations] if args.key?(:merchant_locations)
  @messages = args[:messages] if args.key?(:messages)
  @multiple_devices_and_holders_allowed_status = args[:multiple_devices_and_holders_allowed_status] if args.key?(:multiple_devices_and_holders_allowed_status)
  @notify_preference = args[:notify_preference] if args.key?(:notify_preference)
  @program_logo = args[:program_logo] if args.key?(:program_logo)
  @program_name = args[:program_name] if args.key?(:program_name)
  @redemption_issuers = args[:redemption_issuers] if args.key?(:redemption_issuers)
  @review = args[:review] if args.key?(:review)
  @review_status = args[:review_status] if args.key?(:review_status)
  @rewards_tier = args[:rewards_tier] if args.key?(:rewards_tier)
  @rewards_tier_label = args[:rewards_tier_label] if args.key?(:rewards_tier_label)
  @secondary_rewards_tier = args[:secondary_rewards_tier] if args.key?(:secondary_rewards_tier)
  @secondary_rewards_tier_label = args[:secondary_rewards_tier_label] if args.key?(:secondary_rewards_tier_label)
  @security_animation = args[:security_animation] if args.key?(:security_animation)
  @text_modules_data = args[:text_modules_data] if args.key?(:text_modules_data)
  @value_added_module_data = args[:value_added_module_data] if args.key?(:value_added_module_data)
  @version = args[:version] if args.key?(:version)
  @view_unlock_requirement = args[:view_unlock_requirement] if args.key?(:view_unlock_requirement)
  @wide_program_logo = args[:wide_program_logo] if args.key?(:wide_program_logo)
  @word_mark = args[:word_mark] if args.key?(:word_mark)
end