REST Resource: offerobject

Recurso: OfferObject

Representação JSON
{
  "kind": string,
  "classReference": {
    object (OfferClass)
  },
  "id": string,
  "classId": string,
  "version": string,
  "state": enum (State),
  "barcode": {
    object (Barcode)
  },
  "messages": [
    {
      object (Message)
    }
  ],
  "validTimeInterval": {
    object (TimeInterval)
  },
  "locations": [
    {
      object (LatLongPoint)
    }
  ],
  "hasUsers": boolean,
  "smartTapRedemptionValue": string,
  "hasLinkedDevice": boolean,
  "disableExpirationNotification": boolean,
  "infoModuleData": {
    object (InfoModuleData)
  },
  "imageModulesData": [
    {
      object (ImageModuleData)
    }
  ],
  "textModulesData": [
    {
      object (TextModuleData)
    }
  ],
  "linksModuleData": {
    object (LinksModuleData)
  },
  "appLinkData": {
    object (AppLinkData)
  },
  "rotatingBarcode": {
    object (RotatingBarcode)
  },
  "heroImage": {
    object (Image)
  },
  "groupingInfo": {
    object (GroupingInfo)
  },
  "passConstraints": {
    object (PassConstraints)
  },
  "saveRestrictions": {
    object (SaveRestrictions)
  },
  "linkedObjectIds": [
    string
  ],
  "notifyPreference": enum (NotificationSettingsForUpdates),
  "valueAddedModuleData": [
    {
      object (ValueAddedModuleData)
    }
  ]
}
Campos
kind
(deprecated)

string

Identifica o tipo de recurso. Valor: a string fixa "walletobjects#offerObject".

classReference

object (OfferClass)

Uma cópia dos campos herdados da classe pai. Estes campos são recuperados durante um GET.

id

string

Obrigatório. O identificador exclusivo de um objeto. Esse ID precisa ser exclusivo entre todos os objetos de um emissor. Esse valor precisa seguir o formato issuer ID.identifier, em que o primeiro é emitido pelo Google e o segundo é escolhido por você. O identificador exclusivo deve incluir apenas caracteres alfanuméricos, ".", "_" ou "-".

classId

string

Obrigatório. A classe associada a este objeto. A classe precisa ser do mesmo tipo que este objeto, já existir e ser aprovada.

Os IDs de classe precisam seguir o formato issuer ID.identifier, em que o primeiro é emitido pelo Google e o último é escolhido por você.

version
(deprecated)

string (int64 format)

Suspenso

state

enum (State)

Obrigatório. O estado do objeto. Este campo é usado para determinar como um objeto é exibido no app. Por exemplo, um objeto inactive é movido para a seção "Cartões expirados".

barcode

object (Barcode)

O tipo e o valor do código de barras.

messages[]

object (Message)

Um conjunto de mensagens exibidas no app. Todos os usuários deste objeto receberão as mensagens associadas. O número máximo destes campos é 10.

validTimeInterval

object (TimeInterval)

O período em que esse objeto fica active e pode ser usado. O estado de um objeto será alterado para expired quando esse período tiver passado.

locations[]

object (LatLongPoint)

Observação: no momento, esse campo não é compatível com o acionamento de notificações geográficas.

hasUsers

boolean

Indica se o objeto tem usuários. Este campo é definido pela plataforma.

smartTapRedemptionValue

string

O valor que será transmitido para um terminal certificado pelo Toque inteligente por NFC para este objeto. Os campos de nível de classe enableSmartTap e redemptionIssuers também precisam ser configurados corretamente para que o cartão ofereça suporte ao Toque inteligente. Somente caracteres ASCII são aceitos.

hasLinkedDevice

boolean

Se este objeto está atualmente vinculado a um único dispositivo. Este campo é definido pela plataforma quando um usuário salva o objeto, vinculando-o ao dispositivo. Destinado ao uso por parceiros selecionados. Entre em contato com o suporte para mais informações.

disableExpirationNotification

boolean

