Class: Google::Apis::WalletobjectsV1::OfferClass

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) ⇒ OfferClass

Returns a new instance of OfferClass.



6562
6563
6564
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6562

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

Instance Attribute Details

#allow_multiple_users_per_objectBoolean Also known as: allow_multiple_users_per_object?

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

Returns:

  • (Boolean)


6280
6281
6282
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6280

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



6288
6289
6290
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6288

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



6295
6296
6297
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6295

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



6301
6302
6303
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6301

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

Returns:

  • (String)


6308
6309
6310
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6308

def country_code
  @country_code
end

#detailsString

The details of the offer. Corresponds to the JSON property details

Returns:

  • (String)


6313
6314
6315
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6313

def details
  @details
end

#enable_smart_tapBoolean Also known as: enable_smart_tap?

Identifies whether this class supports Smart Tap. The redemptionIssuers and object level smartTapRedemptionLevel fields must also be set up correctly in order for a pass to support Smart Tap. Corresponds to the JSON property enableSmartTap

Returns:

  • (Boolean)


6320
6321
6322
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6320

def enable_smart_tap
  @enable_smart_tap
end

#fine_printString

The fine print or terms of the offer, such as "20% off any t-shirt at Adam's Apparel." Corresponds to the JSON property finePrint

Returns:

  • (String)


6327
6328
6329
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6327

def fine_print
  @fine_print
end

#help_uriGoogle::Apis::WalletobjectsV1::Uri

The help link for the offer, such as http://myownpersonaldomain.com/help Corresponds to the JSON property helpUri



6332
6333
6334
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6332

def help_uri
  @help_uri
end

#hero_imageGoogle::Apis::WalletobjectsV1::Image

Wrapping type for Google hosted images. Next ID: 7 Corresponds to the JSON property heroImage



6337
6338
6339
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6337

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

Returns:

  • (String)


6346
6347
6348
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6346

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



6354
6355
6356
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6354

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

Returns:

  • (String)


6363
6364
6365
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6363

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



6369
6370
6371
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6369

def image_modules_data
  @image_modules_data
end

#info_module_dataGoogle::Apis::WalletobjectsV1::InfoModuleData

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



6374
6375
6376
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6374

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

Returns:

  • (String)


6380
6381
6382
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6380

def issuer_name
  @issuer_name
end

#kindString

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

Returns:

  • (String)


6386
6387
6388
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6386

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



6392
6393
6394
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6392

def links_module_data
  @links_module_data
end

#localized_detailsGoogle::Apis::WalletobjectsV1::LocalizedString

Translated strings for the details. Corresponds to the JSON property localizedDetails



6397
6398
6399
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6397

def localized_details
  @localized_details
end

#localized_fine_printGoogle::Apis::WalletobjectsV1::LocalizedString

Translated strings for the fine_print. Corresponds to the JSON property localizedFinePrint



6402
6403
6404
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6402

def localized_fine_print
  @localized_fine_print
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



6408
6409
6410
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6408

def localized_issuer_name
  @localized_issuer_name
end

#localized_providerGoogle::Apis::WalletobjectsV1::LocalizedString

Translated strings for the provider. Recommended maximum length is 12 characters to ensure full string is displayed on smaller screens. Corresponds to the JSON property localizedProvider



6414
6415
6416
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6414

def localized_provider
  @localized_provider
end

#localized_short_titleGoogle::Apis::WalletobjectsV1::LocalizedString

Translated strings for the short title. Recommended maximum length is 20 characters. Corresponds to the JSON property localizedShortTitle



6420
6421
6422
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6420

def localized_short_title
  @localized_short_title
end

#localized_titleGoogle::Apis::WalletobjectsV1::LocalizedString

Translated strings for the title. Recommended maximum length is 60 characters to ensure full string is displayed on smaller screens. Corresponds to the JSON property localizedTitle



6426
6427
6428
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6426

def localized_title
  @localized_title
end

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

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



6431
6432
6433
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6431

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



6439
6440
6441
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6439

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



6445
6446
6447
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6445

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

Returns:

  • (String)


6451
6452
6453
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6451

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

Returns:

  • (String)


6461
6462
6463
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6461

def notify_preference
  @notify_preference
end

#providerString

Required. The offer provider (either the aggregator name or merchant name). Recommended maximum length is 12 characters to ensure full string is displayed on smaller screens. Corresponds to the JSON property provider

Returns:

  • (String)


