BitelioBitelio
Concepts

Campañas

Envíos únicos de difusión entregados a la audiencia que elijas

Una campaña es un único envío masivo a una audiencia que tú defines — piensa en newsletters, lanzamientos de producto, anuncios o promociones. Mientras que un flujo de trabajo sigue ejecutándose a lo largo del tiempo, una campaña se dispara exactamente una vez (de inmediato o en un momento programado) y es inmutable después de eso.

Anatomía de una campaña

Todo lo necesario para renderizar y entregar un lote de correos vive en la propia campaña:

Prop

Type

Tras el envío, la campaña guarda contadores desnormalizados — totalRecipients, sentCount, deliveredCount, openedCount, clickedCount, bouncedCount — recuperables mediante GET /campaigns/:id/stats.

Segmentar una audiencia

Hay tres formas de definir a quién llega una campaña:

  • ALL — todos los contactos suscritos del proyecto; la ruta más rápida hacia una difusión a toda la lista.
  • SEGMENT — los miembros actuales de uno de tus segmentos, de modo que se reutiliza la lógica de segmentación existente.
  • FILTERED — una condición en línea escrita directamente en la campaña (misma estructura JSON que los filtros de segmento). Ideal cuando quieres una audiencia a medida para un único envío y no necesitas guardar un segmento.

Las campañas de tipo MARKETING o HEADLESS excluyen automáticamente a quien se haya dado de baja. Una campaña TRANSACTIONAL, en cambio, llega a todo contacto que coincida, esté suscrito o no — resérvala para contenido genuinamente transaccional, y úsala poco.

Verificación del dominio remitente

Bitelio solo acepta una dirección from cuyo dominio haya sido verificado para el envío; de lo contrario, crear o actualizar la campaña falla con 403. Consulta Verificación de dominios.

Ciclo de vida

EstadoSignificado
DRAFTExiste pero aún no se ha programado ni enviado; todavía editable.
SCHEDULEDEn cola para un scheduledFor futuro; aún se puede cancelar.
SENDINGEntrega en curso — se está recorriendo la cola de destinatarios.
SENTEntrega finalizada; las estadísticas ya no cambiarán.
CANCELLEDDetenida antes de terminar. Un estado terminal alcanzable desde DRAFT, SCHEDULED o SENDING.

Una campaña en SENT o CANCELLED no puede editarse ni volver a enviarse. Para iterar sobre ella, llama a POST /campaigns/:id/duplicate y trabaja sobre la copia resultante.

Envío y programación

POST /campaigns/:id/send inicia la entrega. El envío corre de forma asíncrona en segundo plano — las listas pequeñas terminan en segundos, mientras que las audiencias muy grandes tardan más. La página de detalle de la campaña en el panel muestra el progreso en vivo.

Una campaña SCHEDULED o SENDING puede detenerse con POST /campaigns/:id/cancel. Ten en cuenta que cancelar solo evita los envíos futuros; cualquier correo ya aceptado por el servidor de correo del destinatario está fuera de alcance.

Envíos de prueba

POST /campaigns/:id/test entrega un único correo de vista previa. El body toma una sola dirección — { email: "you@example.com" } — no una lista. Las variables se resuelven exactamente como en el envío real, pero la entrega va a la dirección que indicaste, lo que convierte los envíos de prueba en una forma cómoda de comprobar la personalización usando tu propio registro de contacto.

Duplicar

Llamar a POST /campaigns/:id/duplicate produce un DRAFT nuevo que copia el contenido, la audiencia y la configuración del original. Útil para variantes A/B o campañas que envías de forma recurrente.

Referencia de la API

La lista completa de endpoints de campañas — listar, obtener, crear, actualizar, eliminar, enviar, cancelar, duplicar, probar y estadísticas — está en el resumen de la API.

Qué sigue