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
Returns a new instance of OfferObject.
6910 6911 6912 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6910 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
6722 6723 6724 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6722 def app_link_data @app_link_data end |
#barcode ⇒ Google::Apis::WalletobjectsV1::Barcode
The barcode type and value.
Corresponds to the JSON property barcode
6727 6728 6729 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6727 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
6735 6736 6737 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6735 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
6741 6742 6743 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6741 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
6749 6750 6751 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6749 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
6755 6756 6757 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6755 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
6763 6764 6765 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6763 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
6769 6770 6771 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6769 def has_users @has_users end |
#hero_image ⇒ Google::Apis::WalletobjectsV1::Image
Wrapping type for Google hosted images.
Corresponds to the JSON property heroImage
6775 6776 6777 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6775 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
6784 6785 6786 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6784 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
6790 6791 6792 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6790 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
6795 6796 6797 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6795 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
6801 6802 6803 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6801 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
6817 6818 6819 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6817 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
6823 6824 6825 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6823 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
6828 6829 6830 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6828 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
6836 6837 6838 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6836 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
6842 6843 6844 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6842 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
6853 6854 6855 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6853 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
6858 6859 6860 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6858 def pass_constraints @pass_constraints end |
#rotating_barcode ⇒ Google::Apis::WalletobjectsV1::RotatingBarcode
The rotating barcode type and value.
Corresponds to the JSON property rotatingBarcode
6863 6864 6865 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6863 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
6869 6870 6871 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6869 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
6877 6878 6879 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6877 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
6884 6885 6886 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6884 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
6891 6892 6893 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6891 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
6897 6898 6899 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6897 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
6903 6904 6905 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6903 def value_added_module_data @value_added_module_data end |
#version ⇒ Fixnum
Deprecated
Corresponds to the JSON property version
6908 6909 6910 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6908 def version @version end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
6915 6916 6917 6918 6919 6920 6921 6922 6923 6924 6925 6926 6927 6928 6929 6930 6931 6932 6933 6934 6935 6936 6937 6938 6939 6940 6941 6942 6943 6944 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6915 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 |