REST Resource: offerclass

Resource: OfferClass

JSON representation
{
  "kind": string,
  "title": string,
  "redemptionChannel": enum (RedemptionChannel),
  "provider": string,
  "titleImage": {
    object (Image)
  },
  "details": string,
  "finePrint": string,
  "helpUri": {
    object (Uri)
  },
  "localizedTitle": {
    object (LocalizedString)
  },
  "localizedProvider": {
    object (LocalizedString)
  },
  "localizedDetails": {
    object (LocalizedString)
  },
  "localizedFinePrint": {
    object (LocalizedString)
  },
  "shortTitle": string,
  "localizedShortTitle": {
    object (LocalizedString)
  },
  "classTemplateInfo": {
    object (ClassTemplateInfo)
  },
  "id": string,
  "version": string,
  "issuerName": string,
  "messages": [
    {
      object (Message)
    }
  ],
  "allowMultipleUsersPerObject": boolean,
  "homepageUri": {
    object (Uri)
  },
  "locations": [
    {
      object (LatLongPoint)
    }
  ],
  "reviewStatus": enum (ReviewStatus),
  "review": {
    object (Review)
  },
  "infoModuleData": {
    object (InfoModuleData)
  },
  "imageModulesData": [
    {
      object (ImageModuleData)
    }
  ],
  "textModulesData": [
    {
      object (TextModuleData)
    }
  ],
  "linksModuleData": {
    object (LinksModuleData)
  },
  "redemptionIssuers": [
    string
  ],
  "countryCode": string,
  "heroImage": {
    object (Image)
  },
  "wordMark": {
    object (Image)
  },
  "enableSmartTap": boolean,
  "hexBackgroundColor": string,
  "localizedIssuerName": {
    object (LocalizedString)
  },
  "multipleDevicesAndHoldersAllowedStatus": enum (MultipleDevicesAndHoldersAllowedStatus),
  "callbackOptions": {
    object (CallbackOptions)
  },
  "securityAnimation": {
    object (SecurityAnimation)
  },
  "viewUnlockRequirement": enum (ViewUnlockRequirement),
  "wideTitleImage": {
    object (Image)
  },
  "notifyPreference": enum (NotificationSettingsForUpdates),
  "appLinkData": {
    object (AppLinkData)
  },
  "valueAddedModuleData": [
    {
      object (ValueAddedModuleData)
    }
  ]
}
Fields
kind
(deprecated)

string

Identifies what kind of resource this is. Value: the fixed string "walletobjects#offerClass".

title

string

Required. The title of the offer, such as "20% off any t-shirt." Recommended maximum length is 60 characters to ensure full string is displayed on smaller screens.

redemptionChannel

enum (RedemptionChannel)

Required. The redemption channels applicable to this offer.

provider

string

Required. The offer provider (either the aggregator name or merchant name). Recommended maximum length is 12 characters to ensure full string is displayed on smaller screens.

titleImage

object (Image)

The title image of the offer. This image is displayed in both the details and list views of the app.

details

string

The details of the offer.

finePrint

string

The fine print or terms of the offer, such as "20% off any t-shirt at Adam's Apparel."

helpUri

object (Uri)

The help link for the offer, such as http://myownpersonaldomain.com/help

localizedTitle

object (LocalizedString)

Translated strings for the title. Recommended maximum length is 60 characters to ensure full string is displayed on smaller screens.

localizedProvider

object (LocalizedString)

Translated strings for the provider. Recommended maximum length is 12 characters to ensure full string is displayed on smaller screens.

localizedDetails

object (LocalizedString)

Translated strings for the details.

localizedFinePrint

object (LocalizedString)

Translated strings for the finePrint.

shortTitle

string

A shortened version of the title of the offer, such as "20% off," shown to users as a quick reference to the offer contents. Recommended maximum length is 20 characters.

localizedShortTitle

object (LocalizedString)

Translated strings for the short title. Recommended maximum length is 20 characters.

classTemplateInfo

object (ClassTemplateInfo)

Template information about how the class should be displayed. If unset, Google will fallback to a default set of fields to display.

id

string

Required. The unique identifier for a class. This ID must be unique across all classes 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 '-'.

version
(deprecated)

string (int64 format)

Deprecated

issuerName

string

Required. The issuer name. Recommended maximum length is 20 characters to ensure full string is displayed on smaller screens.

messages[]

