Google Pay Passes API
  1. loyaltyobject
Google Pay Passes API
  • eventticketclass
    • /walletobjects/v1/eventTicketClass
      GET
    • /walletobjects/v1/eventTicketClass
      POST
    • /walletobjects/v1/eventTicketClass/{resourceId}
      GET
    • /walletobjects/v1/eventTicketClass/{resourceId}
      PATCH
    • /walletobjects/v1/eventTicketClass/{resourceId}
      PUT
    • /walletobjects/v1/eventTicketClass/{resourceId}/addMessage
      POST
  • eventticketobject
    • /walletobjects/v1/eventTicketObject
      GET
    • /walletobjects/v1/eventTicketObject
      POST
    • /walletobjects/v1/eventTicketObject/{resourceId}
      GET
    • /walletobjects/v1/eventTicketObject/{resourceId}
      PATCH
    • /walletobjects/v1/eventTicketObject/{resourceId}
      PUT
    • /walletobjects/v1/eventTicketObject/{resourceId}/addMessage
      POST
    • /walletobjects/v1/eventTicketObject/{resourceId}/modifyLinkedOfferObjects
      POST
  • flightclass
    • /walletobjects/v1/flightClass
      GET
    • /walletobjects/v1/flightClass
      POST
    • /walletobjects/v1/flightClass/{resourceId}
      GET
    • /walletobjects/v1/flightClass/{resourceId}
      PATCH
    • /walletobjects/v1/flightClass/{resourceId}
      PUT
    • /walletobjects/v1/flightClass/{resourceId}/addMessage
      POST
  • flightobject
    • /walletobjects/v1/flightObject
    • /walletobjects/v1/flightObject
    • /walletobjects/v1/flightObject/{resourceId}
    • /walletobjects/v1/flightObject/{resourceId}
    • /walletobjects/v1/flightObject/{resourceId}
    • /walletobjects/v1/flightObject/{resourceId}/addMessage
  • giftcardclass
    • /walletobjects/v1/giftCardClass
    • /walletobjects/v1/giftCardClass
    • /walletobjects/v1/giftCardClass/{resourceId}
    • /walletobjects/v1/giftCardClass/{resourceId}
    • /walletobjects/v1/giftCardClass/{resourceId}
    • /walletobjects/v1/giftCardClass/{resourceId}/addMessage
  • giftcardobject
    • /walletobjects/v1/giftCardObject
    • /walletobjects/v1/giftCardObject
    • /walletobjects/v1/giftCardObject/{resourceId}
    • /walletobjects/v1/giftCardObject/{resourceId}
    • /walletobjects/v1/giftCardObject/{resourceId}
    • /walletobjects/v1/giftCardObject/{resourceId}/addMessage
  • issuer
    • /walletobjects/v1/issuer
    • /walletobjects/v1/issuer
    • /walletobjects/v1/issuer/{resourceId}
    • /walletobjects/v1/issuer/{resourceId}
    • /walletobjects/v1/issuer/{resourceId}
  • jwt
    • /walletobjects/v1/jwt
  • loyaltyclass
    • /walletobjects/v1/loyaltyClass
    • /walletobjects/v1/loyaltyClass
    • /walletobjects/v1/loyaltyClass/{resourceId}
    • /walletobjects/v1/loyaltyClass/{resourceId}
    • /walletobjects/v1/loyaltyClass/{resourceId}
    • /walletobjects/v1/loyaltyClass/{resourceId}/addMessage
  • loyaltyobject
    • /walletobjects/v1/loyaltyObject
      GET
    • /walletobjects/v1/loyaltyObject
      POST
    • /walletobjects/v1/loyaltyObject/{resourceId}
      GET
    • /walletobjects/v1/loyaltyObject/{resourceId}
      PATCH
    • /walletobjects/v1/loyaltyObject/{resourceId}
      PUT
    • /walletobjects/v1/loyaltyObject/{resourceId}/addMessage
      POST
    • /walletobjects/v1/loyaltyObject/{resourceId}/modifyLinkedOfferObjects
      POST
  • offerclass
    • /walletobjects/v1/offerClass
    • /walletobjects/v1/offerClass
    • /walletobjects/v1/offerClass/{resourceId}
    • /walletobjects/v1/offerClass/{resourceId}
    • /walletobjects/v1/offerClass/{resourceId}
    • /walletobjects/v1/offerClass/{resourceId}/addMessage
  • offerobject
    • /walletobjects/v1/offerObject
    • /walletobjects/v1/offerObject
    • /walletobjects/v1/offerObject/{resourceId}
    • /walletobjects/v1/offerObject/{resourceId}
    • /walletobjects/v1/offerObject/{resourceId}
    • /walletobjects/v1/offerObject/{resourceId}/addMessage
  • permissions
    • /walletobjects/v1/permissions/{resourceId}
    • /walletobjects/v1/permissions/{resourceId}
  • smarttap
    • /walletobjects/v1/smartTap
  • transitclass
    • /walletobjects/v1/transitClass
    • /walletobjects/v1/transitClass
    • /walletobjects/v1/transitClass/{resourceId}
    • /walletobjects/v1/transitClass/{resourceId}
    • /walletobjects/v1/transitClass/{resourceId}
    • /walletobjects/v1/transitClass/{resourceId}/addMessage
  • transitobject
    • /walletobjects/v1/transitObject
    • /walletobjects/v1/transitObject
    • /walletobjects/v1/transitObject/{resourceId}
    • /walletobjects/v1/transitObject/{resourceId}
    • /walletobjects/v1/transitObject/{resourceId}
    • /walletobjects/v1/transitObject/{resourceId}/addMessage
  • valuablesclasses
    • /walletobjects/v1/valuablesclasses
  • walletobjects
    • /walletobjects/v1/valuablesclassescount
  1. loyaltyobject

