API аккаунтов WhatsApp
API статуса подключения WhatsApp
Проверьте, подключён ли один из ваших номеров WhatsApp и готов ли он к отправке сообщений. Используйте его перед кампанией или в ожидании, пока завершится привязка нового подключаемого номера. Используйте этот endpoint, а не /api/v1/whatsapp/status/<id>/, который не работает.
https://wbiztool.com/api/v1/whatsapp-client/status/Тело запроса: JSON или поля формы
Быстрый пример#
curl -X POST https://wbiztool.com/api/v1/whatsapp-client/status/ \
-H "Content-Type: application/json" \
-d '{
"client_id": 12345,
"api_key": "YOUR_API_KEY",
"whatsapp_client": 678
}'import requests
response = requests.post(
"https://wbiztool.com/api/v1/whatsapp-client/status/",
json={
"client_id": 12345,
"api_key": "YOUR_API_KEY",
"whatsapp_client": 678,
},
timeout=30,
)
result = response.json() # read the body even when the HTTP code is 400 or 403
if result["status"] == 1:
print("Connected")
elif result["message"] == "Disconnected":
print("Not connected. Reconnect it in WhatsApp settings.")
else:
print("Failed:", result["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/status/", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
client_id: 12345,
api_key: "YOUR_API_KEY",
whatsapp_client: 678,
}),
});
const result = await response.json(); // read the body even when the HTTP code is 400 or 403
if (result.status === 1) {
console.log("Connected");
} else if (result.message === "Disconnected") {
console.log("Not connected. Reconnect it in WhatsApp settings.");
} else {
console.error("Failed:", result.message);
}<?php
$payload = [
'client_id' => 12345,
'api_key' => 'YOUR_API_KEY',
'whatsapp_client' => 678,
];
$ch = curl_init('https://wbiztool.com/api/v1/whatsapp-client/status/');
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) {
echo 'Connected';
} elseif (($result['message'] ?? '') === 'Disconnected') {
echo 'Not connected. Reconnect it in WhatsApp settings.';
} else {
echo 'Failed: ' . ($result['message'] ?? 'no response');
}Замените 12345, YOUR_API_KEY и 678 своими значениями. Где их найти, описано в разделе Аутентификация.
Параметры запроса#
client_idintegerобязательноВаш API Client ID из раздела Настройки → API ключи.
api_keystringобязательноВаш API-ключ с той же страницы.
whatsapp_clientintegerобязательноID проверяемого номера WhatsApp со страницы настроек WhatsApp, из списка аккаунтов или
whatsapp_client_id, возвращённый API подключения номера.
Использование официальных клиентов#
Python-клиент вызывает этот endpoint за вас.
from wbiztool_client import WbizToolClient
client = WbizToolClient(api_key="YOUR_API_KEY", client_id=12345)
result = client.get_whatsapp_client_status(678)
print(result)Python-клиент выбрасывает requests.exceptions.HTTPError, когда API возвращает HTTP 400 или 403, поэтому оберните вызов в try/except.
getWhatsAppClientStatus() в клиенте Node.js обращается к несуществующему адресу и завершается ошибкой 404. Используйте fetch, как в быстром примере.
Ответ#
При действительных учётных данных запрос возвращает HTTP 200 с одним из этих тел ответа.
Номер подключён:
{ "message": "Connected", "status": 1 }
Номер не подключён:
{ "message": "Disconnected", "status": 0 }
| Поле | Тип | Описание |
|---|---|---|
status | integer | 1, если номер подключён. 0, если он не подключён или запрос не выполнен. |
message | string | Connected, Disconnected или текст ошибки. |
Для номера, удалённого на странице настроек WhatsApp, тоже возвращается Disconnected.
Ошибки#
| Сообщение | HTTP | Как исправить |
|---|---|---|
Auth Error | 200 | Передайте client_id, api_key и числовой whatsapp_client в теле POST-запроса — в виде корректного JSON или полей формы. |
Invalid Client Id | 403 | Передайте client_id целым числом, например 12345. |
Auth Error: invalid api key | 400 | Проверьте, что ключ существует, не удалён и принадлежит этому client_id. |
Auth Error 2 | 200 | Этого ID whatsapp_client нет в рабочем пространстве данного API-ключа. |
Demo Account can not access apis | 200 | Используйте обычный аккаунт. |
Советы#
- Перед отправкой: если номер, с которого вы отправляете, отключён, его сообщения ждут в очереди, пока он не подключится снова или не истечёт их срок, поэтому проверяйте статус перед крупными рассылками. Неотправленные сообщения на отключённом номере удаляются через 90 дней.
- После подключения номера: опрашивайте этот endpoint каждые несколько секунд, пока он не вернёт
Connected. Webhookconnectedможет прийти на несколько секунд раньше, чем этот endpoint вернётConnected, поэтому продолжайте опрос до минуты после события. См. API подключения номера. - Все номера сразу: чтобы получить статус всех номеров одним вызовом, используйте список аккаунтов.
