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

# Modelo (em lote)

`POST /v1/send/template/batch`

Envia um modelo de mensagem para múltiplos destinatários em uma única requisição.
O campo TemplateId é compartilhado por todos os destinatários.
Cada item da lista deve conter o destinatário (To) e pode ter parâmetros e arquivo próprios.
O campo FileIdOrUrl por item é necessário apenas para templates com mídia.
O CallbackUrl por item permite receber webhook individual por mensagem.
As opções (User, Department, EnableBot, etc.) se aplicam a todos os atendimentos criados no lote.
É possível enviar até 100 mensagens por requisição.
Este endpoint tem rate limit individual e permite 1000 requisições a cada 2 minutos.

## Request body

- PublicReqSendTemplateBatchDTO
  - `from` string, required
  - `templateId` string, required — ID do modelo de mensagem a ser enviado para todos os destinatários.
  - `options` PublicReqSendOptionsDTO
    - `enableBot` boolean, nullable — Determina se o chatbot deve ser ativado ao receber uma resposta do contato. Válido apenas caso um novo atendimento seja criado ao enviar a mensagem.
    - `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.
    - `forceStartSession` boolean, nullable — Se um atendimento estiver em andamento, força o encerramento dele e inicia um novo.
    - `user` PublicReqSendUserDTO
      - `id` string, uuid, nullable — ID do atendente a ser atribuído ao atendimento.
      - `phoneNumber` string, nullable — Telefone do atendente a ser atribuído ao atendimento.
      - `email` string, nullable — E-mail do atendente a ser atribuído ao atendimento.
    - `department` PublicReqSendDepartmentDTO
      - `id` string, uuid, nullable — ID da equipe a ser atribuída ao atendimento.
      - `name` string, nullable — Nome da equipe a ser atribuída ao atendimento.
  - `messages` PublicReqSendTemplateBatchItemDTO[], required — Lista de destinatários e respectivos parâmetros.
    - `to` string, required
    - `parameters` object, nullable — Parâmetros do modelo de mensagem. Obrigatório caso o template possua variáveis.
    - `fileIdOrUrl` string, nullable — URL pública ou ID de um arquivo a ser enviado junto ao template. O arquivo deve seguir as regras do canal de atendimento.
    - `callbackUrl` string, nullable — URL para receber webhook quando a mensagem for enviada ou falhar.
    - `senderId` string, nullable — ID de identificação no seu sistema para rastreamento e consulta da mensagem.
    - `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.

## 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)
