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.
6978 6979 6980 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6978 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
6790 6791 6792 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6790 def app_link_data @app_link_data end |
#barcode ⇒ Google::Apis::WalletobjectsV1::Barcode
The barcode type and value.
Corresponds to the JSON property barcode
6795 6796 6797 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6795 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
6803 6804 6805 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6803 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
6809 6810 6811 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6809 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
6817 6818 6819 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6817 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
6823 6824 6825 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6823 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
6831 6832 6833 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6831 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
6837 6838 6839 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6837 def has_users @has_users end |
#hero_image ⇒ Google::Apis::WalletobjectsV1::Image
Wrapping type for Google hosted images.
Corresponds to the JSON property heroImage
6843 6844 6845 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6843 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
6852 6853 6854 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6852 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
6858 6859 6860 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6858 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
6863 6864 6865 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6863 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
6869 6870 6871 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6869 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
6885 6886 6887 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6885 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
6891 6892 6893 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6891 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
6896 6897 6898 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6896 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
6904 6905 6906 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6904 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
6910 6911 6912 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6910 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
6921 6922 6923 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6921 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
6926 6927 6928 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6926 def pass_constraints @pass_constraints end |
#rotating_barcode ⇒ Google::Apis::WalletobjectsV1::RotatingBarcode
The rotating barcode type and value.
Corresponds to the JSON property rotatingBarcode
6931 6932 6933 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6931 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
6937 6938 6939 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6937 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
6945 6946 6947 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6945 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
6952 6953 6954 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6952 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
6959 6960 6961 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6959 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
6965 6966 6967 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6965 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
6971 6972 6973 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6971 def value_added_module_data @value_added_module_data end |
#version ⇒ Fixnum
Deprecated
Corresponds to the JSON property version
6976 6977 6978 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6976 def version @version end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
6983 6984 6985 6986 6987 6988 6989 6990 6991 6992 6993 6994 6995 6996 6997 6998 6999 7000 7001 7002 7003 7004 7005 7006 7007 7008 7009 7010 7011 7012 |
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6983 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 |