Class: Google::Apis::WalletobjectsV1::OfferObject

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

Returns a new instance of OfferObject.



6237
6238
6239
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6237

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

Instance Attribute Details

Optional information about the partner app link. Corresponds to the JSON property appLinkData



6096
6097
6098
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6096

def app_link_data
  @app_link_data
end

#barcodeGoogle::Apis::WalletobjectsV1::Barcode

The barcode type and value. Corresponds to the JSON property barcode



6101
6102
6103
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6101

def barcode
  @barcode
end

#class_idString

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

Returns:

  • (String)


6109
6110
6111
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6109

def class_id
  @class_id
end

#class_referenceGoogle::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



6115
6116
6117
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6115

def class_reference
  @class_reference
end

#disable_expiration_notificationBoolean 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

Returns:

  • (Boolean)


6123
6124
6125
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6123

def disable_expiration_notification
  @disable_expiration_notification
end

#grouping_infoGoogle::Apis::WalletobjectsV1::GroupingInfo

Information that controls how passes are grouped together. Corresponds to the JSON property groupingInfo



6129
6130
6131
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6129

def grouping_info
  @grouping_info
end

#has_linked_deviceBoolean 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

Returns:

  • (Boolean)


6137
6138
6139
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6137

def has_linked_device
  @has_linked_device
end

#has_usersBoolean Also known as: has_users?

Indicates if the object has users. This field is set by the platform. Corresponds to the JSON property hasUsers

Returns:

  • (Boolean)


6143
6144
6145
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6143

def has_users
  @has_users
end

#hero_imageGoogle::Apis::WalletobjectsV1::Image

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



6149
6150
6151
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6149

def hero_image
  @hero_image
end

#idString

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

Returns:

  • (String)


6158
6159
6160
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6158

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



6164
6165
6166
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6164

def image_modules_data
  @image_modules_data
end

#info_module_dataGoogle::Apis::WalletobjectsV1::InfoModuleData

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



6169
6170
6171
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6169

def info_module_data
  @info_module_data
end

#kindString

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

Returns:

  • (String)


6175
6176
6177
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6175

def kind
  @kind
end

Links module data. If links module data is also defined on the class, both will be displayed. Corresponds to the JSON property linksModuleData



6181
6182
6183
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6181

def links_module_data
  @links_module_data
end

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

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



6186
6187
6188
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6186

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



6192
6193
6194
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6192

def messages
  @messages
end

#pass_constraintsGoogle::Apis::WalletobjectsV1::PassConstraints

Container for any constraints that may be placed on passes. Corresponds to the JSON property passConstraints



6197
6198
6199
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6197

def pass_constraints
  @pass_constraints
end

#rotating_barcodeGoogle::Apis::WalletobjectsV1::RotatingBarcode

The rotating barcode type and value. Corresponds to the JSON property rotatingBarcode



6202
6203
6204
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6202

def rotating_barcode
  @rotating_barcode
end

#smart_tap_redemption_valueString

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

Returns:

  • (String)


6210
6211
6212
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6210

def smart_tap_redemption_value
  @smart_tap_redemption_value
end

#stateString

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

Returns:

  • (String)


6217
6218
6219
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6217

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



6224
6225
6226
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6224

def text_modules_data
  @text_modules_data
end

#valid_time_intervalGoogle::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



6230
6231
6232
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6230

def valid_time_interval
  @valid_time_interval
end

#versionFixnum

Deprecated Corresponds to the JSON property version

Returns:

  • (Fixnum)


6235
6236
6237
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6235

def version
  @version
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



6242
6243
6244
6245
6246
6247
6248
6249
6250
6251
6252
6253
6254
6255
6256
6257
6258
6259
6260
6261
6262
6263
6264
6265
6266
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 6242

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)
  @links_module_data = args[:links_module_data] if args.key?(:links_module_data)
  @locations = args[:locations] if args.key?(:locations)
  @messages = args[:messages] if args.key?(:messages)
  @pass_constraints = args[:pass_constraints] if args.key?(:pass_constraints)
  @rotating_barcode = args[:rotating_barcode] if args.key?(:rotating_barcode)
  @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)
  @version = args[:version] if args.key?(:version)
end