1. Introdução
Última atualização:08/06/2021
O que você vai criar
Neste codelab, você vai aprender a enviar eventos externos para o GA4 usando o Measurement Protocol.
Este codelab pressupõe que você já tenha um app com o Google Analytics para Firebase implementado. Se quiser saber como fazer a integração com o Google Analytics para Firebase, consulte este codelab primeiro. Se quiser saber como criar um app com o Firebase, consulte o codelab do Firebase Android: crie um chat amigável.
O que você aprenderá
- Etapas para fazer sua primeira chamada da MP
- Entender os parâmetros necessários para a chamada
- Enviar e validar sua chamada de teste
- Criar um script de amostra em Python para fazer a chamada
O que é necessário
- Seu app Android ou iOS
- Qualquer ambiente de desenvolvimento integrado para fazer mudanças
- Conta do GA4
- Opcional: ambiente de desenvolvimento em Python (ou Colab)
2. Coletar os campos obrigatórios
Criar uma chave secreta da API no GA4
Navegue até o GA4 e crie sua nova chave secreta da API em Administrador > Fluxos de dados > escolha seu fluxo > Measurement Protocol > Criar.
Você pode fornecer qualquer apelido, e o valor do secret será exibido para uso na sua chamada.
Se você não souber como acessar o GA4, acesse seu projeto do Firebase, verifique Configurações do projeto > Integrações > Google Analytics e clique em "Gerenciar". A conexão do Google Analytics vai aparecer, e você pode navegar diretamente de lá também.
Coletar app_instance_id
Use qualquer um dos métodos abaixo para coletar o app_instance_id.
- Usar o BigQuery Export
- Como buscar nativamente no código-fonte do app
Ambos são explicados em detalhes abaixo.
- Como usar o BigQuery Export
Se você tiver a exportação do BigQuery ativada, siga as etapas abaixo.
- Fazer login no Firebase
- Acesse Configurações do projeto > Integrações > BigQuery.
- Clique em "Ver no BigQuery" perto do conjunto de dados.
Observação : o conjunto de dados só fica disponível depois que a opção é ativada por cerca de 24 a 48 horas.
- No BigQuery, você pode verificar o user_pseudo_id na tabela. Esse é o app_instance_id que você pode usar na chamada
- Como buscar nativamente no código-fonte do app
Se o app for criado usando Java, você poderá usar algo assim para recuperar o app_instance_id:
FirebaseAnalytics.getInstance(this).getAppInstanceId().addOnCompleteListener(new OnCompleteListener<String>() {
@Override
public void onComplete(@NonNull Task<String> task) {
if (task.isSuccessful()) {
String user_pseudo_id = task.getResult();
}
}
});
Para Kotlin, tente o seguinte:
Thread {
Firebase.analytics.appInstanceId.addOnSuccessListener { user_pseudo_id ->
Log.d("Firebase", "user_pseudo_id using appInstanceId is $user_pseudo_id")
/*
Store the value to your server or do something with the retrieved id
*/
}
}.start()
Se você tiver um app iOS, use o seguinte em Swift:
let user_pseudo_id = Analytics.appInstanceID()
print("user_pseudo_id = \(user_pseudo_id)")
/*
Store the value to your server or do something with the retrieved id
*/
Confira mais links abaixo, dependendo da sua infraestrutura
3. Como criar a chamada
Você pode criar uma chamada de amostra usando o Criador de eventos no GA4. (Isso exige que você faça login e ative os cookies). Confira se a opção está definida como "firebase".
Preencha os seguintes campos:
- api_secret: já criado anteriormente no GA4
- firebase_app_id: para conseguir esse valor, navegue até Administrador > Fluxos de dados > escolha seu fluxo . Ele vai aparecer assim:
- app_instance_id: você já recuperou esse valor.
- user_id não é obrigatório. Você pode deixar em branco por enquanto
- Categoria: mude para "Personalizada" no menu suspenso e insira o nome do evento que quiser. Não use nenhum evento coletado automaticamente. Aqui, estamos usando "test_from_codelab".
Se quiser, você também pode fornecer parâmetros de evento e/ou propriedades do usuário clicando nos botões abaixo.
Depois de preencher tudo, você vai ver algo assim, com um botão para "Validar evento".
Quando chegar a esse ponto, clique em "VALIDAR EVENTO" , o botão destacado em laranja. A mensagem abaixo vai aparecer, especificando que o evento é válido, e um botão "ENVIAR PARA O GA" vai aparecer. Nesse ponto, se o evento aparecer como inválido, a ferramenta vai informar o campo exato em que há um problema. Você pode corrigir isso e tentar de novo.
Agora você pode clicar no botão, e ele vai enviar um evento de teste para o GA4.
4. Validar eventos no GA4
Depois de enviar o evento, navegue até sua conta do GA4 e confira o relatório de tempo real. O evento vai aparecer
Pode levar cerca de 24 horas para que os eventos sejam propagados da visualização em tempo real para a guia de relatórios de eventos. Portanto, não se preocupe se isso não aparecer imediatamente no relatório de eventos normal.
Se você estiver enfrentando problemas ou discrepâncias, confira as limitações conhecidas do Measurement Protocol.
5. Como criar um script em Python
Agora que você testou, examine a chamada de API e a carga útil do evento para criar uma arquitetura semelhante em Python (ou em qualquer linguagem de sua escolha) que possa fazer essa chamada. Depois, é possível programar isso na frequência desejada e operacionalizar. Para esta parte, você pode usar qualquer IDE de sua escolha que seja compatível com Python ou apenas um notebook do Google Colab, que não exige instalação no seu dispositivo.
Voltando ao Criador de eventos do GA4, você vai notar que o endpoint é o seguinte:
POST /mp/collect?firebase_app_id=XXXX&api_secret=XXXX
HTTP/1.1
Host: www.google-analytics.com
O payload do evento era o seguinte:
{
"app_instance_id": XXXX,
"non_personalized_ads": false,
"events": [
{
"name": "test_from_codelab",
"params": {
"test_param": "test_123"
}
}
]
}
Você pode traduzir isso para Python usando algo assim:
import requests
import json
url = "https://www.google-analytics.com/mp/collect?firebase_app_id=XXXX&api_secret=XXXX"
payload = {
"app_instance_id": XXXX,
"non_personalized_ads": False,
"events": [
{
"name": "test_from_codelab",
"params": {
"test_param": "test_123"
}
}
]
}
r = requests.post(url,data=json.dumps(payload),verify=True)
print(r.status_code)
Depois de executar isso com os valores corretos, o evento vai aparecer em tempo real no GA4.
6. Parabéns
Parabéns! Você usou o Measurement Protocol no GA4. Agora você pode criar arquiteturas de soluções eficientes para enviar dados mais significativos ao Google Analytics e melhorar sua análise de marketing e de negócios. Para aproveitar ao máximo, sugerimos que você se conecte ao Google Ads e importe esses eventos como conversões. Consulte a etapa 6 deste codelab para instruções detalhadas. Para fins de acompanhamento de conversões, o Google Ads só vai mostrar dados associados ao IDFA ou aos IDs de dispositivo coletados pelo SDK do Firebase nos últimos 60 dias. Lembre-se de que esta ainda é uma API Alfa. Consulte as limitações listadas aqui , que precisam ser resolvidas antes do lançamento completo.
Você aprendeu
- Como coletar as variáveis certas para fazer chamadas de MP
- Como enviar e validar eventos de teste
- Como criar um script para enviar chamadas de MP