Esquema da tabela de produtos do Google Merchant Center
Vista geral
Quando os dados de relatórios do Google Merchant Center são transferidos para o BigQuery, o formato dos dados de produtos e problemas com produtos corresponde principalmente ao formato dos campos relevantes dos recursos Products e Productstatuses da API Content.
Os dados são escritos numa tabela denominada
Products_MERCHANT_ID
se estiver a usar um ID do comerciante individual ou
Products_AGGREGATOR_ID
se estiver a usar uma conta
do MCA.
Esquema
A tabela Products_
tem o seguinte esquema:
Coluna | Tipo de dados do BigQuery | Descrição | Exemplo de dados |
---|---|---|---|
product_data_timestamp |
TIMESTAMP |
Indicação de tempo dos dados dos produtos. | 2023-09-14 11:49:50 UTC |
product_id |
STRING |
ID REST da API Content do produto no formato:
channel:content_language:feed_label:offer_id . Esta é a chave principal. |
online:en:AU:666840730 |
merchant_id |
INTEGER |
ID da conta de comerciante. | 1234 |
aggregator_id |
INTEGER |
ID da conta de agregador para contas multicliente. | 12345 |
offer_id |
STRING |
ID do produto fornecido pelo comerciante. | tddy123uk |
title |
STRING |
Título do artigo. | TN2351 preto USB |
description |
STRING |
Descrição do artigo. | O USB preto TN2351 redefiniu a forma como o XJS pode afetar as experiências de LLCD. |
link |
STRING |
URL da página de destino do produto fornecido pelo comerciante. | https://www.example.com/tn2351-black-usb/6538811?skuId=1234 |
mobile_link |
STRING |
URL de uma versão otimizada para dispositivos móveis da página de destino fornecido pelo comerciante. | https://www.example.com/tn2351-black-usb/6538811?skuId=1234 |
image_link |
STRING |
URL da imagem principal do produto fornecido pelo comerciante. | https://www.example.com/tn2351-black-usb/6538811?skuId=1234 |
additional_image_links |
STRING , REPEATED |
URLs adicionais de imagens do artigo fornecidos pelo comerciante. | |
content_language |
STRING |
O código de idioma ISO 639-1 de duas letras do artigo. | pt-PT |
target_country |
STRING |
Obsoleto (sempre definido como NULL) como parte de uma alteração para permitir que os produtos segmentem vários países. Em alternativa, use os seguintes campos para ler o estado de cada país segmentado: destinations.approved_countries, destinations.pending_countries e destinations.disapproved_countries. Os problemas podem agora aplicar-se a determinados países de destino e não a outros, conforme indicado no campo issues.applicable_countries. | nulo |
feed_label |
STRING |
A etiqueta do feed foi fornecida pelo comerciante para o item ou - , se não tiver sido fornecida. |
EUA |
channel |
STRING |
O canal do item, online ou local . |
local, online |
expiration_date |
TIMESTAMP |
Data e hora fornecidas pelo comerciante em que o item deve expirar, conforme especificado na inserção. É definido como nulo se não for fornecido. | 2023-10-14 00:00:00 UTC |
google_expiration_date |
TIMESTAMP |
Data e hora em que o artigo expira no Google Shopping. Nunca definido como nulo. | 2023-10-14 00:00:00 UTC |
adult |
BOOLEAN |
Definido como verdadeiro se o item for destinado a adultos. | true, false |
age_group |
STRING |
Faixa etária de segmentação do artigo indicada pelo comerciante. NULL se não for fornecido. | recém-nascido, bebé, criança pequena, criança, adulto |
availability |
STRING |
Estado de disponibilidade do artigo fornecido pelo comerciante. | Em stock, esgotado |
availability_date |
TIMESTAMP |
Data e hora fornecidas pelo comerciante em que um produto pré-encomendado fica disponível para entrega. NULL se não for fornecido. | 2023-10-14 00:00:00 UTC |
brand |
STRING |
Marca do artigo fornecida pelo comerciante. NULL se não for fornecido. | Nome da marca |
google_brand_id |
STRING |
ID da marca Google do artigo. | 12759524623914508053 |
color |
STRING |
Cor do artigo fornecida pelo comerciante. NULL se não for fornecido. | Prata, cinzento, multicolor |
condition |
STRING |
Condição ou estado do artigo fornecido pelo comerciante. | novos, usados e recondicionados |
custom_labels |
RECORD |
Etiquetas personalizadas fornecidas pelo comerciante para o agrupamento personalizado de artigos em anúncios do Shopping. NULL se não for fornecido. | |
custom_labels.label_0 |
STRING |
Etiqueta personalizada 0. | a minha etiqueta personalizada |
custom_labels.label_1 |
STRING |
Etiqueta personalizada 1. | a minha etiqueta personalizada |
custom_labels.label_2 |
STRING |
Etiqueta personalizada 2. | a minha etiqueta personalizada |
custom_labels.label_3 |
STRING |
Etiqueta personalizada 3. | a minha etiqueta personalizada |
custom_labels.label_4 |
STRING |
Etiqueta personalizada 4. | a minha etiqueta personalizada |
gender |
STRING |
Género do artigo segmentado fornecido pelo comerciante. NULL se não for fornecido. | unissexo, masculino, feminino |
gtin |
STRING |
Número global de artigo comercial (GTIN) do artigo fornecido pelo comerciante. NULL se não for fornecido. | 3234567890126 |
item_group_id |
STRING |
Identificador partilhado fornecido pelo comerciante para todas as variantes do mesmo produto. NULL se não for fornecido. | AB12345 |
material |
STRING |
Material do qual o artigo é feito, fornecido pelo comerciante. NULL se não for fornecido. | Couro |
mpn |
STRING |
Número de série do fabricante (NSF) do artigo fornecido pelo comerciante. Definido como NULL se não for fornecido. | GO12345OOGLE |
pattern |
STRING |
Padrão fornecido pelo comerciante. NULL se não for fornecido. | Com riscas |
price |
RECORD |
Preço do artigo fornecido pelo comerciante. | |
price.value |
NUMERIC |
O preço do artigo. | 19,99 |
price.currency |
STRING |
A moeda do preço. | USD |
sale_price |
RECORD |
Preço de saldos do artigo fornecido pelo comerciante. | |
sale_price.value |
NUMERIC |
O preço de saldo do artigo. NULL se não for fornecido. | 19,99 |
sale_price.currency |
STRING |
A moeda do preço de venda. NULL se não for fornecido. | USD |
sale_price_effective_start_date |
TIMESTAMP |
Data e hora de início do período de saldos do artigo. | 2023-10-14 00:00:00 UTC |
sale_price_effective_end_date |
TIMESTAMP |
Data e hora de fim do período de saldos do artigo. | 2023-10-14 00:00:00 UTC |
google_product_category |
INTEGER |
O ID da categoria de produtos Google do artigo. NULL se não for fornecido. | 2271 |
google_product_category_ids |
INTEGER, REPEATED |
O caminho completo das categorias de produtos Google para o artigo, armazenado como um conjunto de IDs. NULL se não for fornecido. | |
google_product_category_path |
STRING |
Uma versão legível por humanos do caminho completo. Vazio se não for fornecido. | Vestuário e acessórios > Roupa > Vestidos |
product_type |
STRING |
Categoria do artigo fornecida pelo comerciante. | Início > Mulher > Vestidos > Vestidos maxi |
additional_product_types |
STRING , REPEATED |
Categorias adicionais do artigo. | |
promotion_ids |
STRING , REPEATED |
A lista de IDs das promoções associadas ao produto. | |
destinations |
RECORD , REPEATED |
Os destinos pretendidos para o produto. | |
destinations.name |
STRING |
O nome do destino; apenas Shopping é suportado. Isto corresponde aos Métodos de marketing "Anúncios do Shopping" e "Anúncios de inventário local" no Merchant Center. |
Compras |
destinations.status* |
STRING |
Obsoleto (sempre definido como NULL) como parte de uma alteração para permitir que os produtos segmentem vários países. Em alternativa, use os seguintes campos para ler o estado de cada país segmentado: destinations.approved_countries, destinations.pending_countries e destinations.disapproved_countries. Os problemas podem agora aplicar-se a determinados países de destino e não a outros, conforme indicado no campo issues.applicable_countries. | NULL |
destinations.approved_countries |
STRING, REPEATED |
Lista de códigos de território CLDR onde a oferta está aprovada. | US, CH |
destinations.pending_countries |
STRING, REPEATED |
Lista de códigos de território CLDR onde a oferta está pendente. | US, CH |
destinations.disapproved_countries |
STRING, REPEATED |
Lista de códigos de território CLDR onde a oferta é reprovada. | US, CH |
issues |
RECORD , REPEATED |
A lista de problemas ao nível do artigo associados ao produto. | |
issues.code |
STRING |
O código de erro do problema. | image_too_generic |
issues.servability |
STRING |
Como este problema afeta a publicação da oferta. | reprovado, não afetado |
issues.resolution |
STRING |
Se o problema pode ser resolvido pelo comerciante. | merchant_action, pending_processing |
issues.attribute_name |
STRING |
O nome do atributo, se o problema for causado por um único atributo. Caso contrário, é NULL. | link da imagem |
issues.destination |
STRING |
O destino ao qual o problema se aplica. Está sempre definido como Shopping . |
Compras |
issues.short_description |
STRING |
Breve descrição do problema em inglês. | Imagem genérica |
issues.detailed_description |
STRING |
Descrição detalhada do problema em inglês. | Use uma imagem que mostre o produto |
issues.documentation |
STRING |
URL de uma página Web para ajudar a resolver este problema. | https://support.google.com/merchants/answer/6098288 |
issues.applicable_countries |
STRING, REPEATED |
Lista de códigos de território CLDR onde o problema se aplica. | CH |
Exemplos de consultas
Estatísticas de produtos e problemas de produtos
A seguinte consulta de exemplo SQL fornece o número de produtos, produtos com problemas e problemas por dia.
SELECT _PARTITIONDATE AS date, COUNT(*) AS num_products, COUNTIF(ARRAY_LENGTH(issues) > 0) AS num_products_with_issues, SUM(ARRAY_LENGTH(issues)) AS num_issues FROM dataset.Products_merchant_id WHERE _PARTITIONDATE >= 'YYYY-MM-DD' GROUP BY date ORDER BY date DESC
Produtos reprovados para anúncios do Shopping
A seguinte consulta de exemplo SQL indica o número de produtos que não estão aprovados para apresentação em anúncios do Shopping, separados por país. A reprovação pode resultar da exclusão do destino ou de um problema com o produto.
SELECT _PARTITIONDATE AS date, disapproved_country, COUNT(*) AS num_products FROM dataset.Products_merchant_id, UNNEST(destinations) AS destination, UNNEST(disapproved_countries) AS disapproved_country WHERE _PARTITIONDATE >= 'YYYY-MM-DD' GROUP BY date, disapproved_country ORDER BY date DESC
Produtos com problemas de reprovação
A seguinte consulta de exemplo SQL obtém o número de produtos com problemas reprovados, separados por país.
SELECT _PARTITIONDATE AS date, applicable_country, COUNT(DISTINCT CONCAT(CAST(merchant_id AS STRING), ':', product_id)) AS num_distinct_products FROM dataset.Products_merchant_id, UNNEST(issues) AS issue, UNNEST(issue.applicable_countries) as applicable_country WHERE _PARTITIONDATE >= 'YYYY-MM-DD' AND issue.servability = 'disapproved' GROUP BY date, applicable_country ORDER BY date DESC