Create schedule (enqueue messages)
Cria um agendamento de mensagens para uma lista de contatos.
Você pode fornecer o conteúdo da mensagem de duas formas:
Opção A — Usar um MessageContent já criado (template)
Passe o campo messageContentId com o ID de um MessageContent que esteja com status PUBLISHED.
O conteúdo (textos, imagens, áudios etc.) já deve existir na plataforma.
{
"title": "Campanha Promoção",
"messageContentId": "msgc_abc123",
"sendAt": "2026-04-01T10:00:00.000Z",
"contactIds": ["cont_aaa", "cont_bbb"]
}Opção B — Envio direto de textos (sem template)
Passe o campo content com um array de textos que serão enviados em sequência para cada contato.
{
"title": "Mensagem Rápida",
"content": ["Oi tudo bem?", "Você quer conhecer nossa oferta?"],
"sendAt": "2026-04-01T10:00:00.000Z",
"contactIds": ["cont_aaa", "cont_bbb"]
}Importante: enviar messageContentId e content ao mesmo tempo resultará em erro 400 MESSAGE_SOURCE_CONFLICT.
Da mesma forma, não enviar nenhum dos dois resultará em erro 400 MESSAGE_SOURCE_REQUIRED.
Authorization
api-key Insira seu token de acesso abaixo. No Swagger: Não é necessário digitar "Bearer " antes do token, o sistema adiciona automaticamente.
Na API: As requisições devem incluir o header.
Exemplo: Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
curl -X POST "https://core.beemessage.app/v1/messages/schedules" \ -H "Content-Type: application/json" \ -d '{ "title": "Campanha X", "sendAt": "2026-02-05T14:00:00.000Z", "contactIds": [ "cont_abc123", "cont_def456" ] }'{
"success": true,
"data": {
"id": "sch_abc123",
"totalEnqueued": 2
}
}