Registra um pageview. Chamado automaticamente pelo script i.js quando uma página carrega. Para SPAs, dispare manualmente após cada mudança de rota.
POST /api/pageview
Registra um pageview anônimo.
Parâmetros CAMPO TIPO OBRIG. DESCRIÇÃO siteId string Sim ID do site cadastrado url string Sim URL completa da página path string Sim Caminho (ex: /produtos/camiseta) title string Não Título da página referrer string Não URL de origem visitorId string Não ID do visitante (opcional, gerado pelo servidor se omitido) sessionId string Não ID da sessão userId string Não ID do user logado (use mytrics.identify() no front)
Resposta 201 Sucesso — Pageview registrado. Retorna visitorId e sessionId (úteis para instrumentar outros eventos).
{
"success" : true ,
"id" : "pv_abc123def" ,
"visitorId" : "visitor_xyz789" ,
"sessionId" : "session_abc456"
} Registra um evento customizado (conversão, interação, etc). Aceita metadata arbitrária em formato JSON.
POST /api/event
Registra um evento customizado.
Parâmetros CAMPO TIPO OBRIG. DESCRIÇÃO siteId string Sim ID do site eventName string Sim Nome do evento (snake_case) path string Não Path onde o evento ocorreu metadata object Não Propriedades arbitrárias. Sem PII. value number Não Valor monetário (em reais, não centavos) visitorId string Não ID do visitante (opcional)
// Exemplo de chamada via curl
curl -X POST https://analytics.mytrics.com.br/api/event \
-H "Content-Type: application/json" \
-d '{
"siteId" : "site_abc123" ,
"eventName" : "finalizou_compra" ,
"path" : "/checkout/success" ,
"metadata" : {
"plano" : "Pro" ,
"cupom" : "LAUNCH30"
},
"value" : 99.90
}' Registra um erro JavaScript capturado no browser ou server-side. Use para erros try/catch ou exceptions de bibliotecas.
POST /api/error
Registra um erro.
Parâmetros CAMPO TIPO OBRIG. DESCRIÇÃO siteId string Sim ID do site name string Não Nome do erro (ex: "TypeError") message string Sim Mensagem do erro stack string Não Stack trace file string Não Arquivo onde o erro ocorreu line number Não Linha severity = medium string Não "low" | "medium" | "high" | "critical" type = javascript string Não "javascript" | "promise" | "network" | "api" | ... browser string Não Detectado automaticamente os string Não Detectado automaticamente path string Não Path da página
Alertas por e-mail Erros com severity "high" ou "critical" disparam um e-mail automaticamente (cooldown 30 min por assinatura).
Registra métricas de Web Vitals (LCP, INP, CLS). Chamado automaticamente pelo script em modo "full".
POST /api/performance
Registra Web Vitals.
Parâmetros CAMPO TIPO OBRIG. DESCRIÇÃO siteId string Sim ID do site path string Não Path da página loadTime number Sim LCP em ms interactionTime number Não INP em ms layoutStability number Não CLS score
{
"success" : true ,
"id" : "perf_xyz789" ,
"score" : 87 ,
"rating" : "good"
} Heartbeat de sessão. Disparado a cada 30s pelo script para indicar que o usuário ainda está ativo. Usado para contar "online agora".
POST /api/ping
Heartbeat de sessão.
Parâmetros CAMPO TIPO OBRIG. DESCRIÇÃO siteId string Sim ID do site visitorId string Sim ID do visitante sessionId string Sim ID da sessão
{ "success" : true , "onlineNow" : 12 } CORS CORS e domínios permitidos Todos os endpoints /api/track aceitam requests de qualquer origem (CORS *). Validação adicional é feita no servidor via Origin/Referer (CSRF protection) e assinatura do siteId.
Rate limit Aplicado por IP e por siteId. Limite generoso por padrão (300 req/10min), mas o sistema retorna 429 com header Retry-After se excedido.