Integre o Chatiops com qualquer sistema externo para enviar mensagens via WhatsApp de forma programática.
Todas as chamadas à API precisam do header Authorization com um token Bearer.
Authorization: Bearer SEU_TOKEN_AQUI
O token é vinculado a uma conexão WhatsApp específica. Cada conexão tem seu próprio token.
Authorization: Bearer TOKEN das suas chamadas.POST /api/messages/send
| Header | Valor |
|---|---|
Authorization | Bearer SEU_TOKEN |
Content-Type | application/json |
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
number | string | ✅ | Número com código do país + DDD. Ex: 5511999999999 |
body | string | ✅ | Texto da mensagem |
priority | string | ❌ | baixa (padrão), media ou alta |
closeTicket | boolean | ❌ | Se true, fecha o ticket após enviar |
curl -X POST https://api.chatiops.tiops.com.br/api/messages/send \
-H "Content-Type: application/json" \
-H "Authorization: Bearer SEU_TOKEN" \
-d '{
"number": "5511999999999",
"body": "Olá! Esta é uma mensagem automática.",
"priority": "baixa"
}'
{ "mensagem": "Mensagem enviada", "queued": true }
POST /api/messages/send
Use multipart/form-data para enviar arquivos (PDF, imagem, áudio, vídeo).
curl -X POST https://api.chatiops.tiops.com.br/api/messages/send \
-H "Authorization: Bearer SEU_TOKEN" \
-F "number=5511999999999" \
-F "body=Confira o arquivo" \
-F "medias=@/caminho/do/arquivo.pdf"
| Valor | Delay | Uso recomendado |
|---|---|---|
baixa (padrão) | 1.5 segundos | Envio normal, campanhas, notificações |
media | 0.5 segundos | Confirmações, lembretes |
alta | Sem delay | Confirmação de agendamento, OTP, alertas urgentes |
priority: "alta" para envio em massa pode resultar em bloqueio temporário ou permanente do número pelo WhatsApp. Use apenas para mensagens individuais urgentes.
Configure uma URL de webhook na conexão WhatsApp para receber notificações quando mensagens chegarem.
https://seusite.com/webhook).POST para essa URL a cada mensagem recebida.{
"event": "message.received",
"ticket": { "id": 123, "status": "open" },
"contact": { "name": "João", "number": "5511999999999" },
"message": { "body": "Olá!", "fromMe": false, "timestamp": "2026-04-17T12:00:00Z" }
}
| Limite | Valor |
|---|---|
| Por minuto | 30 chamadas |
| Por dia (Starter) | 20 chamadas |
| Por dia (PRO) | 100 chamadas |
Headers de resposta indicam o uso:
X-DailyLimit: 100
X-DailyUsed: 15
X-DailyRemaining: 85
| HTTP | Erro | Descrição |
|---|---|---|
| 200 | — | Mensagem enviada com sucesso |
| 400 | Bad Request | Campos obrigatórios faltando |
| 401 | Unauthorized | Token inválido ou ausente |
| 429 | Too Many Requests | Limite de chamadas atingido |
| 500 | Internal Error | Erro no servidor |
const axios = require('axios');
await axios.post('https://api.chatiops.tiops.com.br/api/messages/send', {
number: '5511999999999',
body: 'Olá do Node.js!',
priority: 'alta'
}, {
headers: { Authorization: 'Bearer SEU_TOKEN' }
});
import requests
requests.post('https://api.chatiops.tiops.com.br/api/messages/send',
json={'number': '5511999999999', 'body': 'Olá do Python!', 'priority': 'alta'},
headers={'Authorization': 'Bearer SEU_TOKEN'}
)
function enviarWhatsApp() {
UrlFetchApp.fetch('https://api.chatiops.tiops.com.br/api/messages/send', {
method: 'post',
contentType: 'application/json',
headers: { Authorization: 'Bearer SEU_TOKEN' },
payload: JSON.stringify({ number: '5511999999999', body: 'Olá do Google Sheets!' })
});
}
Use o módulo HTTP Request com:
https://api.chatiops.tiops.com.br/api/messages/sendAuthorization: Bearer SEU_TOKENnumber e bodyAlém de enviar mensagens, você pode consultar tickets, buscar contatos e ver métricas. Usa o mesmo token.
GET /api/tickets?status=open&limit=20
Authorization: Bearer SEU_TOKEN
Filtros: status (open, pending, closed), queueId, limit, offset
// Resposta
{
"tickets": [
{ "id": 672, "status": "open", "contact": { "name": "João", "number": "5511999999999" }, "queue": { "name": "Vendas" } }
],
"count": 15
}
GET /api/tickets/672/messages?limit=50
Authorization: Bearer SEU_TOKEN
// Resposta
{
"ticketId": 672,
"messages": [
{ "body": "Olá!", "fromMe": false, "createdAt": "2026-05-09T12:00:00Z" },
{ "body": "Como posso ajudar?", "fromMe": true, "createdAt": "2026-05-09T12:01:00Z" }
]
}
POST /api/tickets/672/reply
Authorization: Bearer SEU_TOKEN
Content-Type: application/json
{ "body": "Seu pedido foi enviado!" }
GET /api/contacts?search=joao&limit=20
Authorization: Bearer SEU_TOKEN
GET /api/metrics/summary
Authorization: Bearer SEU_TOKEN
// Resposta
{ "open": 5, "pending": 12, "closedToday": 23, "messagesToday": 156 }
Página completa: chatiops.com/mcp · Catálogo das ferramentas: chatiops.com/mcp/tools
Conecte qualquer agente de IA compatível com MCP (Claude, ChatGPT, Cursor, Windsurf, Cline, Kiro) diretamente ao Chatiops. São 96 ferramentas — a IA opera o atendimento conversando com você.
https://api.chatiops.tiops.com.br/mcp?token=SEU_TOKEN
{
"mcpServers": {
"chatiops": {
"url": "https://api.chatiops.tiops.com.br/mcp?token=SEU_TOKEN"
}
}
}
Salve em ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) ou %APPDATA%\Claude\claude_desktop_config.json (Windows), e reinicie o app.
claude mcp add --transport http chatiops \
"https://api.chatiops.tiops.com.br/mcp?token=SEU_TOKEN"
Configurações → Conectores → adicionar conector personalizado → cole a mesma URL. Disponível nos planos pagos com conectores habilitados.
| Área | Principais tools |
|---|---|
| Mensagens | send_whatsapp send_group_message search_messages get_unread_messages |
| Atendimentos | list_tickets list_unread_tickets get_ticket_messages reply_ticket close_ticket reopen_ticket transfer_ticket assign_ticket add_ticket_note list_ticket_notes get_conversation_summary list_recent_conversations |
| Contatos e tags | search_contacts get_contact create_contact update_contact delete_contact list_tags create_tag update_tag delete_tag |
| Grupos e comunidades | list_groups list_group_participants list_group_messages get_group_daily_summary create_group get_group_invite_link update_group_info update_group_settings manage_group_participants leave_group get_community_info get_newsletter_info check_jid_type |
| Filas e chatbot | list_queues create_queue update_queue delete_queue get_queue_config list_queue_options create_queue_option update_queue_option delete_queue_option debug_queues diagnose_ticket_flow |
| IA | list_agents create_agent update_agent configure_ai get_ia_config_summary list_knowledge_bases create_knowledge_base update_knowledge_base delete_knowledge_base link_knowledge_base unlink_knowledge_base get_agent_knowledge |
| Campanhas | list_campaigns create_campaign start_campaign cancel_campaign list_quick_messages create_quick_message |
| Relatórios | get_metrics get_dashboard get_daily_summary get_reports list_appointment_bookings |
| Conexões | list_connections get_connection_status get_connection_config create_connection update_connection configure_connection restart_connection disconnect_connection delete_connection get_qrcode |
| Conta e usuários | get_company update_company list_users create_user update_user delete_user get_user list_settings update_setting list_api_keys create_api_key delete_api_key create_account login_account |
// No Claude ou no ChatGPT, basta pedir em português:
// Rotina do dia
"Faz um resumo dos atendimentos de hoje: quantos abertos, aguardando
e fechados, e os 3 assuntos que mais apareceram"
"Quais tickets estão aguardando há mais de 2 horas sem resposta?"
"Resume o ticket 672 em 5 linhas e me diz qual é o próximo passo"
// Grupos
"Me dá o resumo do dia do grupo 'Obra Alphaville'"
"Cria um grupo chamado 'Projeto Fachada' com a Karina e o Bruno
e me manda o link de convite"
// Vendas
"Procura o contato João Ribeiro, mostra o histórico e escreve um follow-up"
"Manda um WhatsApp pro 5511999999999 dizendo que o pedido saiu"
// Configuração
"Cria as filas de atendimento de uma loja de material de construção,
com saudação e menu de chatbot"
"Baseado nas dúvidas dos últimos 30 dias, escreve uma Base de Conhecimento
com as 15 perguntas mais frequentes"
Ferramenta nova não apareceu? O app de IA carrega a lista de tools uma vez por sessão — desconecte e reconecte o conector.
O Chatiops suporta conexão via API Oficial da Meta (Cloud API) — mais estável, sem risco de ban, com templates e botões interativos.
https://api.chatiops.tiops.com.br/webhook/meta/{whatsappId}
Configure esta URL no painel Meta (App → WhatsApp → Configuração → Webhook). Use o Verify Token gerado no Chatiops.
| Aspecto | QR Code (Baileys) | API Oficial Meta |
|---|---|---|
| Estabilidade | Média | Alta |
| Risco de ban | Sim | Não |
| Templates | Não | Sim |
| Botões interativos | Não | Sim |
| Custo | Grátis | Por conversa (~R$0,15-0,50) |
| Rate limit | ~30/min | 80 msgs/seg |
O endpoint POST /api/messages/send funciona para ambos os tipos de conexão. O Chatiops detecta automaticamente se a conexão é Baileys ou Meta e usa o canal correto.
curl -X POST https://api.chatiops.tiops.com.br/api/messages/send \
-H "Content-Type: application/json" \
-H "Authorization: Bearer SEU_TOKEN" \
-d '{"number": "5511999999999", "body": "Olá via API Oficial!", "priority": "alta"}'
| Tipo | Custo/conversa | Quando |
|---|---|---|
| Serviço | Grátis (1000/mês) | Cliente inicia a conversa |
| Utilidade | ~R$ 0,15 | Confirmações, lembretes |
| Autenticação | ~R$ 0,14 | OTP, verificação |
| Marketing | ~R$ 0,50 | Promoções, campanhas |