6468
6469
6470
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6468

def provider
  @provider
end

#redemption_channelString

Required. The redemption channels applicable to this offer. Corresponds to the JSON property redemptionChannel

Returns:

  • (String)


6473
6474
6475
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6473

def redemption_channel
  @redemption_channel
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 object level smartTapRedemptionLevel fields must also be set up correctly in order for a pass to support Smart Tap. Corresponds to the JSON property redemptionIssuers

Returns:

  • (Array<Fixnum>)


6482
6483
6484
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6482

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



6488
6489
6490
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6488

def review
  @review
end

#review_statusString

Required. The status of the class. This field can be set to draft or 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

Returns:

  • (String)


6502
6503
6504
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6502

def review_status
  @review_status
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



6508
6509
6510
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6508

def security_animation
  @security_animation
end

#short_titleString

A shortened version of the title of the offer, such as "20% off," shown to users as a quick reference to the offer contents. Recommended maximum length is 20 characters. Corresponds to the JSON property shortTitle

Returns:

  • (String)


6515
6516
6517
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6515

def short_title
  @short_title
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



6522
6523
6524
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6522

def text_modules_data
  @text_modules_data
end

#titleString

Required. The title of the offer, such as "20% off any t-shirt." Recommended maximum length is 60 characters to ensure full string is displayed on smaller screens. Corresponds to the JSON property title

Returns:

  • (String)


6529
6530
6531
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6529

def title
  @title
end

#title_imageGoogle::Apis::WalletobjectsV1::Image

Wrapping type for Google hosted images. Next ID: 7 Corresponds to the JSON property titleImage



6534
6535
6536
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6534

def title_image
  @title_image
end

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

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



6540
6541
6542
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6540

def value_added_module_data
  @value_added_module_data
end

#versionFixnum

Deprecated Corresponds to the JSON property version

Returns:

  • (Fixnum)


6545
6546
6547
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6545

def version
  @version
end

#view_unlock_requirementString

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

Returns:

  • (String)


6550
6551
6552
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6550

def view_unlock_requirement
  @view_unlock_requirement
end

#wide_title_imageGoogle::Apis::WalletobjectsV1::Image

Wrapping type for Google hosted images. Next ID: 7 Corresponds to the JSON property wideTitleImage



6555
6556
6557
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6555

def wide_title_image
  @wide_title_image
end

#word_markGoogle::Apis::WalletobjectsV1::Image

Wrapping type for Google hosted images. Next ID: 7 Corresponds to the JSON property wordMark



6560
6561
6562
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6560

def word_mark
  @word_mark
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



6567
6568
6569
6570
6571
6572
6573
6574
6575
6576
6577
6578
6579
6580
6581
6582
6583
6584
6585
6586
6587
6588
6589
6590
6591
6592
6593
6594
6595
6596
6597
6598
6599
6600
6601
6602
6603
6604
6605
6606
6607
6608
6609
6610
6611
6612
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6567

def update!(**args)
  @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)
  @details = args[:details] if args.key?(:details)
  @enable_smart_tap = args[:enable_smart_tap] if args.key?(:enable_smart_tap)
  @fine_print = args[:fine_print] if args.key?(:fine_print)
  @help_uri = args[:help_uri] if args.key?(:help_uri)
  @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_details = args[:localized_details] if args.key?(:localized_details)
  @localized_fine_print = args[:localized_fine_print] if args.key?(:localized_fine_print)
  @localized_issuer_name = args[:localized_issuer_name] if args.key?(:localized_issuer_name)
  @localized_provider = args[:localized_provider] if args.key?(:localized_provider)
  @localized_short_title = args[:localized_short_title] if args.key?(:localized_short_title)
  @localized_title = args[:localized_title] if args.key?(:localized_title)
  @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)
  @provider = args[:provider] if args.key?(:provider)
  @redemption_channel = args[:redemption_channel] if args.key?(:redemption_channel)
  @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)
  @security_animation = args[:security_animation] if args.key?(:security_animation)
  @short_title = args[:short_title] if args.key?(:short_title)
  @text_modules_data = args[:text_modules_data] if args.key?(:text_modules_data)
  @title = args[:title] if args.key?(:title)
  @title_image = args[:title_image] if args.key?(:title_image)
  @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_title_image = args[:wide_title_image] if args.key?(:wide_title_image)
  @word_mark = args[:word_mark] if args.key?(:word_mark)
end