Gateway compatível com formato Routes (sendunlock). Compatível com CakePHP WhatsappController.
Todas as requisições exigem o parâmetro authenticate na URL ou header X-API-Key.
POST https://pix.xibatatool.com/Routes/{endpoint}?authenticate=SUA_API_KEY
Content-Type: application/json
GET https://pix.xibatatool.com/health
| Endpoint | Body | Resposta |
|---|---|---|
instances | {"id":"nome_instancia"} | {"success":true} |
qr | {"id":"..."} | {"success":true,"message":"data:image/png;base64,..."} |
connection | {"id":"..."} | {"success":true,"data":{"pushname":"","phone_number":"","status":"connected"}} |
check-id | {"id":"...","number":"5511..."} | {"success":true,"message":"5511...@s.whatsapp.net"} |
send-audio | {"id":"...","number":"...","text":"url_ou_base64"} | {"success":true} |
send-text | {"id":"...","number":"...","text":"..."} | {"success":true} |
send-image | {"id":"...","number":"...","text":"base64","caption":"..."} | {"success":true} |
send-buttons | {"id":"...","number":"...","type":"list","text":"{menu JSON}"} | {"success":true} |
wipe | {"id":"..."} | {"success":true} |
manager-inspect | {"action":"list"} | [{"instance_id":"...","status":"..."}] |
Configure::write('wa_provider', 'routes');
Configure::write('wa_routes_base', 'https://pix.xibatatool.com/Routes');
Configure::write('wa_routes_authenticate', 'SUA_MASTER_API_KEY');
{
"title": "Assistente",
"description": "Escolha uma opção",
"footer": "Support",
"button": "Ver Opções",
"sections": [{
"rows": [
{"title": "Localizar", "rowId": "localizar", "description": "Ver mapa"},
{"title": "Link direto", "rowId": "https://seusite.com", "description": "Abrir"}
]
}]
}
O administrador pode bloquear toda a API pelo painel em /admin/. Quando bloqueada, retorna HTTP 503.
Configure o webhook diretamente no painel UazAPI apontando para seu app CakePHP:
https://SEU_DOMINIO/whatsapp/webhook_routes
Eventos: messages, connection · Excluir: wasSentByApi, isGroupYes, fromMeYes