Referencia de la API

URL base: https://api.analytics.house (o tu propio Worker si alojas el servicio por tu cuenta). Las respuestas son JSON. Los endpoints autenticados necesitan Authorization: Bearer <token> obtenido de /auth/login.

Enviar eventos: POST /collect

Público (sin token). Devuelve 202 de inmediato; los eventos se escriben en segundo plano.

curl -X POST https://api.analytics.house/collect \
  -H 'Content-Type: application/json' \
  -d '{
    "api_key": "YOUR_PROJECT_KEY",
    "events": [
      { "event_name": "pageview", "event_type": "pageview", "path": "/pricing", "session_id": "s1" },
      { "event_name": "signup", "event_type": "custom", "properties": { "plan": "pro" } }
    ]
  }'

Campos del evento: event_name (obligatorio), event_type, path, referrer, session_id, user_id, timestamp (ISO 8601), utm_source, utm_medium, utm_campaign, properties (objeto). Los bots se ignoran. Si superas el límite de frecuencia, recibes 429 con Retry-After. Si el proyecto tiene una lista de sitios web permitidos, las solicitudes de navegador desde cualquier otro sitio reciben 403. Los eventos del mismo visitante separados por 30 minutos como máximo forman una visita, y las etiquetas UTM de la página de entrada se trasladan al resto de la visita. session_id se ignora salvo que el proyecto desactive el modo estricto, y user_id siempre se almacena como hash diario.

Cuenta

Verificación en dos pasos (TOTP)

Proyectos

Consultar datos

Las estadísticas se guardan en caché durante unos 30 segundos. Consulta Privacidad y datos para saber cómo se cuentan los visitantes.

Embudos

Un embudo tiene de 2 a 6 pasos ordenados. Cada paso es { "type": "page", "value": "/pricing" } (termina el valor con * para buscar por prefijo) o { "type": "event", "value": "signup" }. Los pasos se cuentan por sesión (una pestaña del navegador) y en orden.

Enlaces públicos para compartir

Exportación a CSV

Ingresos y profundidad de desplazamiento

Equipo, claves de API de estadísticas, informes, importación

Manifiesto de privacidad y proxy de Worker propio

Atribución de búsquedas con IA, Core Web Vitals, escudo contra bots, anotaciones y webhooks

Preguntas sobre tus datos y errores de JavaScript

Mapas de clics y recorridos

Estado

GET /public/status es público. Se supervisa a sí mismo (una comprobación cada 15 minutos) y no constituye un SLA.