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

# Enviar una campaña (recomendado)

> Esta es la forma recomendada de desplegar una conversación a una lista de usuarios, en reemplazo del endpoint anterior `/deployment/api/poll/{poll_id}` (en desuso, deja de funcionar el 15 de noviembre de 2026). El cuerpo de la solicitud no cambia: solo cambia la URL.

La campaña se encola de inmediato y se procesa de forma asíncrona — este endpoint responde `202 Accepted` enseguida, antes de que los usuarios hayan sido contactados realmente. Usa el `status_url` de la respuesta (o llama a `GET /v2/send-campaign/{launch_request_id}`) para revisar el progreso.

<Warning>
  Recuerda que para usar este endpoint, debes haber obtenido tu llave de API en la sección de **Desarrolladores** de la plataforma Treble.
</Warning>

<Info>
  Este endpoint reemplaza al endpoint anterior [Desplegar un flujo de conversación](/es/api-reference/endpoints/deploy), que dejará de funcionar el **15 de noviembre de 2026**. El cuerpo de la solicitud es el mismo — solo cambia la URL.
</Info>

## Procesamiento asíncrono

Este endpoint responde `202 Accepted` en cuanto la campaña se encola, antes de que algún usuario haya sido contactado realmente. Usa el `status_url` de la respuesta, o llama a [Consultar el estado de una campaña](/es/api-reference/endpoints/send-campaign-status), para revisar cómo va.

## Seleccionar el número que despliega (empresas multicanal)

Para empresas multicanal, puedes elegir desde qué número de celular se desplegará al usuario usando `user_session_keys`. Si quieres que el primer número realice el despliegue, basta con agregar la clave `deployment_squad` y su valor correspondiente será `DS_[CELLPHONE]`. Puedes agregar varios *deployment squads* para que distintos números puedan desplegar.

```json theme={null}
"user_session_keys": [
  {
    "key": "deployment_squad",
    "value": "DS_[CELLPHONE]"
  }
]
```


## OpenAPI

````yaml open-api-files/treble-api-es.json POST /v2/send-campaign/{poll_id}
openapi: 3.0.1
info:
  title: API de Treble Poll
  description: Documentación para el endpoint de despliegue de polls en Treble
  version: 1.0.0
servers:
  - url: https://main.treble.ai
    description: Servidor principal de Treble
  - url: https://tudominio.com
    description: >-
      Servidor de ejemplo para implementar los webhooks. Esto representa TU
      servidor donde debes implementar los endpoints que Treble llamará.
security: []
tags:
  - name: Webhooks
    description: >-
      Endpoints que Treble llamará en tu servidor. Estos no son endpoints reales
      que puedas llamar, sino una representación de los webhooks que Treble
      invocará en tu sistema.
paths:
  /v2/send-campaign/{poll_id}:
    servers:
      - url: https://campaign-orchestration.treble.ai
        description: Servidor de Campaign Orchestration
    post:
      summary: Enviar una campaña (recomendado)
      description: >-
        Esta es la forma recomendada de desplegar una conversación a una lista
        de usuarios, en reemplazo del endpoint anterior
        `/deployment/api/poll/{poll_id}` (en desuso, deja de funcionar el 15 de
        noviembre de 2026). El cuerpo de la solicitud no cambia: solo cambia la
        URL.


        La campaña se encola de inmediato y se procesa de forma asíncrona — este
        endpoint responde `202 Accepted` enseguida, antes de que los usuarios
        hayan sido contactados realmente. Usa el `status_url` de la respuesta (o
        llama a `GET /v2/send-campaign/{launch_request_id}`) para revisar el
        progreso.
      parameters:
        - name: poll_id
          in: path
          required: true
          description: ID del poll que quieres desplegar
          schema:
            type: string
        - name: Authorization
          in: header
          required: true
          description: >-
            API Key de autorización. Se puede obtener en
            https://app.treble.ai/es/dashboard/settings/developers
          schema:
            type: string
          example: API_KEY
      requestBody:
        description: Información de los usuarios a los que se desplegará el poll
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - users
              properties:
                users:
                  type: array
                  description: Lista de usuarios a los que se desplegará el poll
                  items:
                    type: object
                    required:
                      - cellphone
                      - country_code
                      - user_session_keys
                    properties:
                      cellphone:
                        type: string
                        description: >-
                          Número de teléfono del usuario sin el código de país
                          (por ejemplo: '3051234567')
                      country_code:
                        type: string
                        description: 'Código de país con el símbolo + (por ejemplo: ''+57'')'
                      user_session_keys:
                        type: array
                        description: >-
                          Variables que pueden ser reemplazadas en los textos de
                          las preguntas o entregadas cuando se llama a un
                          webhook. Para empresas multicanal, puede incluir la
                          clave 'deployment_squad' para seleccionar qué número
                          de teléfono realizará el despliegue.
                        items:
                          type: object
                          required:
                            - key
                            - value
                          properties:
                            key:
                              type: string
                              description: >-
                                Nombre de la variable. Valores especiales
                                incluyen 'deployment_squad' para seleccionar qué
                                número de teléfono realizará el despliegue.
                            value:
                              type: string
                              description: >-
                                Valor de la variable. Para 'deployment_squad',
                                el valor debe ser 'DS_[CELLPHONE]'.
                      deployment_eta:
                        type: integer
                        description: >-
                          Timestamp UNIX UTC para programar el despliegue para
                          una fecha posterior (opcional). Ejemplo: 1615823201
                          (15 de marzo de 2021, 3:46:41 PM UTC)
            examples:
              Ejemplo básico:
                value:
                  users:
                    - cellphone: '3051234567'
                      country_code: '+57'
                      user_session_keys:
                        - key: name
                          value: Juan
                        - key: TransID
                          value: '12345'
                        - key: schoolname
                          value: Redschool
              Ejemplo con deployment_eta:
                value:
                  users:
                    - cellphone: '3051234567'
                      country_code: '+57'
                      user_session_keys:
                        - key: name
                          value: Juan
                      deployment_eta: 1615823201
              Ejemplo con deployment_squad:
                value:
                  users:
                    - cellphone: '3051234567'
                      country_code: '+57'
                      user_session_keys:
                        - key: name
                          value: Juan
                        - key: deployment_squad
                          value: DS_[CELLPHONE]
      responses:
        '202':
          description: The campaign was queued for processing
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    description: Confirmation message
                  id:
                    type: string
                    description: Poll ID
                  batch_id:
                    type: string
                    description: Idempotency / batch key for this submission
                  launch_request_id:
                    type: string
                    description: ID to track this submission's progress
                  status_url:
                    type: string
                    description: Path to poll for this submission's status
              example:
                message: The campaign was queued
                id: '1251072'
                batch_id: acaab9ea-8754-4d6a-98b1-ace451c7d930
                launch_request_id: 59d7ef01-4518-444f-816e-1c45c1748974
                status_url: /v2/send-campaign/59d7ef01-4518-444f-816e-1c45c1748974
        '400':
          description: Error en la solicitud
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
                    description: Error description
              example:
                detail: se requiere poll_id, ya sea en la URL o en el cuerpo
        '401':
          description: >-
            No autorizado. API Key inválida o faltante, o token de sesión
            inválido/expirado.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
                    description: Error description
              example:
                detail: API Key inválida
        '404':
          description: No existe un poll para esta empresa
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
                    description: Error description
              example:
                detail: No existe un poll para esta empresa
      deprecated: true

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.