---
title: "Chatbot (em lote)"
method: POST
path: "/v1/send/chatbot/batch"
tags: ["Envio"]
---

# Chatbot (em lote)

`POST /v1/send/chatbot/batch`

Enfileira o disparo de um chatbot para múltiplos contatos em uma única requisição.<br />
O campo BotKey é compartilhado por todos os destinatários.<br />
Cada item da lista deve conter o destinatário (To) ou o ID da conversa (SessionId).<br />
O processamento ocorre de forma assíncrona após o retorno deste endpoint.<br />
Este endpoint tem rate limit individual e permite 1000 requisições a cada 2 minutos.

## Request body

- PublicReqSendBotBatchDTO
  - `botKey` string, uuid, required — Chave do chatbot a ser enviado para todos os destinatários.
  - `from` string, nullable — Canal de origem (Id do canal ou número do WhatsApp ou @usuarioinstagram).
  - `options` PublicReqSendBotOptionsDTO
    - `skipIfBotInExecution` boolean, nullable — Se outro chatbot estiver em execução, o chatbot não será enviado.
    - `skipIfInProgress` boolean, nullable — Se uma conversa estiver em andamento, o chatbot não será enviado.
    - `forceStartSession` boolean, nullable — Se uma conversa estiver em andamento, ela será concluída e uma nova será iniciada.
    - `hiddenSession` boolean, nullable — Determina se o atendimento deve estar oculto na tela. Válido apenas caso um novo atendimento seja criado ao enviar a mensagem. O atendimento passará a ser visível caso o contato responda.
  - `messages` PublicReqSendBotBatchItemDTO[], required — Lista de destinatários.
    - `to` string, nullable — Número de telefone ou @usuarioinstagram do destinatário. Obrigatório se SessionId não for informado.
    - `sessionId` string, uuid, nullable — ID da conversa para a qual o chatbot deve ser enviado. Obrigatório se To não for informado.
    - `sessionMetadata` object, nullable — Metadados do atendimento na estrutura chave-valor. Utilizáveis como parâmetros no chatbot e enviados de volta nos webhooks. Válidos apenas enquanto o atendimento estiver ativo.
    - `contactMetadata` object, nullable — Metadados do contato na estrutura chave-valor. Utilizáveis como parâmetros no chatbot e enviados de volta nos webhooks. Salvos no contato e enviados em atendimentos futuros.
    - `senderId` string, nullable — ID de identificação no seu sistema para rastreamento e consulta do disparo.
    - `callbackUrl` string, nullable — URL para receber webhook quando o chatbot for iniciado ou falhar.

## Response `200`

Success

- PublicRespSendMessagesDTO
  - `results` PublicRespSendMessageDTO[], nullable
    - `id` string, uuid
    - `createdAt` string, date-time
    - `updatedAt` string, date-time, nullable
    - `companyId` string, uuid
    - `sessionId` string, uuid, nullable
    - `status` 'PROCESSING' | 'SAVED' | 'QUEUED' | 'SENT' | 'DELIVERED' | 'READ' | 'FAILED' | 'DELETED' | 'WAIT_REPLY'
    - `senderId` string, nullable
    - `statusUrl` string, nullable
    - `sentAt` string, date-time, nullable
    - `failedReason` string, nullable
    - `callbackUrl` string, nullable
    - `waitReply` boolean, nullable

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `429` — Too Many Requests
- `500` — Server Error

---

[API](https://skmtc.net/wts/apis/core.md) · [All operations](https://skmtc.net/wts/apis/core/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/wts/core/versions/1efd0a6ba643/schema)
