Validar eventos

Escolha sua plataforma:

O Measurement Protocol do Google Analytics não retorna Códigos de erro HTTP, mesmo que um evento esteja incorreto ou não seja obrigatório parâmetros. Para garantir que os eventos sejam válidos, é necessário testá-los no servidor de validação do Measurement Protocol antes de implantá-los na produção. Depois de validar se os eventos estão estruturados corretamente, verifique a implementação para ter certeza de que você está usando as chaves corretas.

É possível chamar o servidor de validação diretamente ou usar a ferramenta Google Analytics Criador de eventos. Com o Criador de eventos do Google Analytics, você pode cria eventos e usa o servidor de validação do Measurement Protocol para validá-los.

Neste guia, descrevemos como enviar eventos para o servidor de validação do Measurement Protocol para Google Analytics 4 e interpretar a resposta.

Como enviar eventos para validação

A única diferença na solicitação de eventos enviados para o Measurement Protocol e o servidor de validação do Measurement Protocol é o URL.

Servidor URL
Measurement Protocol /mp/collect
Servidor de validação do Measurement Protocol /debug/mp/collect

Todos os outros campos de solicitação são os mesmos. Consulte a referência de protocolo para ver detalhes completos sobre como criar uma solicitação válida.

O código a seguir mostra um evento inválido que está sendo enviado ao servidor de validação do Measurement Protocol:

const firebase_app_id = `X:XX:XX:XX`;
const api_secret = `<secret_value>`;

fetch(`https://www.google-analytics.com/debug/mp/collect?firebase_app_id=${firebase_app_id}&api_secret=${api_secret}`, {
  method: "POST",
  body: JSON.stringify({
    app_instance_id: 'app_instance_id',
    events: [{
      // Event names must start with an alphabetic character.
      name: '_badEventName',
      params: {},
    }]
  })
});

Resposta de validação

Esta é a resposta do servidor de validação para o evento anterior:

{
  "validationMessages": [
    {
      "fieldPath": "events",
      "description": "Event at index: [0] has invalid name [_badEventName]. Names must start with an alphabetic character.",
      "validationCode": "NAME_INVALID"
    }
  ]
}

Resposta

Chave Tipo Descrição
validationMessages Array<ValidationMessage> Matriz de mensagens de validação.

ValidationMessage

Chave Tipo Descrição
fieldPath string Caminho para o campo inválido.
description string Descrição do erro.
validationCode ValidationCode Um ValidationCode que corresponde ao erro.

ValidationCode

Valor Descrição
VALUE_INVALID O valor informado para fieldPath é inválido. Veja as limitações.
VALUE_REQUIRED Um valor obrigatório não foi informado para um fieldPath.
NAME_INVALID O nome informado é inválido. Veja as limitações.
NAME_RESERVED O nome informado é um dos nomes reservados. Veja os nomes reservados.
VALUE_OUT_OF_BOUNDS O valor informado é muito grande. Veja as limitações.
EXCEEDED_MAX_ENTITIES Havia muitos parâmetros na solicitação. Veja as limitações.
NAME_DUPLICATED O mesmo nome foi informado mais de uma vez na solicitação.