Cómo convertir una conversación de WhatsApp en una tarea de WACRM
WACRM Workspace te deja crear una tarea directamente desde una conversación en el Inbox, con fecha límite y asignación disponibles por la API. Este tutorial recorre las pantallas y llamadas reales, y dice con claridad qué partes del puente hacia el sistema Work todavía necesitan pedírselas a WACRM.
Por Huy Nguyen (David), Fundador y CEO de Netbase JSC Actualizado el
En WACRM, una tarea siempre empieza desde una conversación: un cliente pregunta algo que tu equipo necesita seguir, y en vez de anotarlo mentalmente la conviertes en una tarea ahí mismo, en el Inbox. Este tutorial cubre lo que esa pantalla hace hoy en realidad, cómo hacer lo mismo (más la asignación) por la API, y dónde el puente hacia el sistema Work de WACRM todavía necesita pedírselo a WACRM en lugar de activarlo tú mismo.
Qué necesitas antes de empezar
- Una cuenta de WACRM Workspace con al menos un proyecto y al menos una conversación en Conversations → Inbox.
- Solo para los pasos de la API:
curl(o cualquier cliente HTTP que pueda poner un encabezado), y una clave de API desde Developer / API & MCP.
Crea una tarea desde el Inbox
- Abre Conversations → Inbox y selecciona la conversación que quieres seguir.
- En el panel lateral, busca la tarjeta Tasks, debajo de la tarjeta Contact de la conversación (y debajo de las tarjetas Consent y Billing también, cuando aparecen para ese contacto). Empieza vacía, mostrando No tasks yet, hasta que creas la primera.
- Haz clic en Create task. Se abre un cuadro de diálogo que pide un Title (obligatorio) y una Due date (opcional).
- Escribe un título y haz clic en Create task dentro del cuadro de diálogo.
El cuadro se cierra y la tarea nueva aparece de inmediato arriba de la lista — la tarjeta vuelve a cargar justo después de crear algo, así que no hay nada que refrescar a mano. Cada fila muestra el título de la tarea, un chip de estado y cuándo se creó. Una tarea nueva siempre empieza con estado open (chip en color de advertencia); done se muestra en verde, cancelled en gris neutro.
No hay ningún campo de nota o descripción aquí — solo se guardan título y fecha límite, porque eso es todo lo que envía hoy este cuadro de diálogo. Tampoco hay un selector de persona asignada en esta pantalla; la asignación solo es posible por la API, como se ve abajo.
Crea y lista tareas por la API
Todo lo que hace la tarjeta Tasks está respaldado por dos endpoints de la Core API, con alcance por conversación:
POST /v1/conversations/{conversation}/tasks work:write
GET /v1/conversations/{conversation}/tasks work:read work:read/work:write se pueden seleccionar al crear una clave — en Developer / API & MCP, haz clic en
Create key, abre Restrict what this key can do (advanced) y marca work:read/work:write dentro de
WhatsApp CRM scopes (work:write necesita una Secret key). Crear claves y restringir scopes depende de tu
plan — Workspace muestra un aviso de actualización si el tuyo no lo incluye. Una clave creada sin ellos responde
403 insufficient_scope en estas llamadas — es lo esperado, no un error; crea una nueva clave con los scopes
marcados.
Crea una tarea, con asignación
POST .../tasks requiere un encabezado Idempotency-Key, la misma convención que POST /v1/messages: repetir la
misma solicitud con la misma clave reproduce la tarea original en vez de crear una segunda, lo que hace seguro
reintentar después de un timeout.
curl -s -X POST "https://api.wacrm.ai/v1/conversations/your-conversation-uuid/tasks" \
-H "Authorization: Bearer sk_live_your_scoped_key" \
-H "Idempotency-Key: a-key-you-generate-once-per-task" \
-H "Content-Type: application/json" \
-d '{"title": "Llamar por el reembolso", "due_at": "2026-11-10", "assignee_ref": "staff-jane"}' {
"data": {
"id": "0e2b1c9a-...-task-uuid",
"conversation_id": "your-conversation-uuid",
"title": "Llamar por el reembolso",
"due_at": "2026-11-10T00:00:00+00:00",
"assignee_ref": "staff-jane",
"status": "open",
"external_ref": null,
"created_at": "2026-11-06T09:00:00+00:00"
}
} due_at y assignee_ref son opcionales. assignee_ref es un texto libre que define tu propio sistema — WACRM no
lo valida contra ninguna lista de personal, porque Workspace todavía no tiene un concepto propio de asignación de
personal del que esta pantalla pueda tomarlo. external_ref queda en null hasta que el puente Work entregue la
tarea al otro lado.
Lista las tareas de una conversación
curl -s "https://api.wacrm.ai/v1/conversations/your-conversation-uuid/tasks" \
-H "Authorization: Bearer sk_live_your_scoped_key" Es la misma llamada que hace la propia tarjeta Tasks del Inbox, así que la respuesta siempre coincide con lo que verías en pantalla — las más nuevas primero, con los mismos campos que la respuesta de creación de arriba (8 campos cada una).
Mira cómo vuelve el estado de una tarea
Una vez que una tarea llega al lado de Work, un cambio de estado ahí (alguien la marca como hecha, o la cancela)
debería volver a WACRM mediante una llamada firmada, POST /v1/work/callbacks, y actualizar el status de la
tarea a done o cancelled. Desde el Inbox, eso se ve como un cambio de color en el chip de la tarea la próxima vez
que abres la conversación de nuevo — esta tarjeta no hace sondeo en vivo ni vuelve a cargar solo por mirar la misma
conversación otra vez, así que un cambio de estado hecho mientras ya la estás mirando no aparecerá hasta que cambies
a otra conversación y vuelvas.
Dos cosas tienen que ser ciertas del lado de WACRM para que ese viaje de ida y vuelta realmente ocurra, y ninguna la puedes activar tú mismo desde Workspace:
- El puente Work tiene que estar activado. WACRM lo activa para todo el servicio, no por workspace, y hoy está
apagado; un puente desactivado igual guarda tu tarea y encola su entrega, solo que nunca llega al otro lado ni
obtiene un
external_refhasta que WACRM lo active. - El lado de Work tiene que enviar el webhook de estado. Hoy, el
statusde una tarea solo cambia por esa llamada — no hay ningún sondeo de respaldo del lado de WACRM. Si una tarea que creaste parece estancada en open aunque se haya gestionado en otro lado, ese es el límite conocido, no algo que te falte en Workspace.
Qué funciona hoy y qué necesita a WACRM
| Lo que quieres hacer | ¿Funciona hoy? |
|---|---|
| Crear una tarea desde una conversación del Inbox (título + fecha límite) | Sí — Inbox → la tarjeta Tasks de la conversación → Create task |
| Ver que una tarea recién creada aparece en la lista | Sí — la tarjeta vuelve a cargar justo después de crearla |
| Asignar una tarea a un compañero | Solo por la API, con assignee_ref — todavía no hay selector en la tarjeta Tasks |
| Llamar a los endpoints de tareas con tu propia clave de API | Sí — crea una clave con work:write/work:read |
| Que una tarea realmente llegue al sistema Work de WACRM | Todavía no — el puente Work está apagado para todo el servicio; lo activa WACRM, no es un ajuste por workspace |
| Ver que el estado de una tarea se actualiza tras gestionarse del lado de Work | Necesita el puente Work activo (hoy apagado para todo el servicio) y el webhook de estado del lado de Work |
| Marcar una tarea como hecha o cancelada desde Workspace | Todavía no — no hay forma de escribirlo desde la interfaz; el estado solo cambia por la llamada del lado de Work |
¿Listo para ponerlo en práctica? Solicita acceso anticipado para tener un Workspace, o deja que el equipo de WACRM configure tu proyecto con Quick Setup.
Habla con un experto
Huy Nguyen (David), Fundador y CEO
Consulta a David sobre: convierte una conversación de whatsapp en una tarea de wacrm.
Preguntas frecuentes
¿Puedo asignar una tarea a un compañero desde el Inbox?
No desde la tarjeta Tasks en sí — solo pide un título y, opcionalmente, una fecha límite. La API subyacente acepta un campo assignee_ref en la misma llamada de creación, así que la asignación funciona hoy si creas la tarea por la API, pero todavía no hay ningún selector de personal en Workspace para hacerlo desde la pantalla.
¿Por qué el estado de mi tarea no se actualiza solo en el Inbox?
Tienen que cumplirse dos cosas por separado. Primero, el puente Work de WACRM lo activa WACRM para todo el servicio, no por workspace — y hoy está apagado, así que los cambios de estado de ningún workspace llegan todavía a un webhook del lado de Work; no es algo que puedas pedir solo para tu propio workspace. Segundo, incluso una vez que un cambio de estado llega, la tarjeta Tasks solo vuelve a cargar justo después de crear una tarea, no con un temporizador, así que hay que cambiar a otra conversación y volver para ver el chip actualizado.
¿Necesito pedirle algo a WACRM antes de poder crear una tarea desde el Inbox?
No — la tarjeta Tasks en Conversations → Inbox funciona de inmediato para cualquier conversación. Llamar a los endpoints de crear/listar con tu propia clave de API solo necesita una clave creada con los scopes work:write/work:read — márcalos en Restrict what this key can do (advanced) → WhatsApp CRM scopes al crearla. Lo único que todavía requiere pedírselo a WACRM es que la tarea realmente llegue al lado de Work, que necesita que el puente esté activado del lado de WACRM.
¿Qué pasa con una tarea que creo mientras el puente Work está apagado?
No se pierde nada. WACRM siempre guarda la fila de la tarea y encola un evento task.requested en su propio outbox en el mismo paso, esté o no activado el puente. Con el puente apagado, ese evento simplemente queda en cola — tu tarea igual aparece en la tarjeta Tasks del Inbox y por la API, solo que nunca obtiene un external_ref ni una actualización de estado desde el otro lado hasta que WACRM active el puente.
¿Quieres que lo configuremos por ti?
Quick Setup conecta tu número con coexistencia en 48 horas, hecho por una persona.