LineItem

Um item de linha contém uma indústria. Um pedido ou carrinho pode ter vários itens de linha da mesma indústria. Subitens/complementos etc. precisam ser definidos em protótipos verticais, dependendo dos casos de uso. Observação: 1. Todas as strings em todos os níveis precisam ter menos de 1.000 caracteres, a menos que seja especificado de outra forma. 2. Todos os campos repetidos em todos os níveis precisam ter menos de 50, a menos que especificado de outra forma. 3. Todos os carimbos de data/hora em todos os níveis, se especificados, precisam ser válidos.

Representação JSON
{
  "id": string,
  "name": string,
  "userVisibleStateLabel": string,
  "provider": {
    object (Merchant)
  },
  "priceAttributes": [
    {
      object (PriceAttribute)
    }
  ],
  "followUpActions": [
    {
      object (Action)
    }
  ],
  "recipients": [
    {
      object (UserInfo)
    }
  ],
  "image": {
    object (Image)
  },
  "description": string,
  "notes": [
    string
  ],
  "disclosures": [
    {
      object (Disclosure)
    }
  ],
  "vertical": {
    "@type": string,
    field1: ...,
    ...
  },

  // Union field verticals can be only one of the following:
  "purchase": {
    object (PurchaseItemExtension)
  },
  "reservation": {
    object (ReservationItemExtension)
  }
  // End of list of possible types for union field verticals.
}
Campos
id

string

Obrigatório: identificador atribuído pelo comerciante para o item de linha. Usado para identificar o item de linha existente ao aplicar atualizações parciais. O comprimento máximo permitido é de 64 caracteres.

name

string

nome do item de linha conforme exibido no recibo. O comprimento máximo permitido é de 100 caracteres.

userVisibleStateLabel
(deprecated)

string

Obsoleto. Use o status de nível vertical. Por exemplo, para compras, use PurchaseOrderExtension.status. Rótulo visível para o usuário para o estado deste item de linha.

provider

object (Merchant)

O provedor do item de linha específico, se for diferente do pedido geral. Exemplo: pedido do Expedia com o provedor de item de linha ANA.

priceAttributes[]

object (PriceAttribute)

Preço e ajustes no nível do item de linha.

followUpActions[]

object (Action)

Ações de acompanhamento no item de linha.

recipients[]

object (UserInfo)

Clientes no nível do item de linha, pode ser diferente do comprador no nível do pedido. Exemplo: o usuário X fez uma reserva de restaurante com o nome do usuário Y.

image

object (Image)

Imagem pequena associada a este item, se houver.

description

string

Descrição do item de linha

notes[]

string

Outras observações aplicáveis a esse item de linha específico, como a política de cancelamento.

disclosures[]

object (Disclosure)

Divulgações associadas a este item de linha.

vertical
(deprecated)

object

Obsoleto: use verticais. Obrigatório: conteúdo semântico do item de linha com base no tipo ou na indústria. Cada indústria deve incluir os próprios detalhes de atendimento. Precisa ser um dos seguintes valores: google.actions.orders.v3.verticals.purchase.PurchaseItemExtension google.actions.orders.v3.verticals.reservation.ReservationItemExtension google.actions.orders.v3.verticals.ticket.TicketItemExtension

Um objeto contendo campos de um tipo arbitrário. Um campo adicional "@type" contém uma URI que identifica o tipo. Exemplo: { "id": 1234, "@type": "types.example.com/standard/id" }.

Campo de união verticals. Obrigatório: conteúdo semântico do item de linha com base no tipo ou na indústria. Cada indústria deve incluir os próprios detalhes de atendimento. verticals pode ser apenas de um dos tipos a seguir:
purchase

object (PurchaseItemExtension)

Ordens de compra, como produtos, comida etc.

reservation

object (ReservationItemExtension)

Pedidos de reserva, como restaurante, corte de cabelo etc.

PurchaseItemExtension

Conteúdo do item de linha da indústria de compras.

Representação JSON
{
  "status": enum (PurchaseStatus),
  "userVisibleStatusLabel": string,
  "type": enum (PurchaseType),
  "productId": string,
  "quantity": integer,
  "unitMeasure": {
    object (MerchantUnitMeasure)
  },
  "returnsInfo": {
    object (PurchaseReturnsInfo)
  },
  "fulfillmentInfo": {
    object (PurchaseFulfillmentInfo)
  },
  "itemOptions": [
    {
      object (ItemOption)
    }
  ],
  "extension": {
    "@type": string,
    field1: ...,
    ...
  },
  "productDetails": {
    object (ProductDetails)
  }
}
Campos
status

enum (PurchaseStatus)

Obrigatório: status no nível do item de linha.

userVisibleStatusLabel

string

Obrigatório: rótulo/string visível pelo usuário para o status. O comprimento máximo permitido é de 50 caracteres.

type

enum (PurchaseType)

Obrigatório: tipo de compra.

productId
(deprecated)

string

ID do produto ou da oferta associado a esse item de linha.

quantity

integer

Quantidade do item.

unitMeasure

object (MerchantUnitMeasure)

