POST
/
campaigns
/
new
curl --request POST \
  --url https://dash.superagentes.ai/api/campaigns/new \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "agentId": "<string>",
  "name": "<string>",
  "useAgentContacts": false,
  "manualPhoneNumbers": [
    "<string>"
  ],
  "preferredProvider": "official",
  "message": "<string>",
  "autoDispatch": true
}'
{
  "id": "<string>",
  "name": "<string>",
  "status": "DRAFT",
  "message": "<string>",
  "startedAt": "2023-11-07T05:31:56Z",
  "usedPhoneNumbers": [
    "<string>"
  ],
  "manualPhoneNumbers": [
    "<string>"
  ],
  "agentId": "<string>"
}

Criar e Disparar Campanha

Crie e dispare uma nova campanha de mensagens via WhatsApp usando este endpoint.

Requisição

Headers

Content-Type: application/json
Authorization: Bearer seu_token_aqui

Parâmetros

CampoTipoObrigatórioDescriçãoExemplo
agentIdstringSimID do agente que fará o disparo”agent_123”
namestringNãoNome da campanha. Se não informado, será usado um nome padrão”Campanha de Marketing”
useAgentContactsbooleanNãoCUIDADO! Essa opção dispara para todos os contatos que conversaram com o agente. Padrão: falsefalse
manualPhoneNumbersstring[]NãoArray de números de telefone para disparo manual[“+5511999999999”]
preferredProviderstringNãoProvedor preferido para o disparo. Opções: “official”, “evolution”, “evolution-qr”, “z-api""evolution”
messagestringSimConteúdo da mensagem a ser enviada”Olá, esta é uma mensagem de teste”
autoDispatchbooleanSimDefine se a campanha será disparada automaticamente ou apenas criadatrue

Exemplo de Requisição

curl -X POST \
  'https://dash.superagentes.ai/api/campaigns/new' \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer seu_token_aqui' \
  -d '{
    "agentId": "agent_123",
    "name": "Campanha de Marketing",
    "useAgentContacts": false,
    "manualPhoneNumbers": ["+5511999999999"],
    "preferredProvider": "evolution",
    "message": "Olá, esta é uma mensagem de teste",
    "autoDispatch": true
  }'

Resposta

Sucesso

{
  "id": "campaign_123",
  "name": "Campanha de Marketing",
  "status": "IN_PROGRESS",
  "message": "Olá, esta é uma mensagem de teste",
  "startedAt": "2024-03-21T10:00:00Z",
  "usedPhoneNumbers": [],
  "manualPhoneNumbers": ["+5511999999999"],
  "agentId": "agent_123"
}

Erro

{
  "error": "Mensagem de erro",
  "details": "Detalhes adicionais do erro (se disponíveis)"
}

Códigos de Status

  • 200: Sucesso
  • 400: Erro de validação ou dados inválidos
  • 401: Não autorizado (token inválido ou ausente)
  • 403: Proibido (sem permissão)
  • 404: Agente não encontrado
  • 500: Erro interno do servidor

Observações Importantes

  1. Provedor de WhatsApp

    • Se o preferredProvider especificado não estiver disponível, será usado o primeiro provedor conectado ao agente
    • O provedor deve estar ativo e configurado corretamente no agente
  2. Números de Telefone

    • Os números devem estar no formato internacional (ex: +5511999999999)
    • Se useAgentContacts for true, os contatos do agente serão incluídos no disparo
    • Números duplicados serão automaticamente removidos
  3. Disparo Automático

    • Se autoDispatch for false, a campanha será criada com status “DRAFT”
    • Se autoDispatch for true, a campanha será iniciada imediatamente
    • O disparo é feito de forma assíncrona com delay entre as mensagens
  4. Limitações

    • O sistema possui limites de taxa para evitar bloqueios
    • As mensagens são enviadas com delay para evitar bloqueios do WhatsApp
    • Em caso de falha, o sistema fará até 3 tentativas de envio

Exemplos de Uso

  1. Criar campanha sem disparar
curl -X POST \
  'https://dash.superagentes.ai/api/campaigns/new' \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer seu_token_aqui' \
  -d '{
    "agentId": "agent_123",
    "message": "Mensagem de teste",
    "autoDispatch": false
  }'
  1. Disparar para números específicos
curl -X POST \
  'https://dash.superagentes.ai/api/campaigns/new' \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer seu_token_aqui' \
  -d '{
    "agentId": "agent_123",
    "useAgentContacts": false,
    "manualPhoneNumbers": ["+5511999999999", "+5511888888888"],
    "message": "Mensagem de teste",
    "autoDispatch": true
  }'
  1. Usar provedor específico
curl -X POST \
  'https://dash.superagentes.ai/api/campaigns/new' \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer seu_token_aqui' \
  -d '{
    "agentId": "agent_123",
    "preferredProvider": "z-api",
    "message": "Mensagem de teste",
    "autoDispatch": true
  }'

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
agentId
string
required

ID do agente que fará o disparo

message
string
required

Conteúdo da mensagem a ser enviada

autoDispatch
boolean
required

Define se a campanha será disparada automaticamente ou apenas criada

name
string

Nome da campanha. Se não informado, será usado um nome padrão

useAgentContacts
boolean
default:false

Define se deve usar os contatos do agente. Padrão: false

manualPhoneNumbers
string[]

Array de números de telefone para disparo manual

preferredProvider
enum<string>

Provedor preferido para o disparo

Available options:
official,
evolution,
evolution-qr,
z-api

Response

200
application/json
Sucesso
id
string

ID único da campanha

name
string

Nome da campanha

status
enum<string>

Status atual da campanha

Available options:
DRAFT,
IN_PROGRESS,
COMPLETED,
FAILED
message
string

Conteúdo da mensagem

startedAt
string

Data e hora de início da campanha

usedPhoneNumbers
string[]

Números de telefone utilizados na campanha

manualPhoneNumbers
string[]

Números de telefone fornecidos manualmente

agentId
string

ID do agente responsável pela campanha