object (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.

allowMultipleUsersPerObject
(deprecated)

boolean

Deprecated. Use multipleDevicesAndHoldersAllowedStatus instead.

homepageUri

object (Uri)

The URI of your application's home page. Populating the URI in this field results in the exact same behavior as populating an URI in linksModuleData (when an object is rendered, a link to the homepage is shown in what would usually be thought of as the linksModuleData section of the object).

locations[]
(deprecated)

object (LatLongPoint)

Note: This field is currently not supported to trigger geo notifications.

reviewStatus

enum (ReviewStatus)

Required. The status of the class. This field can be set to draft or The status of the class. This field can be set to draft or underReview using the insert, patch, or update API calls. Once the review state is changed from draft it may not be changed back to draft.

You should keep this field to draft when the class is under development. A draft class cannot be used to create any object.

You should set this field to underReview when you believe the class is ready for use. The platform will automatically set this field to approved and it can be immediately used to create or migrate objects.

When updating an already approved class you should keep setting this field to underReview.

review

object (Review)

The review comments set by the platform when a class is marked approved or rejected.

infoModuleData
(deprecated)

object (InfoModuleData)

Deprecated. Use textModulesData instead.

imageModulesData[]

object (ImageModuleData)

Image module data. The maximum number of these fields displayed is 1 from object level and 1 for class object level.

textModulesData[]

object (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.

redemptionIssuers[]

string (int64 format)

Identifies which redemption issuers can redeem the pass over Smart Tap. Redemption issuers are identified by their issuer ID. Redemption issuers must have at least one Smart Tap key configured.

The enableSmartTap and object level smartTapRedemptionLevel fields must also be set up correctly in order for a pass to support Smart Tap.

countryCode

string

Country code used to display the card's country (when the user is not in that country), as well as to display localized content when content is not available in the user's locale.

heroImage

object (Image)

Optional banner image displayed on the front of the card. If none is present, nothing will be displayed. The image will display at 100% width.

wordMark
(deprecated)

object (Image)

Deprecated.

enableSmartTap

boolean

Identifies whether this class supports Smart Tap. The redemptionIssuers and object level smartTapRedemptionLevel fields must also be set up correctly in order for a pass to support Smart Tap.

hexBackgroundColor

string

The background color for the card. If not set the dominant color of the hero image is used, and if no hero image is set, the dominant color of the logo is used. The format is #rrggbb where rrggbb is a hex RGB triplet, such as #ffcc00. You can also use the shorthand version of the RGB triplet which is #rgb, such as #fc0.

localizedIssuerName

object (LocalizedString)

Translated strings for the issuerName. Recommended maximum length is 20 characters to ensure full string is displayed on smaller screens.

multipleDevicesAndHoldersAllowedStatus

enum (MultipleDevicesAndHoldersAllowedStatus)

Identifies whether multiple users and devices will save the same object referencing this class.

callbackOptions

object (CallbackOptions)

Callback options to be used to call the issuer back for every save/delete of an object for this class by the end-user. All objects of this class are eligible for the callback.

securityAnimation

object (SecurityAnimation)

Optional information about the security animation. If this is set a security animation will be rendered on pass details.

viewUnlockRequirement

enum (ViewUnlockRequirement)

View Unlock Requirement options for the offer.

wideTitleImage

object (Image)

The wide title image of the offer. When provided, this will be used in place of the title image in the top left of the card view.

notifyPreference

enum (NotificationSettingsForUpdates)

Whether or not field updates to this class 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 not specified, 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.

valueAddedModuleData[]

object (ValueAddedModuleData)

Optional value added module data. Maximum of ten on the class. For a pass only ten will be displayed, prioritizing those from the object.

RedemptionChannel

Enums
REDEMPTION_CHANNEL_UNSPECIFIED
INSTORE
instore

Legacy alias for INSTORE. Deprecated.

ONLINE
online

Legacy alias for ONLINE. Deprecated.

BOTH
both

Legacy alias for BOTH. Deprecated.

TEMPORARY_PRICE_REDUCTION
temporaryPriceReduction

Legacy alias for TEMPORARY_PRICE_REDUCTION. Deprecated.

Methods

addmessage

Adds a message to the offer class referenced by the given class ID.

get

Returns the offer class with the given class ID.

insert

Inserts an offer class with the given ID and properties.

list

Returns a list of all offer classes for a given issuer ID.

patch

Updates the offer class referenced by the given class ID.

update

Updates the offer class referenced by the given class ID.