Class: Google::Apis::WalletobjectsV1::OfferObject
- Inherits:
-
Object
- Object
- Google::Apis::WalletobjectsV1::OfferObject
- 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
-
#app_link_data ⇒ Google::Apis::WalletobjectsV1::AppLinkData
Optional app or website link that will be displayed as a button on the front of the pass.
-
#barcode ⇒ Google::Apis::WalletobjectsV1::Barcode
The barcode type and value.
-
#class_id ⇒ String
Required.
-
#class_reference ⇒ Google::Apis::WalletobjectsV1::OfferClass
A copy of the inherited fields of the parent class.
-
#disable_expiration_notification ⇒ Boolean
(also: #disable_expiration_notification?)
Indicates if notifications should explicitly be suppressed.
-
#grouping_info ⇒ Google::Apis::WalletobjectsV1::GroupingInfo
Information that controls how passes are grouped together.
-
#has_linked_device ⇒ Boolean
(also: #has_linked_device?)
Whether this object is currently linked to a single device.
-
#has_users ⇒ Boolean
(also: #has_users?)
Indicates if the object has users.
-
#hero_image ⇒ Google::Apis::WalletobjectsV1::Image
Wrapping type for Google hosted images.
-
#id ⇒ String
Required.
-
#image_modules_data ⇒ Array<Google::Apis::WalletobjectsV1::ImageModuleData>
Image module data.
-
#info_module_data ⇒ Google::Apis::WalletobjectsV1::InfoModuleData
Deprecated.
-
#kind ⇒ String
Identifies what kind of resource this is.
-
#linked_object_ids ⇒ Array<String>
linked_object_ids are a list of other objects such as event ticket, loyalty, offer, generic, giftcard, transit and boarding pass that should be automatically attached to this offer object.
-
#links_module_data ⇒ Google::Apis::WalletobjectsV1::LinksModuleData
Links module data.
-
#locations ⇒ Array<Google::Apis::WalletobjectsV1::LatLongPoint>
Note: This field is currently not supported to trigger geo notifications.
-
#merchant_locations ⇒ Array<Google::Apis::WalletobjectsV1::MerchantLocation>
Merchant locations.
-
#messages ⇒ Array<Google::Apis::WalletobjectsV1::Message>
An array of messages displayed in the app.
-
#notify_preference ⇒ String
Whether or not field updates to this object should trigger notifications.
-
#pass_constraints ⇒ Google::Apis::WalletobjectsV1::PassConstraints
Container for any constraints that may be placed on passes.
-
#rotating_barcode ⇒ Google::Apis::WalletobjectsV1::RotatingBarcode
The rotating barcode type and value.
-
#save_restrictions ⇒ Google::Apis::WalletobjectsV1::SaveRestrictions
Defines restrictions on the object that will be verified during save.
-
#smart_tap_redemption_value ⇒ String
The value that will be transmitted to a Smart Tap certified terminal over NFC for this object.
-
#state ⇒ String
Required.
-
#text_modules_data ⇒ Array<Google::Apis::WalletobjectsV1::TextModuleData>
Text module data.
-
#valid_time_interval ⇒ Google::Apis::WalletobjectsV1::TimeInterval
The time period this object will be
active
and object can be used. -
#value_added_module_data ⇒ Array<Google::Apis::WalletobjectsV1::ValueAddedModuleData>
Optional value added module data.
-
#version ⇒ Fixnum
Deprecated Corresponds to the JSON property
version
.
Instance Method Summary collapse
-
#initialize(**args) ⇒ OfferObject
constructor
A new instance of OfferObject.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ OfferObject
Returns a new instance of OfferObject.
6864 6865 6866 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6864 def initialize(**args) update!(**args) end |
Instance Attribute Details
#app_link_data ⇒ Google::Apis::WalletobjectsV1::AppLinkData
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 class only
object AppLinkData will be displayed.
Corresponds to the JSON property appLinkData
6677 6678 6679 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6677 def app_link_data @app_link_data end |
#barcode ⇒ Google::Apis::WalletobjectsV1::Barcode
The barcode type and value.
Corresponds to the JSON property barcode
6682 6683 6684 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6682 def @barcode end |
#class_id ⇒ String
Required. The class associated with this object. The class must be of the same
type as this object, must already exist, and must be approved. Class IDs
should follow the format issuer ID.identifier where the former is issued by
Google and latter is chosen by you.
Corresponds to the JSON property classId
6690 6691 6692 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6690 def class_id @class_id end |
#class_reference ⇒ Google::Apis::WalletobjectsV1::OfferClass
A copy of the inherited fields of the parent class. These fields are retrieved
during a GET.
Corresponds to the JSON property classReference
6696 6697 6698 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6696 def class_reference @class_reference end |
#disable_expiration_notification ⇒ Boolean Also known as: disable_expiration_notification?
Indicates if notifications should explicitly be suppressed. If this field is
set to true, regardless of the messages
field, expiration notifications to
the user will be suppressed. By default, this field is set to false. Currently,
this can only be set for offers.
Corresponds to the JSON property disableExpirationNotification
6704 6705 6706 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6704 def disable_expiration_notification @disable_expiration_notification end |
#grouping_info ⇒ Google::Apis::WalletobjectsV1::GroupingInfo
Information that controls how passes are grouped together.
Corresponds to the JSON property groupingInfo
6710 6711 6712 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6710 def grouping_info @grouping_info end |
#has_linked_device ⇒ Boolean Also known as: has_linked_device?
Whether this object is currently linked to a single device. This field is set
by the platform when a user saves the object, linking it to their device.
Intended for use by select partners. Contact support for additional
information.
Corresponds to the JSON property hasLinkedDevice
6718 6719 6720 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6718 def has_linked_device @has_linked_device end |
#has_users ⇒ Boolean Also known as: has_users?
Indicates if the object has users. This field is set by the platform.
Corresponds to the JSON property hasUsers
6724 6725 6726 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6724 def has_users @has_users end |
#hero_image ⇒ Google::Apis::WalletobjectsV1::Image
Wrapping type for Google hosted images.
Corresponds to the JSON property heroImage
6730 6731 6732 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6730 def hero_image @hero_image end |
#id ⇒ String
Required. The unique identifier for an object. This ID must be unique across
all objects 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.
The unique identifier should only include alphanumeric characters, '.', '_',
or '-'.
Corresponds to the JSON property id
6739 6740 6741 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6739 def id @id end |
#image_modules_data ⇒ Array<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
6745 6746 6747 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6745 def image_modules_data @image_modules_data end |
#info_module_data ⇒ Google::Apis::WalletobjectsV1::InfoModuleData
Deprecated. Use textModulesData instead.
Corresponds to the JSON property infoModuleData
6750 6751 6752 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6750 def info_module_data @info_module_data end |
#kind ⇒ String
Identifies what kind of resource this is. Value: the fixed string "
walletobjects#offerObject"
.
Corresponds to the JSON property kind
6756 6757 6758 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6756 def kind @kind end |
#linked_object_ids ⇒ Array<String>
linked_object_ids are a list of other objects such as event ticket, loyalty,
offer, generic, giftcard, transit and boarding pass that should be
automatically attached to this offer object. If a user had saved this offer,
then these linked_object_ids would be automatically pushed to the user's
wallet (unless they turned off the setting to receive such linked passes).
Make sure that objects present in linked_object_ids are already inserted - if
not, calls would fail. Once linked, the linked objects cannot be unlinked. You
cannot link objects belonging to another issuer. There is a limit to the
number of objects that can be linked to a single object. After the limit is
reached, new linked objects in the call will be ignored silently. Object IDs
should follow the format issuer ID.identifier where the former is issued by
Google and the latter is chosen by you.
Corresponds to the JSON property linkedObjectIds
6772 6773 6774 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6772 def linked_object_ids @linked_object_ids end |
#links_module_data ⇒ Google::Apis::WalletobjectsV1::LinksModuleData
Links module data. If links module data is also defined on the class, both
will be displayed.
Corresponds to the JSON property linksModuleData
6778 6779 6780 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6778 def links_module_data @links_module_data end |
#locations ⇒ Array<Google::Apis::WalletobjectsV1::LatLongPoint>
Note: This field is currently not supported to trigger geo notifications.
Corresponds to the JSON property locations
6783 6784 6785 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6783 def locations @locations end |
#merchant_locations ⇒ Array<Google::Apis::WalletobjectsV1::MerchantLocation>
Merchant locations. There is a maximum of ten on the object. 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
6791 6792 6793 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6791 def merchant_locations @merchant_locations end |
#messages ⇒ Array<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
6797 6798 6799 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6797 def @messages end |
#notify_preference ⇒ String
Whether or not field updates to this object 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 set to DO_NOT_NOTIFY or NOTIFICATION_SETTINGS_UNSPECIFIED, 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
6808 6809 6810 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6808 def notify_preference @notify_preference end |
#pass_constraints ⇒ Google::Apis::WalletobjectsV1::PassConstraints
Container for any constraints that may be placed on passes.
Corresponds to the JSON property passConstraints
6813 6814 6815 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6813 def pass_constraints @pass_constraints end |
#rotating_barcode ⇒ Google::Apis::WalletobjectsV1::RotatingBarcode
The rotating barcode type and value.
Corresponds to the JSON property rotatingBarcode
6818 6819 6820 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6818 def @rotating_barcode end |
#save_restrictions ⇒ Google::Apis::WalletobjectsV1::SaveRestrictions
Defines restrictions on the object that will be verified during save. Note:
this is an advanced feature, please contact Google for implementation support.
Corresponds to the JSON property saveRestrictions
6824 6825 6826 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6824 def save_restrictions @save_restrictions end |
#smart_tap_redemption_value ⇒ String
The value that will be transmitted to a Smart Tap certified terminal over NFC
for this object. The class level fields enableSmartTap
and
redemptionIssuers
must also be set up correctly in order for the pass to
support Smart Tap. Only ASCII characters are supported.
Corresponds to the JSON property smartTapRedemptionValue
6832 6833 6834 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6832 def smart_tap_redemption_value @smart_tap_redemption_value end |
#state ⇒ String
Required. The state of the object. This field is used to determine how an
object is displayed in the app. For example, an inactive
object is moved to
the "Expired passes" section.
Corresponds to the JSON property state
6839 6840 6841 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6839 def state @state end |
#text_modules_data ⇒ Array<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
6846 6847 6848 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6846 def text_modules_data @text_modules_data end |
#valid_time_interval ⇒ Google::Apis::WalletobjectsV1::TimeInterval
The time period this object will be active
and object can be used. An object'
s state will be changed to expired
when this time period has passed.
Corresponds to the JSON property validTimeInterval
6852 6853 6854 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6852 def valid_time_interval @valid_time_interval end |
#value_added_module_data ⇒ Array<Google::Apis::WalletobjectsV1::ValueAddedModuleData>
Optional value added module data. Maximum of ten on the object.
Corresponds to the JSON property valueAddedModuleData
6857 6858 6859 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6857 def value_added_module_data @value_added_module_data end |
#version ⇒ Fixnum
Deprecated
Corresponds to the JSON property version
6862 6863 6864 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6862 def version @version end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
6869 6870 6871 6872 6873 6874 6875 6876 6877 6878 6879 6880 6881 6882 6883 6884 6885 6886 6887 6888 6889 6890 6891 6892 6893 6894 6895 6896 6897 6898 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6869 def update!(**args) @app_link_data = args[:app_link_data] if args.key?(:app_link_data) @barcode = args[:barcode] if args.key?(:barcode) @class_id = args[:class_id] if args.key?(:class_id) @class_reference = args[:class_reference] if args.key?(:class_reference) @disable_expiration_notification = args[:disable_expiration_notification] if args.key?(:disable_expiration_notification) @grouping_info = args[:grouping_info] if args.key?(:grouping_info) @has_linked_device = args[:has_linked_device] if args.key?(:has_linked_device) @has_users = args[:has_users] if args.key?(:has_users) @hero_image = args[:hero_image] if args.key?(:hero_image) @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) @kind = args[:kind] if args.key?(:kind) @linked_object_ids = args[:linked_object_ids] if args.key?(:linked_object_ids) @links_module_data = args[:links_module_data] if args.key?(:links_module_data) @locations = args[:locations] if args.key?(:locations) @merchant_locations = args[:merchant_locations] if args.key?(:merchant_locations) @messages = args[:messages] if args.key?(:messages) @notify_preference = args[:notify_preference] if args.key?(:notify_preference) @pass_constraints = args[:pass_constraints] if args.key?(:pass_constraints) @rotating_barcode = args[:rotating_barcode] if args.key?(:rotating_barcode) @save_restrictions = args[:save_restrictions] if args.key?(:save_restrictions) @smart_tap_redemption_value = args[:smart_tap_redemption_value] if args.key?(:smart_tap_redemption_value) @state = args[:state] if args.key?(:state) @text_modules_data = args[:text_modules_data] if args.key?(:text_modules_data) @valid_time_interval = args[:valid_time_interval] if args.key?(:valid_time_interval) @value_added_module_data = args[:value_added_module_data] if args.key?(:value_added_module_data) @version = args[:version] if args.key?(:version) end |