Programar transferências do Google Merchant Center

Antes de começar

Antes de criar uma transferência do Google Merchant Center, siga estas recomendações:

  • Verifique se você realizou todas as ações necessárias para ativar o serviço de transferência de dados do BigQuery.
  • Crie um conjunto de dados do BigQuery para armazenar os dados do Google Merchant Center.
    • Para a região do conjunto de dados, é possível usar a opção padrão, multirregional, nos EUA ou na UE.
    • Se você quiser criar um conjunto de dados em uma região específica, a transferência de dados do Merchant Center só será aceita nas seguintes regiões:
    • us-east4 (Northern Virginia),
    • asia-northeast1 (Tokyo),
    • asia-southeast1 (Singapore),
    • australia-southeast1 (Sydney),
    • europe-north1 (Finland),
    • europe-west2 (London),
    • europe-west6 (Zurich).
  • Se você pretende configurar notificações de execução de transferência do Pub/Sub, é preciso ter permissões pubsub.topics.setIamPolicy. As permissões do Pub/Sub não serão necessárias se você configurar notificações por e-mail. Para mais informações, consulte Notificações de execução do serviço de transferência de dados do BigQuery.

Permissões exigidas

A pessoa que está criando a transferência precisa ter as seguintes permissões necessárias:

  • BigQuery:

    • Permissões bigquery.transfers.update para criar a transferência
    • As permissões bigquery.datasets.get e bigquery.datasets.update no conjunto de dados de destino

    O papel predefinido bigquery.admin do IAM inclui permissões bigquery.transfers.update, bigquery.datasets.update e bigquery.datasets.get. Para mais informações sobre os papéis do IAM no serviço de transferência de dados do BigQuery, consulte o controle de acesso.

  • Google Merchant Center

Configurar uma transferência do Google Merchant Center

Para a configuração de uma transferência de dados do relatório do Google Merchant Center, os seguintes requisitos precisam ser atendidos:

Para criar uma transferência de dados do relatório do Google Merchant Center:

Console

  1. Acesse a página do BigQuery no console do Google Cloud.

    Acesse a página do BigQuery

  2. Clique em Transferências de dados.

  3. Clique em Criar transferência.

  4. Na página Criar transferência:

    • Na seção Tipo de origem, em Origem, escolha Google Merchant Center.

    • No campo Nome de exibição da seção Transferir nome da configuração, insira um nome para a transferência, como My Transfer. O nome da transferência pode ser qualquer valor que permita identificá-la, caso você precise modificá-la mais tarde.

      Nome da transferência

    • Na seção Opções de programação, faça o seguinte:

      • Selecione uma Frequência de repetição. Se você selecionar Horas, Dias, Semanas ou Meses, também precisará especificar uma frequência. Também é possível selecionar Personalizado para especificar uma frequência de repetição personalizada. Se você selecionar Sob demanda, essa transferência vai ser executada quando você acionar manualmente a transferência.

      • Se aplicável, selecione Começar agora ou Começar no horário definido e forneça uma data de início e um horário de execução.

      • Em Data e hora de início, insira a data e a hora para iniciar a transferência. Esse valor precisa ser pelo menos 24 horas posterior ao horário UTC atual. Se você escolheu Começar agora, essa opção estará desativada.

        Programação de transferência

        Se você deixar as opções de programação definidas como Iniciar agora, a primeira execução da transferência será iniciada imediatamente e falhará com esta mensagem de erro: No data to transfer found for the Merchant account. If you have just created this transfer, you may need to wait for up to a day before the data of your Merchant account are prepared and available for the transfer. A próxima execução programada será executado corretamente. Se os dados da sua conta do comerciante estiverem preparados na mesma data no horário UTC, será possível configurar um preenchimento para a execução de hoje.

    • Na seção Configurações de destino, em Conjunto de dados de destino, escolha o conjunto criado para armazenar seus dados.

      Conjunto de dados da transferência

    • Na seção Detalhes da fonte de dados, em ID do comerciante, insira o ID do comerciante ou da MCA.

      Selecione os relatórios que você quer transferir. Consulte Relatórios suportados para mais detalhes.

      Dados de transferência do Google Merchant Center.

    • No menu Conta de serviço, selecione uma conta de serviço nas contas de serviço associadas ao seu projeto do Google Cloud. É possível associar uma conta de serviço à transferência em vez de usar suas credenciais de usuário. Para mais informações sobre o uso de contas de serviço com transferências de dados, consulte Usar contas de serviço.

    • Opcional: na seção Opções de notificação:

      • Clique no botão para ativar as notificações por e-mail. Quando você ativa essa opção, o administrador de transferência recebe uma notificação por e-mail se uma execução de transferência falhar.
      • Em Selecionar um tópico do Pub/Sub, escolha o nome do tópico ou clique em Criar um tópico. Essa opção configura notificações de execução do Pub/Sub da sua transferência.
  5. Clique em Salvar.

