> ## Documentation Index
> Fetch the complete documentation index at: https://woku.app/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Enviar la encuesta NPS por correo o WhatsApp

> Envia la encuesta NPS (a nivel de empresa, o especifica de una herramienta mediante `npsToolId`) a una lista de destinatarios. La respuesta reporta la aceptacion por destinatario: las personas encuestadas en cuarentena y los destinatarios bloqueados por creditos de WhatsApp o por politica de notificaciones se listan en `rejected` en lugar de hacer fallar la solicitud. Los envios por WhatsApp consumen un credito de WhatsApp por destinatario.



## OpenAPI

````yaml /openapi-v1.es.json post /v1/nps/invitations
openapi: 3.0.3
info:
  title: Woku Client API v1
  description: >-
    API publica de Woku Client. Cambia el selector de version en la parte
    superior para ver la referencia v0.


    Esta especificacion cubre:

    - **Wokus**, crear wokus, obtener datos de reseñas, enviar reseñas de
    texto/voz, compartir por correo.

    - **Empresas**, `GET /companies/me` devuelve la empresa que hace la llamada.

    - **Reportes**, reportes NPS a nivel de empresa y por herramienta.

    - **Trackers externos**, etiqueta tus Wokus con identificadores de sistemas
    de terceros (id de transaccion de CRM, id de orden de ERP, etc.) y buscalos
    despues.

    - **Destinos de tickets**, configura las plataformas de SAC (Zendesk,
    Salesforce, Slack), un servicio HTTP personalizado o direcciones de correo
    que reciben tickets de soporte clasificados por IA, y las condiciones de
    tracker que enrutan un ticket a uno de ellos.

    - **Grupos de planes de accion**, define que feedback de VoC (condiciones de
    tracker) redacta un plan de mejora y quien es el responsable.

    - **Planes de accion**, lee planes redactados por IA y gestiona su ciclo de
    vida (aprobar, enviar a una herramienta externa o trabajarlos en el kanban
    gestionado de woku).


    ## Autenticacion


    Todos los endpoints requieren un token Bearer en el encabezado
    `Authorization`. Obten la clave de API de tu empresa desde el panel de Woku.


    ```

    Authorization: Bearer your_api_key_here

    ```


    ## URL base


    Produccion: `https://clientapi.woku.app`


    ## Modelo (Trackers externos)


    - **Definicion de tracker** (`ExternalTracker`): una entrada del catalogo
    por empresa como `{ name: 'trr', system: 'crm interno', description: '...'
    }`. La define un administrador en el panel de Woku.

    - **Valor de tracker** (`WokuExternalTrackerValue`): un valor de tipo cadena
    asociado a un par (Woku, Tracker). Varios Wokus pueden compartir el mismo
    valor.


    ## Modelo (enrutamiento / condiciones de grupo)


    `TicketRoutingCondition` (Destinos de tickets) y `ActionPlanGroupCondition`
    (Grupos de planes de accion) comparten la misma forma: una expresion
    booleana de filas sobre valores de `ExternalTracker`, con AND ligando mas
    fuerte que OR. Cada fila coincide cuando el feedback lleva `trackerId` con
    un valor que, para el operador `equals`, es igual a `value`, o, para el
    operador `any`, es cualquier valor (el tracker completo; en ese caso `value`
    se omite). `relationToPrevious` une una fila con la anterior (`AND` mismo
    grupo, `OR` inicia un grupo nuevo); la primera fila lo omite.
  version: 1.0.0
  contact:
    name: Woku Support
    url: https://woku.app
    email: team@woku.app
servers:
  - url: https://clientapi.woku.app
    description: Servidor de produccion