Unidade de medida. Especifica o tamanho do item nas unidades escolhidas. O tamanho, junto com o preço ativo, é usado para determinar o preço unitário.

returnsInfo

object (PurchaseReturnsInfo)

Retorna informações sobre esse item de linha. Se não for definido, o item de linha herdará informações de devoluções no nível do pedido.

fulfillmentInfo

object (PurchaseFulfillmentInfo)

Informações de cumprimento deste item de linha. Se não for definido, o item de linha herdará as informações de atendimento no nível do pedido.

itemOptions[]

object (ItemOption)

Complementos ou subitens adicionais.

extension

object

Todos os campos extras trocados entre o comerciante e o Google.

Um objeto contendo campos de um tipo arbitrário. Um campo adicional "@type" contém uma URI que identifica o tipo. Exemplo: { "id": 1234, "@type": "types.example.com/standard/id" }.

productDetails

object (ProductDetails)

Detalhes sobre o produto

MerchantUnitMeasure

Medida de preço unitário do comerciante.

Representação JSON
{
  "measure": number,
  "unit": enum (Unit)
}
Campos
measure

number

Valor: exemplo 1.2.

unit

enum (Unit)

Unidade: por exemplo, POUND, GRAM.

ItemOption

Representa complementos ou subitens.

Representação JSON
{
  "id": string,
  "name": string,
  "prices": [
    {
      object (PriceAttribute)
    }
  ],
  "note": string,
  "quantity": integer,
  "productId": string,
  "subOptions": [
    {
      object (ItemOption)
    }
  ]
}
Campos
id

string

Para opções que são itens, ID exclusivo do item.

name

string

Nome da opção.

prices[]

object (PriceAttribute)

Preço total da opção.

note

string

Observação relacionada à opção.

quantity

integer

Para opções que são itens, use a quantidade.

productId

string

ID do produto ou da oferta associado a essa opção.

subOptions[]

object (ItemOption)

Para definir outras subopções aninhadas.

ProductDetails

Detalhes sobre o produto

Representação JSON
{
  "productId": string,
  "gtin": string,
  "plu": string,
  "productType": string,
  "productAttributes": {
    string: string,
    ...
  }
}
Campos
productId

string

ID do produto ou da oferta associado a esse item de linha.

gtin

string

Número global do item comercial do produto. Útil se o offerId não estiver presente no Merchant Center. Opcional.

plu

string

Os códigos de consulta de preços, geralmente chamados de códigos PLU, números de PLU, PLUs, códigos de produção ou rótulos de produtos, são um sistema de números que identifica exclusivamente os produtos em massa vendidos em supermercados e supermercados.

productType

string

Categoria do produto definida pelo comerciante. Por exemplo, "Página inicial > Mercearia > Laticínios e ovos > Leite > Leite integral"

productAttributes

map (key: string, value: string)

Detalhes do produto fornecidos pelo comerciante, por exemplo, { "alergen": "amendoim" }. É útil se o offerId não estiver presente no Merchant Center. Opcional.

Um objeto com uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

ReservationItemExtension

Conteúdo do item de linha para pedidos de reserva, como restaurante, corte de cabelo etc. Próximo ID: 15.

Representação JSON
{
  "status": enum (ReservationStatus),
  "userVisibleStatusLabel": string,
  "type": enum (ReservationType),
  "reservationTime": {
    object (Time)
  },
  "userAcceptableTimeRange": {
    object (Time)
  },
  "confirmationCode": string,
  "partySize": integer,
  "staffFacilitators": [
    {
      object (StaffFacilitator)
    }
  ],
  "location": {
    object (Location)
  },
  "extension": {
    "@type": string,
    field1: ...,
    ...
  }
}
Campos
status

enum (ReservationStatus)

Obrigatório: status da reserva.

userVisibleStatusLabel

string

Obrigatório: rótulo/string visível pelo usuário para o status. O comprimento máximo permitido é de 50 caracteres.

type

enum (ReservationType)

tipo de reserva. Pode não ser definido se nenhuma das opções de tipo for aplicável.

reservationTime

object (Time)

horário em que o serviço/evento está programado para ocorrer. Pode ser um período, uma data ou uma data e hora exatas.

userAcceptableTimeRange

object (Time)

período aceitável para o usuário.

confirmationCode

string

Código de confirmação para esta reserva.

partySize

integer

O número de pessoas.

staffFacilitators[]

object (StaffFacilitator)

Facilitadores da equipe que atenderão à reserva. Exemplo: O cabeleireiro.

location

object (Location)

Local do serviço/evento.

extension

object

Todos os campos extras trocados entre o comerciante e o Google.

Um objeto contendo campos de um tipo arbitrário. Um campo adicional "@type" contém uma URI que identifica o tipo. Exemplo: { "id": 1234, "@type": "types.example.com/standard/id" }.

StaffFacilitator

Informações sobre o atendente.

Representação JSON
{
  "name": string,
  "image": {
    object (Image)
  }
}
Campos
name

string

O nome do facilitador da equipe. Exemplo: "João da Silva"

image

object (Image)

Imagens do artista.