bq

Insira o comando bq mk e forneça a sinalização de execução da transferência --transfer_config. As sinalizações a seguir também são obrigatórias:

  • --data_source
  • --target_dataset
  • --display_name
  • --params

Também é possível fornecer a sinalização --project_id para especificar um projeto determinado. Se --project_id não for especificado, o projeto padrão será usado.

bq mk \
--transfer_config \
--project_id=project_id \
--target_dataset=dataset \
--display_name=name \
--params='parameters' \
--data_source=data_source
--service_account_name=service_account_name

Em que:

  • project_id é o ID do projeto.
  • dataset é o conjunto de dados de destino na configuração da transferência.
  • name é o nome de exibição da configuração de transferência. O nome da transferência pode ser qualquer valor que permita identificá-la facilmente, caso precise modificá-la mais tarde.
  • parameters contém os parâmetros da configuração da transferência criada no formato JSON. Por exemplo, --params='{"param":"param_value"}'.
    • No Google Merchant Center, você precisa fornecer o parâmetro merchant_id.
    • O parâmetro export_products especifica se o produto e os dados de problemas do produto serão transferidos. Esse parâmetro está incluído por padrão, mesmo que você não especifique o parâmetro export_products. O Google recomenda que você inclua esse parâmetro explicitamente e defina-o como "true".
    • O parâmetro export_regional_inventories especifica se os dados de inventários regionais serão transferidos.
    • O parâmetro export_local_inventories especifica se os dados de inventários locais serão transferidos.
    • O parâmetro export_price_competitiveness especifica se os dados de competitividade de preço serão transferidos.
    • O parâmetro export_price_insights especifica se os dados de insights de preço serão transferidos.
    • O parâmetro export_best_sellers_v2 especifica se os dados dos melhores vendedores devem ser transferidos.
    • O parâmetro export_performance especifica se os dados de desempenho do produto serão transferidos.
  • data_source é a fonte de dados: merchant_center.
  • service_account_name é o nome da conta de serviço usado para autenticar a transferência. A conta de serviço precisa pertencer ao mesmo project_id usado para criar a transferência e ter todas as permissões necessárias.

Por exemplo, com o comando a seguir, você cria uma transferência do Google Merchant Center chamada My Transfer usando o ID do comerciante 1234 e o conjunto de dados de destino mydataset. A transferência é criada no projeto padrão.

bq mk \
--transfer_config \
--target_dataset=mydataset \
--display_name='My Transfer' \
--params='{"merchant_id":"1234","export_products":"true","export_regional_inventories":"true","export_local_inventories":"true","export_price_benchmarks":"true","export_best_sellers":"true"}' \
--data_source=merchant_center

Ao executar o comando pela primeira vez, você recebe uma mensagem como esta:

[URL omitted] Please copy and paste the above URL into your web browser and follow the instructions to retrieve an authentication code.

Siga as instruções na mensagem e cole o código de autenticação na linha de comando.

Se você acabou de criar esta transferência, talvez seja necessário aguardar até um dia antes que os dados da sua conta do comerciante estejam preparados e disponíveis para a transferência.A próxima execução programada será executada com êxito. Se os dados da sua conta do comerciante estiverem preparados na mesma data no horário UTC, será possível configurar um preenchimento para a execução de hoje.

API

Use o método projects.locations.transferConfigs.create e forneça uma instância do recurso TransferConfig.

Resolver problemas de configuração de transferência do Google Merchant Center

Se você tiver problemas para configurar a transferência, consulte Problemas de transferência do Google Merchant Center em Solução de problemas com a configuração do serviço de transferência de dados do BigQuery.