Indica se as notificações devem ser explicitamente suprimidas. Se esse campo estiver definido como verdadeiro, independentemente do campo messages, as notificações de expiração enviadas para o usuário serão suprimidas. Por padrão, esse campo é definido como falso.

Atualmente, só é possível definir isso para ofertas.

infoModuleData

object (InfoModuleData)

Obsoleto. Use textModulesData.

imageModulesData[]

object (ImageModuleData)

Dados do módulo de imagem. O número máximo de campos exibidos é 1 no nível do objeto e 1 no nível do objeto da classe.

textModulesData[]

object (TextModuleData)

Dados do módulo de texto. Se os dados do módulo de texto também estiverem definidos na classe, ambos serão exibidos. O número máximo de campos exibidos é 10 para o objeto e 10 para a classe.

rotatingBarcode

object (RotatingBarcode)

O tipo e o valor do código de barras rotativo.

heroImage

object (Image)

Imagem do banner opcional exibida na parte frontal do cartão. Se nenhuma estiver presente, a imagem principal da turma, se houver, será exibida. Se a imagem principal da classe também não estiver presente, nada será exibido.

groupingInfo

object (GroupingInfo)

Informações que controlam como os cartões são agrupados.

passConstraints

object (PassConstraints)

Transmitir restrições para o objeto. Inclui limitar os comportamentos de NFC e captura de tela.

saveRestrictions

object (SaveRestrictions)

Restrições ao objeto que precisam ser verificadas antes que o usuário tente salvar o cartão. Observe que essas restrições serão aplicadas apenas durante o horário de funcionamento. Se as restrições mudarem depois que um usuário salvar o cartão, as novas restrições não serão aplicadas a um cartão já salvo.

linkedObjectIds[]

string

Os linkedObjectIds são uma lista de outros objetos, como ingresso de evento, fidelidade, oferta, genérico, vale-presente, transporte e cartão de embarque, que precisam ser anexados automaticamente a esse objeto de oferta. Se um usuário tivesse salvo a oferta, esses linkedObjectIds seriam enviados automaticamente à carteira do usuário (a menos que ele tivesse desativado a configuração para receber esses cartões vinculados).

Certificar-se de que os objetos presentes em linkedObjectIds já estejam inseridos. Caso contrário, as chamadas falharão. Depois de vincular, não é possível desvincular os objetos. Não é possível vincular objetos que pertencem a outro emissor. Há um limite para o número de objetos que podem ser vinculados a um único objeto. Depois que o limite for alcançado, os novos objetos vinculados na chamada serão ignorados silenciosamente.

Os IDs de objeto precisam seguir o formato issuer ID.identifier, em que o primeiro é emitido pelo Google e o segundo é escolhido por você.

notifyPreference

enum (NotificationSettingsForUpdates)

Se as atualizações de campo para esse objeto precisam acionar notificações. Quando definido como NOTIFY, tentamos acionar uma notificação de atualização de campo para os usuários. Essas notificações só serão enviadas aos usuários se o campo fizer parte de uma lista de permissões. Se definido como DO_NOT_NOTIFY ou NOTIFICATION_SETTINGS_UNSPECIFIED, nenhuma notificação será acionada. Essa configuração é temporária e precisa ser definida com cada solicitação PATCH ou UPDATE. Caso contrário, uma notificação não será acionada.

valueAddedModuleData[]

object (ValueAddedModuleData)

Dados opcionais do módulo de valor agregado. Máximo de dez no objeto.

Métodos

addmessage

Adiciona uma mensagem ao objeto de oferta indicado pelo ID de objeto fornecido.

get

Retorna o objeto de oferta com o ID de objeto fornecido.

insert

Insere um objeto de oferta com o ID e as propriedades fornecidos.

list

Retorna uma lista de todos os objetos de oferta de um determinado ID de emissor.

patch

Atualiza o objeto de oferta indicado pelo ID de objeto fornecido.

update

Atualiza o objeto de oferta indicado pelo ID de objeto fornecido.