security: []
tags:
  - name: Wokus
    description: >-
      Crear wokus, obtener datos de reseñas, enviar reseñas de texto y voz,
      compartir enlaces de reseñas por correo.
  - name: Empresas
    description: Endpoint de la empresa que hace la llamada.
  - name: Reportes
    description: >-
      Reportes NPS para la empresa que hace la llamada y herramientas NPS
      individuales.
  - name: NPS
    description: >-
      Captura calificaciones NPS (a nivel de empresa o por herramienta NPS) y
      obten las definiciones de herramientas NPS.
  - name: CSAT
    description: >-
      Captura calificaciones CSAT (satisfaccion 1-5) a nivel de empresa o por
      herramienta CSAT, obten definiciones de herramientas y respuestas, y envia
      feedback de texto y voz.
  - name: CES
    description: >-
      Captura calificaciones CES (esfuerzo) a nivel de empresa o por herramienta
      CES, obten definiciones de herramientas y respuestas, y envia feedback de
      texto y voz.
  - name: Trackers externos
    description: >-
      Etiqueta Wokus con identificadores de sistemas externos y buscalos por
      nombre + valor.
  - name: Cuarentenas
    description: >-
      Verifica si un encuestado esta actualmente en cuarentena antes de
      solicitarle feedback.
  - name: Invitaciones
    description: >-
      Distribucion de encuestas: envia encuestas NPS, forms e invitaciones de
      reseña de woku por correo o WhatsApp.
  - name: Forms
    description: Obten definiciones de forms y envia respuestas desde tu propia interfaz.
  - name: Flows
    description: >-
      Renderiza recorridos de Flow (wokus ordenados con un NPS opcional) en tu
      propia app.
  - name: Capturas
    description: Ingesta de capturas del SDK movil
  - name: Destinos de tickets
    description: >-
      Configura donde se entregan los tickets de soporte clasificados por IA
      (Zendesk, Salesforce, Slack, un servicio HTTP personalizado o correo
      simple) y el enrutamiento basado en trackers que elige un destino.
  - name: Grupos de planes de acción
    description: >-
      Define que feedback de VoC (condiciones de tracker) redacta un plan de
      accion y quienes son los responsables.
  - name: Planes de acción
    description: >-
      Lee planes de mejora redactados por IA y gestiona su ciclo de vida:
      aprobar, enviar a Jira/monday.com/ClickUp/Notion o trabajarlos dentro del
      kanban gestionado de woku.
paths:
  /v1/nps/invitations:
    post:
      tags:
        - Invitaciones
      summary: Enviar la encuesta NPS por correo o WhatsApp
      description: >-
        Envia la encuesta NPS (a nivel de empresa, o especifica de una
        herramienta mediante `npsToolId`) a una lista de destinatarios. La
        respuesta reporta la aceptacion por destinatario: las personas
        encuestadas en cuarentena y los destinatarios bloqueados por creditos de
        WhatsApp o por politica de notificaciones se listan en `rejected` en
        lugar de hacer fallar la solicitud. Los envios por WhatsApp consumen un
        credito de WhatsApp por destinatario.
      operationId: v1SendNpsInvitations
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/V1NpsInvitationsRequest'
      responses:
        '202':
          description: Resumen de envio por destinatario. Los envios son asincronos.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V1InvitationsResult'
        '400':
          description: Error de validacion
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
        '403':
          description: >-
            Clave de API invalida o ausente, o el recurso no pertenece a la
            empresa que hace la llamada
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ForbiddenError'
      security:
        - BearerAuth: []
components:
  schemas:
    V1NpsInvitationsRequest:
      allOf:
        - $ref: '#/components/schemas/V1InvitationsRequest'
        - type: object
          properties:
            npsToolId:
              type: string
              description: >-
                Herramienta NPS a encuestar. Omitela para enviar la encuesta NPS
                a nivel de empresa.
    V1InvitationsResult:
      type: object
      properties:
        channel:
          type: string
          enum:
            - email
            - whatsapp
        accepted:
          type: array
          items:
            type: string
          description: >-
            Destinatarios cuya invitacion se envio (o se encolo). Normalizados:
            correos en minusculas, telefonos solo con digitos.
        rejected:
          type: array
          items:
            type: object
            properties:
              recipient:
                type: string
              reason:
                type: string
                enum:
                  - invalid_recipient
                  - quarantined
                  - insufficient_credits_or_blocked
                  - send_failed
          description: Destinatarios cuya invitacion no se envio, con el motivo.
    ValidationError:
      type: object
      properties:
        statusCode:
          type: integer
          example: 400
        message:
          oneOf:
            - type: string
            - type: array
              items:
                type: string
        error:
          type: string
          example: Bad Request
    ForbiddenError:
      type: object
      properties:
        statusCode:
          type: integer
          example: 403
        message:
          type: string
          example: Authentication required
        error:
          type: string
          example: Forbidden
    V1InvitationsRequest:
      type: object
      required:
        - channel
        - recipients
      properties:
        channel:
          type: string
          enum:
            - email
            - whatsapp
          description: Canal de envio para las invitaciones.
        recipients:
          type: array
          minItems: 1
          maxItems: 100
          items:
            type: string
          description: >-
            Direcciones de correo (canal email) o numeros de telefono con codigo
            de pais, solo digitos, por ejemplo 56912345678 (canal whatsapp).
        language:
          type: string
          enum:
            - es
            - en
          description: Idioma de la plantilla de invitacion. El valor por defecto es es.
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: >-
        Clave de API de la empresa. Obtenla desde tu panel de Woku en
        Configuracion > API Keys. La misma clave usada para los endpoints v0.

````