/walletobjects/v1/loyaltyObject/{resourceId}/addMessage

POST
/walletobjects/v1/loyaltyObject/{resourceId}/addMessage
loyaltyobject
Adds a message to the loyalty object referenced by the given object ID.
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST 'https://walletobjects.googleapis.com//walletobjects/v1/loyaltyObject//addMessage' \
--header 'Content-Type: application/json' \
--data-raw '{
    "message": {
        "body": "string",
        "displayInterval": {
            "end": {
                "date": "string"
            },
            "kind": "string",
            "start": {
                "date": "string"
            }
        },
        "header": "string",
        "id": "string",
        "kind": "string",
        "localizedBody": {
            "defaultValue": {
                "kind": "string",
                "language": "string",
                "value": "string"
            },
            "kind": "string",
            "translatedValues": [
                {
                    "kind": "string",
                    "language": "string",
                    "value": "string"
                }
            ]
        },
        "localizedHeader": {
            "defaultValue": {
                "kind": "string",
                "language": "string",
                "value": "string"
            },
            "kind": "string",
            "translatedValues": [
                {
                    "kind": "string",
                    "language": "string",
                    "value": "string"
                }
            ]
        },
        "messageType": "MESSAGE_TYPE_UNSPECIFIED"
    }
}'
Response Response Example

Request

Path Params
resourceId
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. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
Body Params application/json
Resource used when the AddMessage endpoints are called.
message
object (Message) 
optional
A message that will be displayed with a Valuable
body
string 
optional
The message body.
displayInterval
object (TimeInterval) 
optional
The period of time that the message will be displayed to users. You can define both a startTime and endTime for each message. A message is displayed immediately after a Wallet Object is inserted unless a startTime is set. The message will appear in a list of messages indefinitely if endTime is not provided.
header
string 
optional
The message header.
id
string 
optional
The ID associated with a message. This field is here to enable ease of management of messages. Notice ID values could possibly duplicate across multiple messages in the same class/instance, and care must be taken to select a reasonable ID for each message.
kind
string 
optional
Identifies what kind of resource this is. Value: the fixed string "walletobjects#walletObjectMessage".
localizedBody
object (LocalizedString) 
optional
Translated strings for the message body.
localizedHeader
object (LocalizedString) 
optional
Translated strings for the message header.
messageType
enum<string> 
optional
The type of the message. Currently, this can only be set for offers.
Allowed values:
MESSAGE_TYPE_UNSPECIFIEDTEXTtextEXPIRATION_NOTIFICATIONexpirationNotification
Examples

Responses

🟢200Successful response
application/json
Body
resource
object (LoyaltyObject) 
optional
The updated LoyaltyObject resource.
accountId
string 
optional
The loyalty account identifier. Recommended maximum length is 20 characters.
accountName
string 
optional
The loyalty account holder name, such as "John Smith." Recommended maximum length is 20 characters to ensure full string is displayed on smaller screens.
appLinkData
object (AppLinkData) 
optional
Optional information about the partner app link.
barcode
object (Barcode) 
optional
The barcode type and value.
classId
string 
optional
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.
classReference
object (LoyaltyClass) 
optional
A copy of the inherited fields of the parent class. These fields are retrieved during a GET.
disableExpirationNotification
boolean 
optional
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.
hasLinkedDevice
boolean 
optional
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.
hasUsers
boolean 
optional
Indicates if the object has users. This field is set by the platform.
heroImage
object (Image) 
optional
Optional banner image displayed on the front of the card. If none is present, hero image of the class, if present, will be displayed. If hero image of the class is also not present, nothing will be displayed.
id
string 
optional
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 '-'.
imageModulesData
array[object (ImageModuleData) {2}] 
optional
Image module data. The maximum number of these fields displayed is 1 from object level and 1 for class object level.
infoModuleData
object (InfoModuleData) 
optional
Deprecated. Use textModulesData instead.
kind
string 
optional
Identifies what kind of resource this is. Value: the fixed string "walletobjects#loyaltyObject".
linkedOfferIds
array[string]
optional
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.
linksModuleData
object (LinksModuleData) 
optional
Links module data. If links module data is also defined on the class, both will be displayed.
locations
array[object (LatLongPoint) {3}] 
optional
The list of locations where the object can be used. The platform uses this information to trigger geolocated notifications to users. Note that locations in the object override locations in the class which override locations in the Google Places ID.
loyaltyPoints
object (LoyaltyPoints) 
optional
The loyalty reward points label, balance, and type.
messages
array[object (Message) {8}] 
optional
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.
secondaryLoyaltyPoints
object (LoyaltyPoints) 
optional
The secondary loyalty reward points label, balance, and type. Shown in addition to the primary loyalty points.
smartTapRedemptionValue
string 
optional
Available only to Smart Tap enabled partners. Contact support for additional guidance.
state
enum<string> 
optional
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.
Allowed values:
STATE_UNSPECIFIEDACTIVEactiveCOMPLETEDcompletedEXPIREDexpiredINACTIVEinactive
textModulesData
array[object (TextModuleData) {5}] 
optional
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.
validTimeInterval
object (TimeInterval) 
optional
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.
version
string <int64>
optional
Deprecated
Previous
/walletobjects/v1/loyaltyObject/{resourceId}
Next
/walletobjects/v1/loyaltyObject/{resourceId}/modifyLinkedOfferObjects
Built with