Class: Google::Apis::WalletobjectsV1::GiftCardObject

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

Returns a new instance of GiftCardObject.



4089
4090
4091
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 4089

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

Instance Attribute Details

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



3899
3900
3901
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3899

def app_link_data
  @app_link_data
end

#balanceGoogle::Apis::WalletobjectsV1::Money

The card's monetary balance. Corresponds to the JSON property balance



3904
3905
3906
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3904

def balance
  @balance
end

#balance_update_timeGoogle::Apis::WalletobjectsV1::DateTime

The date and time when the balance was last updated. Offset is required. If balance is updated and this property is not provided, system will default to the current time. Corresponds to the JSON property balanceUpdateTime



3911
3912
3913
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3911

def balance_update_time
  @balance_update_time
end

#barcodeGoogle::Apis::WalletobjectsV1::Barcode

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



3916
3917
3918
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3916

def barcode
  @barcode
end

#card_numberString

Required. The card's number. Corresponds to the JSON property cardNumber

Returns:

  • (String)


3921
3922
3923
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3921

def card_number
  @card_number
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)


3929
3930
3931
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3929

def class_id
  @class_id
end

#class_referenceGoogle::Apis::WalletobjectsV1::GiftCardClass

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



3935
3936
3937
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3935

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)


3943
3944
3945
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3943

def disable_expiration_notification
  @disable_expiration_notification
end

#event_numberString

The card's event number, an optional field used by some gift cards. Corresponds to the JSON property eventNumber

Returns:

  • (String)


3949
3950
3951
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3949

def event_number
  @event_number
end

#grouping_infoGoogle::Apis::WalletobjectsV1::GroupingInfo

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



3954
3955
3956
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3954

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)


3962
3963
3964
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3962

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)


3968
3969
3970
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3968

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



3974
3975
3976
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3974

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)


3983
3984
3985
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3983

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



3989
3990
3991
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3989

def image_modules_data
  @image_modules_data
end

#info_module_dataGoogle::Apis::WalletobjectsV1::InfoModuleData

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



3994
3995
3996
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3994

def info_module_data
  @info_module_data
end

#kindString

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

Returns:

  • (String)


4000
4001
4002
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 4000

def kind
  @kind
end

#linked_object_idsArray<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 giftcard object. If a user had saved this gift card, 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

Returns:

  • (Array<String>)


4016
4017
4018
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 4016

def linked_object_ids
  @linked_object_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



4022
4023
4024
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 4022

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



4027
4028
4029
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 4027

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



4033
4034
4035
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 4033

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



4038
4039
4040
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 4038

def pass_constraints
  @pass_constraints
end

#pinString

The card's PIN. Corresponds to the JSON property pin

Returns:

  • (String)


4043
4044
4045
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 4043

def pin
  @pin
end

#rotating_barcodeGoogle::Apis::WalletobjectsV1::RotatingBarcode

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



4048
4049
4050
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 4048

def rotating_barcode
  @rotating_barcode
end

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



4054
4055
4056
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 4054

def save_restrictions
  @save_restrictions
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)


4062
4063
4064
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 4062

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)


4069
4070
4071
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 4069

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



4076
4077
4078
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 4076

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



4082
4083
4084
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 4082

def valid_time_interval
  @valid_time_interval
end

#versionFixnum

Deprecated Corresponds to the JSON property version

Returns:

  • (Fixnum)


4087
4088
4089
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 4087

def version
  @version
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



4094
4095
4096
4097
4098
4099
4100
4101
4102
4103
4104
4105
4106
4107
4108
4109
4110
4111
4112
4113
4114
4115
4116
4117
4118
4119
4120
4121
4122
4123
4124
4125
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 4094

def update!(**args)
  @app_link_data = args[:app_link_data] if args.key?(:app_link_data)
  @balance = args[:balance] if args.key?(:balance)
  @balance_update_time = args[:balance_update_time] if args.key?(:balance_update_time)
  @barcode = args[:barcode] if args.key?(:barcode)
  @card_number = args[:card_number] if args.key?(:card_number)
  @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)
  @event_number = args[:event_number] if args.key?(:event_number)
  @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)
  @messages = args[:messages] if args.key?(:messages)
  @pass_constraints = args[:pass_constraints] if args.key?(:pass_constraints)
  @pin = args[:pin] if args.key?(:pin)
  @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)
  @version = args[:version] if args.key?(:version)
end