Todas as requisições devem incluir a API Key no header:
x-api-key: sua-api-key-aqui
Ou como query parameter:
?apikey=sua-api-key-aqui
Cria uma nova instância e gera o QR Code para conexão
Body (JSON):{
"name": "minha-instancia"
}
Resposta:
{
"success": true,
"instance": {
"name": "minha-instancia",
"status": "qrcode",
"qrCode": "...",
"qrCodeBase64": "data:image/png;base64,..."
}
}
Lista todas as instâncias criadas
Resposta:{
"instances": [
{ "name": "inst1", "status": "connected", "phone": "5511999999999" },
{ "name": "inst2", "status": "qrcode", "phone": null }
]
}
Retorna o status detalhado de uma instância
Retorna o QR Code em formato JSON (qrCode e qrCodeBase64)
Retorna o QR Code como imagem PNG (pode abrir no navegador)
Força reconexão da instância
Desconecta a instância do WhatsApp
Remove a instância completamente
5511999999999 (Brasil + SP + número)
Envia uma mensagem de texto
{
"number": "5511999999999",
"message": "Olá! Esta é uma mensagem de teste."
}
Envia uma imagem
{
"number": "5511999999999",
"imageUrl": "https://exemplo.com/imagem.jpg",
"caption": "Veja esta imagem!"
}
Envia um documento/arquivo
Body (JSON):{
"number": "5511999999999",
"documentUrl": "https://exemplo.com/arquivo.pdf",
"filename": "documento.pdf",
"caption": "Segue o documento"
}
Envia um áudio
Body (JSON):{
"number": "5511999999999",
"audioUrl": "https://exemplo.com/audio.mp3"
}
Retorna o histórico de mensagens enviadas/recebidas
curl -X POST http://localhost:3000/instance/create \
-H "Content-Type: application/json" \
-H "x-api-key: minha-chave-secreta" \
-d '{"name": "meu-whatsapp"}'
curl -X POST http://localhost:3000/message/meu-whatsapp/text \
-H "Content-Type: application/json" \
-H "x-api-key: minha-chave-secreta" \
-d '{"number": "5511999999999", "message": "Olá!"}'
// Enviar mensagem
const response = await fetch('http://localhost:3000/message/meu-whatsapp/text', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'x-api-key': 'minha-chave-secreta'
},
body: JSON.stringify({
number: '5511999999999',
message: 'Olá do JavaScript!'
})
});
const data = await response.json();
console.log(data);
import requests
url = "http://localhost:3000/message/meu-whatsapp/text"
headers = {
"Content-Type": "application/json",
"x-api-key": "minha-chave-secreta"
}
data = {
"number": "5511999999999",
"message": "Olá do Python!"
}
response = requests.post(url, json=data, headers=headers)
print(response.json())
const axios = require('axios');
axios.post('http://localhost:3000/message/meu-whatsapp/text', {
number: '5511999999999',
message: 'Olá do Node.js!'
}, {
headers: { 'x-api-key': 'minha-chave-secreta' }
})
.then(res => console.log(res.data))
.catch(err => console.error(err));
$ch = curl_init();
curl_setopt_array($ch, [
CURLOPT_URL => "http://localhost:3000/message/meu-whatsapp/text",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: minha-chave-secreta"
],
CURLOPT_POSTFIELDS => json_encode([
"number" => "5511999999999",
"message" => "Olá do PHP!"
])
]);
$response = curl_exec($ch);
curl_close($ch);
echo $response;