Order

O pedido representa o conteúdo de um pedido em andamento ou concluído de um usuário.

Representação JSON
{
  "items": [
    {
      object (OrderItem)
    }
  ],
  "metadata": {
    object (OrderMetadata)
  },
  "fulfillment": {
    object (OrderFulfillment)
  },
  "priceInfo": {
    object (OrderPriceInfo)
  },
  "externalOrderId": string
}
Campos
items[]

object (OrderItem)

Opcional. Os itens no pedido.

metadata

object (OrderMetadata)

Opcional. Outros metadados coletados ou inferidos durante o pedido.

fulfillment

object (OrderFulfillment)

Opcional. As informações de atendimento do pedido.

priceInfo

object (OrderPriceInfo)

Opcional. Informações sobre o preço do pedido.

externalOrderId

string

Apenas saída. O identificador externo deste pedido. Preenchido apenas se uma integração de ponto de venda estiver ativada.

OrderItem

OrderItem especifica o estado de um Item que faz parte de um Pedido.

Representação JSON
{
  "uid": string,
  "itemId": string,
  "displayName": string,
  "image": {
    object (Image)
  },
  "basePrice": {
    object (Money)
  },
  "integrationAttributes": {
    object (ItemIntegrationAttributes)
  },
  "modifierGroups": [
    {
      object (OrderModifierGroup)
    }
  ],
  "quantity": integer
}
Campos
uid

string

Opcional. Um identificador exclusivo atribuído pelo sistema para este item.

itemId

string

Obrigatório. Identificador de um item no menu, exclusivo no menu.

displayName

string

Apenas saída. Nome legível por humanos para este item de linha que será mostrado nas interfaces do usuário.

image

object (Image)

Apenas saída. Imagem a ser mostrada para este item na UI.

basePrice

object (Money)

Apenas saída. O preço base do item. Isso pode ser afetado pelos modificadores selecionados. É o preço por unidade do item.

integrationAttributes

object (ItemIntegrationAttributes)

Apenas saída. Metadados associados a essa entidade usada para integrações downstream.

modifierGroups[]

object (OrderModifierGroup)

Opcional. ModifierGroups aplicados a este item.

quantity

integer

Opcional. A quantidade deste item no pedido.

OrderModifierGroup

OrderModifierGroup especifica o estado de um ModifierGroup que faz parte de um OrderItem.

Representação JSON
{
  "modifierGroupId": string,
  "displayName": string,
  "integrationAttributes": {
    object (ModifierGroupIntegrationAttributes)
  },
  "modifiers": [
    {
      object (OrderModifier)
    }
  ]
}
Campos
modifierGroupId

string

Obrigatório. Identificador exclusivo do grupo de modificadores no menu.

displayName

string

Apenas saída. O nome do grupo de modificadores, por exemplo, "Coberturas (sanduíche)" ou "Acompanhamento para combo médio".

integrationAttributes

object (ModifierGroupIntegrationAttributes)

Apenas saída. Metadados associados a essa entidade usada para integrações downstream.

modifiers[]

object (OrderModifier)

Opcional. Os modificadores aplicados a este grupo de modificadores.

OrderModifier

OrderModifier especifica o estado de um Modifier que faz parte de um OrderModifierGroup.

Representação JSON
{
  "uid": string,
  "modifierId": string,
  "displayName": string,
  "priceAdjustment": {
    object (Money)
  },
  "quantity": integer,
  "modifierAction": {
    object (OrderModifierAction)
  },
  "image": {
    object (Image)
  },
  "integrationAttributes": {
    object (ModifierIntegrationAttributes)
  },
  "modifierGroups": [
    {
      object (OrderModifierGroup)
    }
  ]
}
Campos
uid

string

Opcional. Um identificador exclusivo atribuído pelo sistema para este modificador.

modifierId

string

Obrigatório. Identificador exclusivo do modificador no menu.

displayName

string

Apenas saída. O nome de exibição do modificador a ser mostrado nas interfaces do usuário.

priceAdjustment

object (Money)

Apenas saída. O ajuste de preço associado a esse modificador, se houver. É o preço por unidade do modificador.

quantity

integer

Opcional. A quantidade dessa ação de modificador aplicada.

modifierAction

object (OrderModifierAction)

Opcional. A ação do modificador aplicada a este modificador.

image

object (Image)

Apenas saída. Imagem a ser exibida para este modificador na UI.

integrationAttributes

object (ModifierIntegrationAttributes)

Apenas saída. Metadados associados a essa entidade usada para integrações downstream.

modifierGroups[]

object (OrderModifierGroup)

Opcional. Grupos de modificadores aninhados aplicados a este modificador.

OrderModifierAction

OrderModifierAction especifica o ModifierAction associado a um OrderModifier aplicado.

Representação JSON
{
  "name": string
}
Campos
name

string

Opcional. O nome da ação do modificador, por exemplo, "NO", "SIDE", "ADD", "EXTRA".

OrderMetadata

OrderMetadata contém outros metadados coletados ou inferidos durante o pedido.

Representação JSON
{
  "collectedCustomerName": string,
  "callerPhoneNumber": string
}
Campos
collectedCustomerName

string

Opcional. Nome do cliente, coletado ao receber o pedido. Preenchido apenas quando o agente está configurado para coletar o nome do cliente. Esses dados podem ser coletados verbalmente e conter erros de ortografia ou transcrição. Portanto, tome cuidado ao mostrar essas informações aos usuários e não confie nelas como informações de pagamento, por exemplo.

callerPhoneNumber

string

Opcional. O número de telefone do cliente que está fazendo o pedido.

OrderFulfillment

OrderFulfillment contém informações sobre o atendimento do pedido.

Representação JSON
{
  "fulfillmentMethod": enum (FulfillmentMethod),
  "createTime": string,
  "targetFulfillmentTime": string
}
Campos
fulfillmentMethod

enum (FulfillmentMethod)

Opcional. O método de atendimento do pedido.

createTime

string (Timestamp format)

Apenas saída. A hora em que o pedido foi criado.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

targetFulfillmentTime

string (Timestamp format)

Opcional. O horário em que o pedido está programado para ser atendido, usado para "pedir com antecedência". Se não for fornecido, o pedido será considerado "o mais rápido possível".

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

OrderPriceInfo

OrderPriceInfo encapsula os vários componentes de preço de um pedido.

Representação JSON
{
  "totalPrice": {
    object (Money)
  },
  "subtotalPrice": {
    object (Money)
  },
  "taxPrice": {
    object (Money)
  }
}
Campos
totalPrice

object (Money)

Opcional. O preço total final após a aplicação de todos os tributos, taxas e descontos.

subtotalPrice

object (Money)

Opcional. O preço subtotal de todos os itens e modificadores, antes de tributos e descontos.

taxPrice

object (Money)

Opcional. O valor dos tributos aplicados ao pedido.