Skip to main content
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.
El paquete 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.
Es un SDK de servidor. La clave secreta de compañía otorga acceso completo de gestion, asi que debe vivir solo en tu backend. Nunca la incluyas en un cliente que no controles. Para capturar feedback desde una app móvil usa el SDK de React Native, que usa una clave pública de captura.

Instalación

Requiere Python 3.9 o superior. El SDK trae py.typed, asi que los type checkers reconocen sus tipos sin configuración extra.

Inicialización

Crea una instancia de Woku una sola vez y reutilízala.
Si omites 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:
En el cliente asíncrono se recorre con async for.

Idempotencia

Los create incluyen automáticamente una Idempotency-Key, asi que un reintento tras un fallo transitorio nunca crea dos veces. Las acciones (enviar, probar, responder) no se reintentan solas. Puedes pasar tu propia clave por llamada con el argumento options.

Manejo de errores

Cada fallo es un WokuError. Los errores HTTP son subclases tipadas que llevan el status, el cuerpo y el request_id del servidor:
Los fallos de transporte (DNS, TLS, timeout) son 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 argumento options:

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 datos (/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

El SDK sigue versionado semántico (MAJOR.MINOR.PATCH). La versión actual publicada es la 0.1.0. Te recomendamos fijar un rango compatible (por ejemplo >=0.1,<0.2) y revisar el changelog antes de subir de versión MAJOR. Las versiones y sus notas están en PyPI y en los releases de GitHub.

Recursos