> ## Documentation Index
> Fetch the complete documentation index at: https://developer.kinbox.com.br/llms.txt
> Use this file to discover all available pages before exploring further.

# Send a message

> Queues a message to a phone number through one of the workspace channels. Official WhatsApp channels (with waba_id) require a `template` for contacts outside the 24h window. Use the returned id with GET /v1/messages/queue/{id} to track delivery.



## OpenAPI

````yaml post /v1/messages/send
openapi: 3.0.0
info:
  title: Kinbox API
  description: Kinbox public API
  version: '2.0'
  contact: {}
servers: []
security: []
tags: []
paths:
  /v1/messages/send:
    post:
      tags:
        - v1Messages
      summary: Send a message
      description: >-
        Queues a message to a phone number through one of the workspace
        channels. Official WhatsApp channels (with waba_id) require a `template`
        for contacts outside the 24h window. Use the returned id with GET
        /v1/messages/queue/{id} to track delivery.
      operationId: sendMessage
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SendMessagePublicDto'
      responses:
        '201':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SendMessageResponseDto'
components:
  schemas:
    SendMessagePublicDto:
      type: object
      properties:
        channelId:
          type: number
          example: 103
          description: Id do canal de envio
        to:
          type: string
          example: '5585988887777'
          description: >-
            Telefone no formato DDI+DDD+NUMERO (apenas dígitos). Caracteres não
            numéricos são removidos.
        message:
          type: string
          example: mensagem de teste
          description: >-
            Texto da mensagem. Obrigatório quando não há `template` nem
            `callOptions`.
        hidden:
          type: boolean
          default: true
          description: >-
            Quando true, a conversa não é aberta para os atendentes (fica
            oculta/resolvida).
        isMedia:
          type: boolean
          default: false
          description: Quando true, `message` é tratada como URL de mídia.
        callOptions:
          $ref: '#/components/schemas/SendMessageCallOptionsDto'
        template:
          $ref: '#/components/schemas/SendMessageTemplateDto'
        executeAt:
          type: string
          example: '2020-01-01T15:04:41.004Z'
          description: Agenda o envio para a data informada (ISO 8601).
        externalId:
          type: string
          description: >-
            Identificador externo idempotente. Uma segunda chamada com o mesmo
            valor retorna 409.
      required:
        - channelId
        - to
    SendMessageResponseDto:
      type: object
      properties:
        id:
          type: number
          example: 123456
          description: Id da mensagem na fila. Use em GET /v1/messages/queue/{id}.
        queued:
          type: boolean
          example: true
      required:
        - id
        - queued
    SendMessageCallOptionsDto:
      type: object
      properties:
        setGroupId:
          type: number
          example: 10
          description: Id do grupo que receberá a conversa
        execAutoAttributionId:
          type: number
          example: 8
          description: Id da regra de atribuição automática a executar
        execBotId:
          type: number
          example: 123
          description: Id do bot a executar após o envio
        contact:
          $ref: '#/components/schemas/SendMessageContactDto'
        doInternationalValidation:
          type: boolean
          description: >-
            Quando true, aceita números internacionais fora do padrão
            55DDDNUMERO
    SendMessageTemplateDto:
      type: object
      properties:
        id:
          type: string
          example: '712287883441111'
          description: Id do template na Meta
        name:
          type: string
          example: disparo_cnc
        language:
          type: string
          example: pt_BR
        components:
          type: array
          items:
            type: object
          description: >-
            Componentes do template no formato da Meta. Opcional quando `id` é
            informado.
        bodyFields:
          type: array
          items:
            type: string
          example:
            - Fulano
            - 10/10/2026
          description: Valores das variáveis {{1}}, {{2}}... do corpo do template, em ordem
    SendMessageContactDto:
      type: object
      properties:
        name:
          type: string
          example: Fulano
        email:
          type: string
          example: fulano@gmail.com

````