Skip to main content
Una carpeta agrupa wokus y herramientas NPS, CSAT y CES en un mismo árbol. Puedes anidar carpetas dentro de carpetas, mover cualquier herramienta entre ellas y mirar una carpeta completa como una sola unidad: sus cifras, su reporte y un CSV con todas sus respuestas. Esta guía cubre cómo lo haces desde la API v1, los SDK oficiales y el servidor MCP. Los tres usan el mismo modelo.

Cómo funciona

  • Una carpeta tiene un nombre, un color opcional y, si está anidada, una carpeta padre. La raíz es el nivel sin carpeta.
  • Cada herramienta (woku, NPS, CSAT o CES) vive en una sola carpeta o en la raíz. Las herramientas existentes siguen en la raíz hasta que las muevas.
  • Al eliminar una carpeta no se elimina nada de lo que contiene: sus subcarpetas, wokus y herramientas suben a la carpeta padre (o a la raíz).
  • Mover es siempre reversible y no cambia las respuestas ni los enlaces públicos de una herramienta.
Los cuatro tipos usan escalas distintas (estrellas de 1 a 5, NPS de 0 a 10, CSAT y CES de 1 a 5), por eso woku nunca los promedia entre sí. Cada tipo muestra su cifra principal en su escala nativa.

En la aplicación

En woku, la vista Herramientas muestra el mismo árbol: carpetas arriba y, debajo, wokus y herramientas NPS, CSAT y CES con su cifra principal. Se puede ver en Rejilla o en Lista, filtrar por tipo y buscar en toda la empresa (también por trackers, ver más abajo). Puedes crear carpetas con color, arrastrar herramientas a una carpeta o usar Mover a…, y cada carpeta tiene su menú para editarla, eliminarla, configurar sus alertas y su acceso por WhatsApp, y abrir su reporte. El reporte de una carpeta tiene dos pestañas:
  • Análisis de texto (la principal): el análisis con IA de todos los comentarios de la carpeta y sus subcarpetas, con la misma forma que el reporte de un woku (reconocimientos, oportunidades de mejora, nube de palabras y resumen). Mientras se genera, una barra de avance muestra que el reporte sigue en camino.
  • Métricas por herramienta: cuatro tarjetas (una por tipo, cada una en su escala) con el cambio frente al periodo anterior, la evolución del resultado en el tiempo, la distribución de notas, de dónde vienen las respuestas y las herramientas que conviene atender primero. Se puede ver el historial completo o los últimos 7, 30 o 90 días.
Todo lo que ves en la aplicación está disponible también por API, SDK y MCP, salvo el acceso por WhatsApp de una carpeta, que por ahora se configura solo desde la aplicación.

Carpetas

Usa /v1/folders para administrar el árbol. Cada carpeta incluye su ruta (path, por ejemplo Posventa > Entrega) y las estadísticas de su subárbol: cuántas herramientas hay de cada tipo, cuántas subcarpetas y cuántas reseñas.
Para anidar una carpeta, envía parentFolderId. Para mover una carpeta a la raíz, usa PATCH /v1/folders/:id/move con { "parentFolderId": null }. Una carpeta no puede moverse dentro de sí misma ni de una de sus subcarpetas.

Crear una herramienta dentro de una carpeta

Las creaciones de NPS, CSAT y CES aceptan folderId (los wokus siguen usando su propio flujo de creación y se mueven con PATCH /v1/wokus/:id/move). La carpeta debe ser de tu empresa; si no, la respuesta es 404.
Para mover una herramienta que ya existe: PATCH /v1/nps-tools/:id/move, PATCH /v1/csat-tools/:id/move o PATCH /v1/ces-tools/:id/move, con { "folderId": "<id>" } o { "folderId": null } para la raíz. Todas las herramientas devuelven su folderId (null en la raíz).

Buscar y listar herramientas

GET /v1/tools devuelve en una sola lista las carpetas y las herramientas de todos los tipos, paginadas por cursor. La respuesta trae folders, foldersNextCursor, tools, nextCursor y facets (cuántas herramientas hay de cada tipo con los filtros aplicados). Cada herramienta incluye type, name, folderId, reviewCount, lastResponseAt y su cifra principal en escala nativa (headline).

Cifras por tipo

GET /v1/tools/stats entrega, para toda la empresa o para una carpeta y sus subcarpetas (folderId), las reseñas y la cifra principal de cada tipo, opcionalmente dentro de un periodo (from, to): Un tipo sin respuestas devuelve null como cifra. Si un tipo falla al calcularse, informa { "error": true } y los demás siguen siendo válidos.

Métricas por herramienta de una carpeta

GET /v1/folders/:id/metrics entrega, para una carpeta y sus subcarpetas, las cifras de cada herramienta (woku, NPS, CSAT y CES) en un periodo, comparadas con el periodo anterior de la misma duración. La respuesta trae:
  • tools: una fila por herramienta con type, id, name, totalResponses, lastResponseAt y dos ventanas, current y previous, cada una con count, headline (la cifra en su escala nativa), positive y negative (porcentaje de respuestas positivas y negativas: 4 y 5 o 1 y 2, o promotores y detractores en NPS) y los conteos crudos positiveCount, negativeCount y scoreSum para combinar herramientas sin error de redondeo.
  • daily: las sumas diarias (en UTC) de ambos periodos por tipo (count, scoreSum y los conteos positive y negative), para dibujar una tendencia con cualquier agrupación. Las ventanas son días calendario UTC que terminan hoy, así que sumar daily del periodo da current.count.
  • distribution: cuántas respuestas hubo por nota en el periodo. En NPS la posición 0 es la nota 0 (11 posiciones); en el resto la posición 0 es la nota 1 (5 posiciones).
