Eventos del navegador (POST /ct)
Los eventos del navegador los envía el SDK automáticamente, o tú a mano con scanova('track', ...). Representan acciones que ocurren en el navegador del visitante.
Campos que puedes enviar
Campos del objeto
device:
Ejemplo de contenido de un evento del navegador
Eventos de servidor (POST /server-events)
Los eventos de servidor se envían desde tu backend con una clave de API. Representan acciones que ocurren en tu servidor, como compras completadas, registros confirmados o leads creados en tu CRM.
Campos que puedes enviar
Campos del objeto
user_identifiers (todos con hash):
Ejemplo de contenido de un evento de servidor
Convenciones para nombrar eventos
Usa nombres coherentes y descriptivos ensnake_case. Un esquema claro hace que los informes se lean mejor.
Idempotencia
Tanto los eventos del navegador como los de servidor admiten un campoevent_id para la deduplicación:
- Si el mismo
event_idllega más de una vez, el duplicado se guarda pero se marca conis_duplicate = 1 - Los duplicados quedan fuera de las vistas analíticas de forma automática
- Reutiliza siempre el mismo
event_idal reintentar un evento de servidor fallido
Privacidad y RGPD
- Nunca envíes direcciones de correo en texto plano en
metadatani enproperties. Usauser_identifierscon valores con hash. - El campo
consentcontrola el tratamiento de los datos personales en el sistema:granted: todos los campos se guardan con normalidaddeniedopending:page_url,referrer,cityymetadatase eliminan antes de guardar- El propio valor de
consentse guarda siempre como registro de auditoría
Enviar el consentimiento desde el navegador
El SDK del navegador no trae una API de consentimiento integrada. Lo recomendable es cargar el SDK solo si procede, según lo que decida tu plataforma de gestión del consentimiento:Enviar el consentimiento desde el servidor
En los eventos de servidor, envía el valor deconsent directamente en el contenido de cada petición, junto al resto de campos.