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
activeand 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
6896 6897 6898 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6896 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
6708 6709 6710 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6708 def app_link_data @app_link_data end |
#barcode ⇒ Google::Apis::WalletobjectsV1::Barcode
The barcode type and value.
Corresponds to the JSON property barcode
6713 6714 6715 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6713 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
6721 6722 6723 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6721 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
6727 6728 6729 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6727 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
6735 6736 6737 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6735 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
6741 6742 6743 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6741 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
6749 6750 6751 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6749 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
6755 6756 6757 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6755 def has_users @has_users end |
#hero_image ⇒ Google::Apis::WalletobjectsV1::Image
Wrapping type for Google hosted images.
Corresponds to the JSON property heroImage
6761 6762 6763 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6761 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
6770 6771 6772 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6770 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
6776 6777 6778 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6776 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
6781 6782 6783 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6781 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
6787 6788 6789 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6787 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
6803 6804 6805 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6803 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
6809 6810 6811 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6809 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
6814 6815 6816 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6814 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
6822 6823 6824 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6822 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
6828 6829 6830 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6828 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
6839 6840 6841 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6839 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
6844 6845 6846 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6844 def pass_constraints @pass_constraints end |
#rotating_barcode ⇒ Google::Apis::WalletobjectsV1::RotatingBarcode
The rotating barcode type and value.
Corresponds to the JSON property rotatingBarcode
6849 6850 6851 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6849 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
6855 6856 6857 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6855 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
6863 6864 6865 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6863 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
6870 6871 6872 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6870 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
6877 6878 6879 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6877 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
6883 6884 6885 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6883 def valid_time_interval @valid_time_interval end |
#value_added_module_data ⇒ Array<Google::Apis::WalletobjectsV1::ValueAddedModuleData>
Optional value added module data. Maximum of fifteen on the object. For a pass
only fifteen will be displayed.
Corresponds to the JSON property valueAddedModuleData
6889 6890 6891 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6889 def value_added_module_data @value_added_module_data end |
#version ⇒ Fixnum
Deprecated
Corresponds to the JSON property version
6894 6895 6896 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6894 def version @version end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
6901 6902 6903 6904 6905 6906 6907 6908 6909 6910 6911 6912 6913 6914 6915 6916 6917 6918 6919 6920 6921 6922 6923 6924 6925 6926 6927 6928 6929 6930 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6901 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 |