Class: Google::Apis::WalletobjectsV1::LoyaltyObject

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

Returns a new instance of LoyaltyObject.



5154
5155
5156
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5154

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

Instance Attribute Details

#account_idString

The loyalty account identifier. Recommended maximum length is 20 characters. Corresponds to the JSON property accountId

Returns:

  • (String)


4979
4980
4981
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 4979

def 
  @account_id
end

#account_nameString

The loyalty account holder name, such as "John Smith." Recommended maximum length is 20 characters to ensure full string is displayed on smaller screens. Corresponds to the JSON property accountName

Returns:

  • (String)


4985
4986
4987
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 4985

def 
  @account_name
end

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



4992
4993
4994
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 4992

def app_link_data
  @app_link_data
end

#barcodeGoogle::Apis::WalletobjectsV1::Barcode

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



4997
4998
4999
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 4997

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)


5005
5006
5007
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5005

def class_id
  @class_id
end

#class_referenceGoogle::Apis::WalletobjectsV1::LoyaltyClass

A copy of the inherited fields of the parent class. These fields are retrieved during a GET. Corresponds to the JSON property classReference



5011
5012
5013
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5011

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)


5019
5020
5021
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5019

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



5025
5026
5027
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5025

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)


5033
5034
5035
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5033

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)


5039
5040
5041
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5039

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



5045
5046
5047
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5045

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)


5054
5055
5056
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5054

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



5060
5061
5062
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5060

def image_modules_data
  @image_modules_data
end

#info_module_dataGoogle::Apis::WalletobjectsV1::InfoModuleData

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



5065
5066
5067
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5065

def info_module_data
  @info_module_data
end

#kindString

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

Returns:

  • (String)


5071
5072
5073
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5071

def kind
  @kind
end

#linked_offer_idsArray<String>

A list of offer objects linked to this loyalty card. The offer objects must already exist. Offer object 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 linkedOfferIds

Returns:

  • (Array<String>)


5078
5079
5080
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5078

def linked_offer_ids
  @linked_offer_ids
end

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



5084
5085
5086
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5084

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



5089
5090
5091
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5089

def locations
  @locations
end

#loyalty_pointsGoogle::Apis::WalletobjectsV1::LoyaltyPoints

The loyalty reward points label, balance, and type. Corresponds to the JSON property loyaltyPoints



5094
5095
5096
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5094

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



5100
5101
5102
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5100

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



5105
5106
5107
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5105

def pass_constraints
  @pass_constraints
end

#rotating_barcodeGoogle::Apis::WalletobjectsV1::RotatingBarcode

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



5110
5111
5112
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5110

def rotating_barcode
  @rotating_barcode
end

#secondary_loyalty_pointsGoogle::Apis::WalletobjectsV1::LoyaltyPoints

The secondary loyalty reward points label, balance, and type. Shown in addition to the primary loyalty points. Corresponds to the JSON property secondaryLoyaltyPoints



5116
5117
5118
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5116

def secondary_loyalty_points
  @secondary_loyalty_points
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. If this value is not set but the class level fields enableSmartTap and redemptionIssuers are set up correctly, the barcode.value or the accountId fields are used as fallback if present. Corresponds to the JSON property smartTapRedemptionValue

Returns:

  • (String)


5127
5128
5129
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5127

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)


5134
5135
5136
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5134

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



5141
5142
5143
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5141

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



5147
5148
5149
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5147

def valid_time_interval
  @valid_time_interval
end

#versionFixnum

Deprecated Corresponds to the JSON property version

Returns:

  • (Fixnum)


5152
5153
5154
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5152

def version
  @version
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



5159
5160
5161
5162
5163
5164
5165
5166
5167
5168
5169
5170
5171
5172
5173
5174
5175
5176
5177
5178
5179
5180
5181
5182
5183
5184
5185
5186
5187
5188
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 5159

def update!(**args)
  @account_id = args[:account_id] if args.key?(:account_id)
  @account_name = args[:account_name] if args.key?(:account_name)
  @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_offer_ids = args[:linked_offer_ids] if args.key?(:linked_offer_ids)
  @links_module_data = args[:links_module_data] if args.key?(:links_module_data)
  @locations = args[:locations] if args.key?(:locations)
  @loyalty_points = args[:loyalty_points] if args.key?(:loyalty_points)
  @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)
  @secondary_loyalty_points = args[:secondary_loyalty_points] if args.key?(:secondary_loyalty_points)
  @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