Disponible en todos los planes, incluido el gratuito. La API v1 y los SDK oficiales están habilitados para toda cuenta de woku. Conoce los planes.
woku es el cliente oficial de servidor para la API de
gestion de woku en Python. Con un cliente síncrono (Woku) y su gemelo
asíncrono (AsyncWoku) sobre httpx administras trackers externos,
herramientas VoC (NPS, CSAT, CES), wokus, formularios, flows,
planes de accion, tickets de soporte, envios de encuestas y seguimiento de
entrega, todo sobre la API pública v1. Es la contraparte del
SDK de JavaScript, con la misma superficie.
Instalación
py.typed, asi que los type
checkers reconocen sus tipos sin configuración extra.
Inicialización
Crea una instancia deWoku una sola vez y reutilízala.
api_key, el SDK lee la variable de entorno WOKU_API_KEY.
Los cuerpos de solicitud aceptan un diccionario simple (como en los ejemplos) o
un modelo Pydantic generado desde
woku._generated.models.
Autenticación
El SDK autentica con la Clave de Compañía, la misma clave secreta que usa la API. La obtiene el propietario de la empresa desde la sección Información de la empresa en la aplicación administrativa: admin.woku.app.Rotar o revocar la clave
Rotar genera una clave nueva e invalida de inmediato la anterior; guarda la que devuelve antes de continuar.Quickstart
Un flujo completo: crear un tracker, crear una herramienta NPS, enviarla y leer la tasa de respuesta.Cliente asíncrono
AsyncWoku expone los mismos recursos con métodos await e iteración con
async for. Úsalo como context manager para cerrar el pool de conexiones.
Flujos principales
Tickets de soporte
Los tickets los genera la IA de woku. Puedes listarlos, filtrarlos y curarlos.Planes de acción
Aprueba y gestiona los planes de acción dentro de woku: cambia su estado y administra sus tareas.Paginación
Los métodos de listado devuelven una página iterable. Recorre cada elemento a través de las páginas, o página por página:async for.
Idempotencia
Los GET y las escrituras protegidas se reintentan con la misma clave: crear trackers o herramientas NPS/CSAT/CES, enviar invitaciones de los cinco tipos, y crear, inscribir, detener, generar URL o emitir eventos de Viajes. Las otras escrituras, los uploads y la rotación de secretos se intentan una sola vez. Una clave por sí sola no agrega idempotencia a un endpoint sin soporte. La deduplicación dura 24 horas. Un resultado incierto conserva su registro; verifica el resultado antes de cambiar de clave o repetir fuera de ese plazo.Manejo de errores
Cada fallo es unWokuError. Los errores HTTP son subclases tipadas que llevan
el status, el cuerpo y el request_id del servidor:
WokuConnectionError y
WokuTimeoutError. El SDK reintenta automáticamente los GET y las escrituras
idempotentes con backoff y respeto del header Retry-After.
Configuración por llamada
Cada método acepta overrides en el argumentooptions:
Referencia
Referencia completa de namespaces y métodos. Para las formas exactas de request y response, consulta el API reference.action_plans
Lee y gestiona planes de acción, incluido el kanban gestionado (tareas, conversación IA y transiciones de estado).action_plan_groups
Gestiona los grupos de planes de acción (listar, obtener con stats, crear, actualizar, habilitar/deshabilitar y eliminar).company
Gestiona la empresa que hace la llamada y su clave de API en /v1/companies/me.dispatches
Seguimiento de entrega sobre los envios de invitaciones (/v1/dispatches).flows
Acceso de solo lectura a los flujos de encuestas (/v1/flows).forms
Lee formularios y sus respuestas, y envia invitaciones de formulario (/v1/forms).quarantines
Verifica si un contacto esta en cuarentena (/v1/quarantines).reports
Lee reportes NPS (/v1/reports): a nivel empresa y por herramienta NPS.nps
Envia la encuesta NPS y lee sus respuestas (/v1/nps).csat
Envia la encuesta CSAT y lee sus respuestas (/v1/csat).ces
Envia la encuesta CES y lee sus respuestas (/v1/ces).tickets
Lee y cura los tickets de soporte generados por IA (/v1/tickets).ticket_destinations
Gestiona los destinos de tickets SAC (/v1/ticket-destinations).trackers
Gestiona definiciones de tracker externas y asigna/quita valores de tracker en wokus y entidades VoC (/v1/external-trackers).nps_tools
Gestiona las definiciones de herramientas NPS (/v1/nps-tools).csat_tools
Gestiona las definiciones de herramientas CSAT (/v1/csat-tools).ces_tools
Gestiona las definiciones de herramientas CES (/v1/ces-tools).wokus
Gestiona los wokus (herramientas de captura) (/v1/wokus): reseñas, settings, mover de carpeta, invitaciones y compartir.Recursos
trackers, nps_tools / csat_tools / ces_tools, nps / csat / ces,
wokus, forms, flows, action_plans, action_plan_groups, tickets,
ticket_destinations, dispatches, reports, company, quarantines.
Versionado
Estas mejoras se preparan para el próximo release. Consulta el changelog del paquete npm/PyPI para conocer la versión publicada antes de usar los métodos nuevos.Recursos
- Paquete PyPI: woku
- Código y ejemplos: github.com/wokuApp/woku-python
- SDK de JavaScript equivalente: SDK de JavaScript
- Referencia de la API: Guía de Integración API
Viajes y media local
El SDK de servidor expone las 17 operaciones de Viajes y un iterador de evaluaciones. Los uploads usan multipart y una respuesta generada del OpenAPI; 413 producePayloadTooLargeError. La clave de compañía permanece en tu backend.
AsyncWoku también admite await media.upload y async for con
journeys.iter_enrollments. El caller es responsable de cerrar el archivo.
journeys
Cada método también acepta opciones por llamada como último argumento.
Los listados de evaluaciones devuelven
{ items, nextCursor }, con un límite máximo de 100 y default de 20. El endpoint separado de la tabla de Admin usa páginas de hasta 50.
iter_enrollments(id, params, options) recorre las páginas por cursor bajo demanda.