# Seguimiento de eventos

> Registra lo que hacen las personas en tu aplicación y en tu web como eventos de espacio de trabajo o personalizados, vincúlalos a contactos y recíbelos en webhooks.

El seguimiento de eventos te permite registrar lo que hacen las personas en tu propio producto: un pedido, un cambio de plan, un alta, la visualización de un producto. Envías los eventos desde tu web con el script de seguimiento o desde tus servidores con la API. Emailit los guarda junto a los eventos que registra por sí mismo, los vincula a contactos y puede enviarlos a tus webhooks.

El seguimiento de eventos está incluido en los planes Pro, Business y Custom. En Pay as you go, enviar eventos y definir eventos de espacio de trabajo devuelven `403` con `"error": "plan_required"`, y las peticiones del script de seguimiento se rechazan.

## Tres ámbitos de eventos

Cada evento tiene un tipo, y su prefijo indica su **ámbito**:

| Ámbito | Tipo | Quién lo define | Ejemplo |
| --- | --- | --- | --- |
| Sistema | `<name>` | Emailit. Estos eventos registran lo que ocurre con tus emails, tus contactos y otros recursos. No puedes enviarlos. | `email.delivered` |
| Espacio de trabajo | `w:<name>` | Tu espacio de trabajo. Primero declaras el evento y el tipo de cada propiedad, y Emailit rechaza los eventos que no coinciden. | `w:customer.type` |
| Personalizado | `c:<name>` | Nadie. Cualquier nombre, con cualquier objeto JSON como propiedades. | `c:order.completed` |

Usa un **evento de espacio de trabajo** cuando varios sistemas envíen el mismo evento y quieras que se mantenga coherente, o cuando las personas de tu equipo dependan de sus campos. Usa un **evento personalizado** cuando quieras mantener tu propia estructura de datos, por ejemplo el formato de pedido de tu tienda, sin declararla antes. Puedes empezar con un evento personalizado y definirlo más adelante como evento de espacio de trabajo; son dos tipos distintos, así que `c:order.completed` y `w:order.completed` no se mezclan.

## Nombres de los eventos

Los nombres tienen de 1 a 100 letras, dígitos, puntos, guiones o guiones bajos, y empiezan por una letra o un dígito: `customer.type`, `order-completed`, `cart_updated`. Los nombres distinguen entre mayúsculas y minúsculas.

Los nombres de las propiedades de los eventos de espacio de trabajo siguen las mismas reglas, pero sin puntos, porque los filtros de los webhooks y las plantillas usan los puntos para acceder a valores anidados.

## Formas de enviar eventos

| Desde | Cómo | Credenciales |
| --- | --- | --- |
| Tu web | El [script de seguimiento](/es/docs/events/tracking-script/) | Una clave de seguimiento pública, limitada a tus sitios |
| Tus servidores | [Enviar un evento](/es/docs/api-reference/events/send/) o [Enviar eventos por lotes](/es/docs/api-reference/events/batch/) | Una clave de API con **Full Access** o **Events Only**. Consulta [Enviar eventos desde tu backend](/es/docs/events/send-events/). |
| El panel | **Send event** en **Email API → Events** | Tu inicio de sesión. Pensado para probar un webhook o una integración. |

Los eventos relacionados con dinero, como los pedidos y los pagos, es mejor enviarlos desde tus servidores. Los eventos del navegador se pueden bloquear, y cualquiera puede enviar eventos con una clave pública.

## Eventos y contactos

Un evento puede indicar la persona a la que se refiere, con `email` o con `contact_id`.

- Los contactos se buscan, nunca se crean. Si ningún contacto tiene ese email, la dirección se guarda igualmente y el evento aparece en la actividad del contacto en cuanto lo creas.
- Un `contact_id` tiene que pertenecer a un contacto del espacio de trabajo.
- Los eventos sin una persona pueden llevar un `anonymous_id`. El script de seguimiento añade uno a cada evento que envía.

Los eventos vinculados a un contacto aparecen en su **Activity log**, junto a los emails que ha recibido. Los eventos de espacio de trabajo que tienen título muestran allí ese título.

## Adónde van los eventos

- **El registro de eventos.** **Email API → Events** muestra todos los eventos en la pestaña **Log**. Filtra por **Scope** para ver solo los eventos de sistema, de espacio de trabajo o personalizados. Con la API, usa el parámetro `scope` de [Listar eventos](/es/docs/api-reference/events/list/).
- **Webhooks.** Suscribe un webhook a un tipo como `c:order.completed`, o a todos los eventos de espacio de trabajo o personalizados con `w:*` y `c:*`. Un webhook con **All events** activado no los recibe, salvo que también los elijas. Consulta [Tipos de eventos](/es/docs/webhooks/event-types/#workspace-and-custom-events).
- **Contactos.** Consulta [Eventos y contactos](#events-and-contacts).
- **Automatizaciones.** Un [disparador](/es/docs/automations/triggers/#custom-event) **Custom event** inicia una ejecución para el contacto del evento, opcionalmente solo cuando sus propiedades coinciden. Los mismos eventos pueden terminar ejecuciones, cumplir objetivos y reanudar pasos **Wait until**. Solo lo hacen los eventos que envías desde tu servidor con la [API de eventos](/es/docs/events/send-events/): cualquiera que tenga tu clave de seguimiento pública puede identificar a un visitante, así que los eventos del [script de seguimiento](/es/docs/events/tracking-script/#identify-visitors) se registran y llegan a los webhooks, pero no inician, terminan ni hacen avanzar ejecuciones. El disparador **Custom event** está incluido en los planes Business y Custom, y las condiciones de salida, los objetivos y las esperas sobre estos eventos, en los planes Pro, Business y Custom. Consulta [Condiciones de salida y objetivos](/es/docs/automations/exits-and-goals/).

## Retención

Los eventos forman parte de los **Logs** de tu espacio de trabajo, así que se conservan durante el periodo de retención de registros de tu plan y después se eliminan. Consulta [Retención de datos](/es/docs/data-retention/). Guarda en tus propios sistemas los pedidos y otros datos que necesites durante más tiempo.

## Límites

| | Pay as you go | Pro | Business | Custom |
| --- | --- | --- | --- | --- |
| Tipos de eventos de espacio de trabajo y personalizados | — | 100 | 1000 | Ilimitados |
| Script de seguimiento para sitios web | — | Incluido | Incluido | Incluido |

- **Los tipos de eventos** son los distintos tipos de espacio de trabajo y personalizados que envía un espacio de trabajo, como `c:order.completed` y `w:customer.type`. Los tipos que ya ha enviado siguen funcionando. Cuando ha usado el número de tipos de su plan, los eventos de un tipo nuevo se rechazan con `422`.
- Eventos de espacio de trabajo: tantos como tipos de eventos tenga el plan, cada uno con hasta 50 propiedades.
- Propiedades de los eventos personalizados de hasta 32 KB de JSON, con hasta 8 niveles de anidamiento.
- Hasta 100 eventos por petición de lote.
- 25 claves de seguimiento por espacio de trabajo.

Más detalles en [Límites](/es/docs/limits/#other-limits).

## Ver también

  - [Eventos de espacio de trabajo](/es/docs/events/workspace-events/): Define eventos y los tipos de sus propiedades.
  - [Enviar eventos desde tu backend](/es/docs/events/send-events/): Registra eventos con la API.
  - [Script de seguimiento](/es/docs/events/tracking-script/): Envía eventos desde tu web.
  - [API de eventos](/es/docs/api-reference/events/): Envía, lista y obtén eventos.

---
Fuente: https://emailit.com/es/docs/events/