Las escalas nunca se mezclan entre tipos. Una herramienta sin respuestas devuelve null como cifra. En el MCP, get_folder_tools_metrics devuelve toolCount y las herramientas con más respuestas (limit, 50 por defecto), y las sumas diarias solo con includeDaily.

Mover en lote

POST /v1/tools/move mueve hasta 200 elementos de tipos mezclados en una sola llamada. Es idempotente: mover elementos adonde ya están funciona sin error. Si falta un elemento o la carpeta de destino, no se mueve nada.
Usa "folderId": null para enviar los elementos a la raíz.

Reporte, PDF y CSV de una carpeta

  • GET /v1/folders/:id/report genera (y guarda) un reporte con IA sobre todas las herramientas de la carpeta y sus subcarpetas: reconocimientos, oportunidades de mejora, nube de palabras y resumen. Cada cita conserva el contexto de su herramienta. Como las escalas son distintas, el reporte no incluye una distribución de puntajes. Un reporte ya generado se reutiliza mientras no cambie la cantidad de reseñas; usa regenerate=true para forzar uno nuevo y lang=es o lang=en para el idioma. Una carpeta sin herramientas, o con menos de dos respuestas con comentario, devuelve un reporte vacío, no un error.
  • GET /v1/folders/:id/pdf descarga el reporte en un archivo PDF (lang=es o lang=en), con un desglose por tipo de herramienta (cantidad, respuestas y cifra principal en su escala nativa). No incluye distribución de puntajes. Es un archivo binario: está en la API y los SDK, y no en el servidor MCP.
  • GET /v1/folders/:id/csv descarga un archivo CSV con una fila por respuesta de todas las herramientas de la carpeta y sus subcarpetas: carpeta y ruta, tipo y nombre de la herramienta, puntaje con su escala, comentario, tipo de comentario (texto o audio), clasificación (reconocimiento o mejora), correo del cliente, canal y fecha. Un cliente que ya no existe deja la celda vacía, y una respuesta anónima aparece como Anónimo.

Alertas de WhatsApp por carpeta

Una carpeta puede avisar por WhatsApp cuando llega un comentario clasificado como oportunidad de mejora en cualquiera de sus herramientas: wokus, NPS, CSAT o CES. Los destinatarios son los números configurados en la carpeta.
  • whatsappAlertRecipients reemplaza la lista anterior (máximo 10); envía [] para quitar todos los números. El número va en formato E.164 sin el +.
  • Cada número puede llevar sources (woku, nps, csat, ces): los tipos de comentario que lo avisan. Si no lo envías, avisa por los cuatro. Los números que ya existían antes de esta función siguen recibiendo solo alertas de wokus.
  • Un número de una carpeta también recibe los avisos de las herramientas de sus subcarpetas, una sola vez aunque esté en varias.
  • Cada carpeta devuelve la lista en whatsappAlertRecipients.
  • Para que un viaje que crea una herramienta por pedido no sature a nadie, cada número recibe como máximo 5 avisos de herramientas por hora; los siguientes se descartan.
  • El aviso se envía una sola vez por respuesta y cuenta como una notificación de WhatsApp de tu plan. Incluye la empresa, la herramienta con su carpeta, el cliente, el comentario y el puntaje en su escala.
  • En el MCP, update_folder acepta el mismo campo.

Viajes en carpetas

Cada viaje del cliente crea sus propias herramientas CSAT, CES y NPS, y miles de ellas si el viaje crea una por pedido. Para que no queden sueltas en la raíz, woku puede ordenarlas solas en el árbol Viajes > viaje > momento.
  • La organización es opcional por empresa. Se activa una vez y desde entonces las herramientas nuevas de cada momento se ubican en la carpeta de su momento.
  • Al activarla, una pasada única en segundo plano mueve las herramientas de los viajes existentes que aún no tienen carpeta. Es repetible sin efectos: no toca lo que ya tiene carpeta y una segunda corrida no cambia nada.
  • Si mueves una herramienta a otra carpeta, no vuelve sola a su sitio. Mover o renombrar las carpetas del árbol nunca rompe un viaje: el siguiente caso sigue creando su herramienta en la carpeta de su momento, donde esté ahora.
  • Las integraciones ordenan sus propias carpetas de la misma manera (por ejemplo, Shopify y Pancake).
El estado incluye enabled, enabledAt, organizedAt, organizing y pending (viajes y herramientas que siguen sin carpeta). Consúltalo de vez en cuando mientras organizing sea true.
GET /v1/journeys y GET /v1/journeys/:id devuelven folderId (la carpeta del viaje) y momentFolders (la carpeta de cada momento, por su clave). Antes de organizar, folderId es null y momentFolders es {}. Las carpetas que crea woku (la raíz Viajes, cada viaje, cada momento y las de integraciones) informan su origin en GET /v1/folders y GET /v1/tools: journeys-root, journey, journey-moment o integration. Las carpetas de integraciones informan además integrationProvider (por ejemplo shopify o pancake). Tus propias carpetas tienen origin: null.
En el servidor MCP, get_journey_folders_status y organize_journey_folders hacen lo mismo, y get_journey y list_journeys incluyen folderId y momentFolders.

SDK y MCP

Referencia completa en SDK de JavaScript y SDK de Python. En el servidor MCP, un agente cuenta con search_voc_tools (con trackers), get_voc_tools_stats, get_folder_tools_metrics, move_voc_tools, create_folder, update_folder, move_folder y delete_folder. get_folder_report acepta scope: "all" para el reporte mixto y format: "csv" para las respuestas, y create_nps_tool, create_csat_tool y create_ces_tool aceptan folderId. El playbook organize_listening de woku_guide guía el proceso. Consulta Herramientas del MCP.