Google Analytics 4 (tráfego por canal)
const url = 'https://dash.owiew.com/v1/t/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/google-analytics';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://dash.owiew.com/v1/t/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/google-analytics \ --header 'Authorization: Bearer <token>'O painel do Google Analytics 4 do cliente na janela pedida: totais, série diária e grupos de canal (mais sessões primeiro, até 50), com sessões, usuários ativos, novos usuários e eventos-chave. A receita é uma lista com UMA entrada por moeda, em micros inteiros (1 unidade = 1.000.000): moedas diferentes nunca são somadas. Usuários são somas por dia, canal, origem e mídia, e não usuários únicos. Só agregados, sem dado pessoal. Sem de/ate: os últimos 30 dias (America/Sao_Paulo); janela máxima de 400 dias. Erros 400: GA_DATA_INVALIDA, GA_JANELA_INVERTIDA, GA_JANELA_LONGA. Cliente que nunca conectou recebe 200 com conectado: false.
Exige a permissão insights.read.
Authorizations
Seção intitulada “Authorizations”Parameters
Seção intitulada “Parameters”Path Parameters
Seção intitulada “Path Parameters”O cliente. Vem SEMPRE do caminho — nunca de cabeçalho, nunca de cookie. Ele é conferido contra o token: um identificador que não bata com o do token devolve 403, e não uma resposta vazia.
Query Parameters
Seção intitulada “Query Parameters”Primeiro dia, AAAA-MM-DD. Padrão: 29 dias antes de ate.
Último dia, AAAA-MM-DD, inclusivo. Padrão: hoje em America/Sao_Paulo.
Responses
Seção intitulada “Responses”OK
object
Example generated
{}Token ausente, malformado ou vencido.
object
object
Código estável, seguro para comparar.
Texto para pessoa. Pode mudar entre versões — não decida nada a partir dele.
Identificador da ocorrência. Cite-o ao pedir suporte.
Example generated
{ "error": { "code": "example", "message": "example", "trace_id": "example" }}O token é válido, e o escopo não. Ou ele foi emitido para outro cliente, ou o papel não inclui a permissão da rota. NÃO é 404 de propósito: esconder um erro de escopo atrás de ‘não encontrado’ faz quem integra procurar o problema no lugar errado.
object
object
Código estável, seguro para comparar.
Texto para pessoa. Pode mudar entre versões — não decida nada a partir dele.
Identificador da ocorrência. Cite-o ao pedir suporte.
Example generated
{ "error": { "code": "example", "message": "example", "trace_id": "example" }}