Campaña
La unidad que se activa, se pausa y se termina — y qué devuelve la API en cada estado
Una campaña es la corrida completa: nombre, objetivo de negocio, ventana de tiempo y recompensa. Es la unidad que se activa, se pausa y se termina.
Se arma íntegramente en el Control Center de UIN. Tu equipo no desarrolla nada de esto — pero conviene conocer las piezas, porque son las que aparecen en el feed y las que definen qué eventos tenés que emitir.
Qué contiene
| Pieza | Qué es |
|---|---|
| Experiencia | La mecánica que se vive dentro de la campaña: hito, reto, racha o rutina. Define cómo se acumula y cuándo se paga. Ver Experiencia. |
| Misión | La regla concreta: cuántas veces —o por cuánto monto— hay que hacer algo. Puede tener condiciones, como un monto mínimo por operación. |
| Evento | La acción del usuario que la misión escucha. Es lo único que emite el sistema de tu organización. Ver Misión y evento. |
| Audiencia | A quiénes les llega. Ver Audiencia. |
| Recompensa | Qué se entrega al completarse: puntos, o un producto con su código. Ver Recompensa. |
Estados y qué devuelve la API
En preparación → Activa → Pausada → Finalizada| Estado | Qué devuelve la API | Qué mostrar |
|---|---|---|
| En preparación | El feed no devuelve nada de esta campaña; los eventos responden 200 vacío. | Nada. |
| Activa | Los usuarios reciben sus misiones y los eventos suman progreso. | La experiencia normal. |
| Pausada | Las misiones ya asignadas siguen activas en el feed y el progreso sigue sumando. No entran usuarios nuevos. | Nada especial: la experiencia continúa igual. |
| Finalizada | Las misiones sin completar salen del feed; en la vista plana quedan como EXPIRED. | Sacalas de la pantalla principal. Si tenés historial, mostralas como finalizadas. |
Las recompensas ya entregadas no se tocan cuando la campaña se pausa o se termina, y el historial de recompensas del usuario se mantiene intacto.
Nunca muestres una misión que ya no está en el feed. Si tu app cachea la lista, invalidá el caché al abrir la sección: una misión vencida que sigue en pantalla genera un reclamo de soporte que no tiene respuesta posible.
Si el usuario sale de la audiencia
Deja de recibir misiones nuevas de esa campaña. Las que ya tenía siguen su curso. Si no le queda nada activo, el feed devuelve 200 con lista vacía — que es un estado vacío, no un error.
En la API
El campaignId viene en cada ítem del feed. Lo vas a necesitar si tu UX incluye un botón de reclamo explícito de la recompensa — ver Progreso y recompensas.
