API de contas do WhatsApp
API para listar números de WhatsApp conectados
Obtenha os números de WhatsApp do seu espaço de trabalho que estão conectados neste momento. Use-a para permitir que os usuários escolham de qual número enviar, ou para encontrar o ID de whatsapp_client para outras chamadas à API.
https://wbiztool.com/api/v1/whatsapp-client/list/Corpo: JSON ou campos de formulário
Somente números conectados são retornados. Para ver também os números desconectados, use Listar contas. As contas do Telegram conectadas também são listadas, com platform definido como telegram.
Exemplo rápido#
curl -X POST https://wbiztool.com/api/v1/whatsapp-client/list/ \
-H "Content-Type: application/json" \
-d '{
"client_id": 12345,
"api_key": "YOUR_API_KEY"
}'import requests
response = requests.post(
"https://wbiztool.com/api/v1/whatsapp-client/list/",
json={
"client_id": 12345,
"api_key": "YOUR_API_KEY",
},
timeout=30,
)
result = response.json() # read the body even when the HTTP code is 400 or 403
if result.get("status") == 1:
for number in result["whatsapp_clients"]:
print(number["whatsapp_client_id"], number["whatsapp_client_number"])
else:
print("Failed:", result.get("message"))// Node.js 18+ (built-in fetch). Save as .mjs to use top-level await.
const response = await fetch("https://wbiztool.com/api/v1/whatsapp-client/list/", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
client_id: 12345,
api_key: "YOUR_API_KEY",
}),
});
const result = await response.json(); // read the body even when the HTTP code is 400 or 403
if (result.status === 1) {
for (const number of result.whatsapp_clients) {
console.log(number.whatsapp_client_id, number.whatsapp_client_number);
}
} else {
console.error("Failed:", result.message);
}<?php
$payload = [
'client_id' => 12345,
'api_key' => 'YOUR_API_KEY',
];
$ch = curl_init('https://wbiztool.com/api/v1/whatsapp-client/list/');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => ['Content-Type: application/json'],
CURLOPT_POSTFIELDS => json_encode($payload),
CURLOPT_RETURNTRANSFER => true,
CURLOPT_TIMEOUT => 30,
]);
$result = json_decode(curl_exec($ch), true);
curl_close($ch);
if (($result['status'] ?? 0) === 1) {
foreach ($result['whatsapp_clients'] as $number) {
echo $number['whatsapp_client_id'] . ' ' . $number['whatsapp_client_number'] . PHP_EOL;
}
} else {
echo 'Failed: ' . ($result['message'] ?? 'no response');
}Substitua 12345 e YOUR_API_KEY pelos seus próprios valores. Veja em Autenticação onde encontrá-los.
Parâmetros da requisição#
client_idintegerobrigatórioSeu ID do Cliente da API, em Configurações → Chaves API.
api_keystringobrigatórioSua chave de API, na mesma página. A lista é do espaço de trabalho em que esta chave foi criada.
Usar os clientes oficiais#
O cliente Python chama este endpoint para você.
from wbiztool_client import WbizToolClient
client = WbizToolClient(api_key="YOUR_API_KEY", client_id=12345)
result = client.list_whatsapp_clients()
for number in result.get("whatsapp_clients", []):
print(number["whatsapp_client_id"], number["whatsapp_client_number"])O cliente Python lança requests.exceptions.HTTPError quando a API retorna HTTP 400 ou 403, então coloque a chamada dentro de um try/except.
O getWhatsAppClients() do cliente Node.js chama um endereço que não existe e falha com 404. Use fetch, como no Exemplo rápido.
Resposta#
Uma requisição bem-sucedida retorna HTTP 200:
{
"message": "okay",
"whatsapp_clients": [
{
"id": 678,
"whatsapp_client_id": 678,
"whatsapp_client_number": "919876543210",
"platform": "whatsapp",
"is_connected": true
},
{
"id": 702,
"whatsapp_client_id": 702,
"whatsapp_client_number": "919812345670",
"platform": "telegram",
"is_connected": true
}
],
"status": 1
}
| Campo | Tipo | Descrição |
|---|---|---|
status | integer | 1 em caso de sucesso, 0 se a requisição falhou. |
message | string | okay em caso de sucesso; caso contrário, o erro. |
whatsapp_clients | array | Seus números conectados. Vazio se nenhum estiver conectado. Presente apenas em caso de sucesso. |
whatsapp_clients[].whatsapp_client_id | integer | O ID do número. Informe-o como whatsapp_client em outras chamadas à API. |
whatsapp_clients[].id | integer | Mesmo valor de whatsapp_client_id. |
whatsapp_clients[].whatsapp_client_number | string | O número de telefone como foi salvo quando o número foi adicionado. |
whatsapp_clients[].platform | string | whatsapp para um número de WhatsApp, telegram para uma conta do Telegram. Envie de qualquer um dos dois com o ID dele como whatsapp_client. |
whatsapp_clients[].is_connected | boolean | Sempre true, porque somente números conectados são listados. |
A lista não tem nenhuma ordem garantida. Ordene por whatsapp_client_id se a ordem importar.
Erros#
| Mensagem | HTTP | Como corrigir |
|---|---|---|
Auth Error | 200 | Envie client_id e api_key no corpo de um POST, como JSON válido ou campos de formulário. |
Invalid Client Id | 403 | Envie client_id como número inteiro, por exemplo 12345. |
Auth Error: invalid api key | 400 | Verifique se a chave existe, não foi excluída e pertence a este client_id. |
Uma requisição que não seja POST retorna um objeto vazio {}. Um problema inesperado no servidor retorna HTTP 500 com um corpo HTML, então verifique se a resposta é JSON antes de ler status.
Dicas#
- Lista vazia:
"whatsapp_clients": []significa que nenhum número está conectado neste espaço de trabalho. Conecte um nas configurações do WhatsApp ou com Conectar um número. - Vários espaços de trabalho: a chave de API define qual espaço de trabalho é listado. Use uma chave criada no espaço de trabalho desejado.
- Apenas um número: para verificar um único número, use Status da conexão.
