Български
Български
Appearance
Български
Български
Appearance
WallaWhats REST API ви позволява да управлявате телефони, абонаменти за X акаунти и история на известията програмно — точно това, което иначе бихте правили от таблото.
https://api.wallawhats.comapplication/jsonВсяка заявка трябва да съдържа API ключ в заглавката x-api-key:
curl https://api.wallawhats.com/user/profile \
-H "x-api-key: bws_prod_00000000000000000000000000000000"Ключовете се създават в таблото под Settings → API Keys или чрез POST /apikeys. Префиксът на ключа започва с bws_ и е с дължина 36 знака. Ключовете се показват само веднъж, при създаване — ако загубите ключ, изтрийте го и създайте нов.
401 Unauthorized.| План | Разрешени ключове |
|---|---|
| Free | 1 |
| Pro | 1 |
| Pro+ | 2 |
| Business | 5 |
| Enterprise | 20 |
Опит за създаване на повече от разрешеното от плана връща 400 с "error": "api key limit reached".
Грешките се връщат като JSON с поле error и HTTP статус код:
{ "error": "phoneNumber is required" }| Статус | Значение |
|---|---|
400 | Невалидни параметри, превишена квота или нарушение на бизнес правило |
401 | Липсващ или невалиден API ключ |
402 | Недостатъчно кредити за завършване на операцията |
404 | Ресурсът не е намерен |
500 | Грешка на сървъра — моля, опитайте отново с експоненциално отлагане |
lastKey за странициране.403 при злоупотребяващи модели. Свържете се с поддръжката, ако сте ограничени неочаквано.GET /user/profileВръща профила на удостоверения потребител.
Отговор
{
"userId": "5a4cbd70-...",
"email": "jane@example.com",
"name": "Jane",
"plan": "pro_plus",
"createdAt": 1745000000000
}Пример
curl https://api.wallawhats.com/user/profile \
-H "x-api-key: bws_prod_..."Телефон е потвърден WhatsApp номер, който може да получава известия. Трябва да потвърдите телефон, преди да абонирате X акаунт за него.
POST /phonesГенерира 6-цифрен код и го изпраща на номера чрез WhatsApp. Телефонът се създава в състояние pending_verification.
Заявка
| Поле | Тип | Задължително | Бележки |
|---|---|---|---|
phoneNumber | string | да | E.164 формат, напр. +34612345678 |
displayName | string | не | Приятелски етикет, показан в таблото |
Отговор
{ "phoneNumber": "+34612345678", "status": "pending_verification" }Грешки
400 "invalid phone number format" — не е E.164400 "phone number limit reached" — превишава разрешеното от плана (Free/Pro/Pro+ 1, Business 3, Enterprise 10)Пример
curl -X POST https://api.wallawhats.com/phones \
-H "x-api-key: bws_prod_..." \
-H "Content-Type: application/json" \
-d '{"phoneNumber": "+34612345678", "displayName": "Work"}'POST /phones/verifyПотвърждава телефон чрез изпращане на 6-цифрения код. Кодовете изтичат след 15 минути.
Заявка
| Поле | Тип | Задължително |
|---|---|---|
phoneNumber | string (E.164) | да |
code | string (6 цифри) | да |
Отговор
{ "phoneNumber": "+34612345678", "status": "verified" }Грешки
404 "phone not found"400 "invalid code" — грешен код400 "code expired" — по-стар от 15 минути400 "phone already verified"GET /phonesОтговор
{
"phones": [
{
"phoneNumber": "+34612345678",
"status": "verified",
"displayName": "Work",
"createdAt": 1745000000000,
"verifiedAt": 1745000060000
}
],
"count": 1
}DELETE /phones/{phoneNumber}Премахва телефона и деактивира всички абонаменти, насочени към него. URL-кодирайте + като %2B.
Отговор
{ "success": true }Пример
curl -X DELETE "https://api.wallawhats.com/phones/%2B34612345678" \
-H "x-api-key: bws_prod_..."Абонамент свързва X акаунт, който искате да следите, с един от вашите потвърдени телефони. Когато X акаунтът публикува, WallaWhats изпраща WhatsApp известие на този телефон.
POST /subscriptionsЗаявка
| Поле | Тип | Задължително | Бележки |
|---|---|---|---|
xUsername | string | да | 1–15 знака, буквено-цифрови + долна черта. Префиксът @ се приема и премахва. |
phoneNumber | string (E.164) | да | Трябва да е един от потвърдените ви телефони. |
Отговор
{
"xUsername": "elonmusk",
"xUserId": "44196397",
"xDisplayName": "Elon Musk",
"xProfileImage": "https://pbs.twimg.com/...",
"phoneNumber": "+34612345678",
"isActive": true,
"createdAt": 1745000000000
}Грешки
400 "invalid X username format" — regex неуспешен400 "phone not found" / "phone not verified"400 "subscription limit reached" — вижте таблицата с планове по-долу404 "X account not found" — потребителското име не се разрешава в XОграничения на плана
| План | Абонаменти |
|---|---|
| Free | 1 |
| Pro | 1 |
| Pro+ | 2 |
| Business | 5 |
| Enterprise | 50 |
GET /subscriptionsОтговор
{
"subscriptions": [ /* същата форма като отговора на POST /subscriptions */ ],
"count": 3
}DELETE /subscriptions/{xUsername}Съпоставянето на xUsername не е чувствително към регистъра. Премахнете @ преди изпращане.
Отговор
{ "success": true }Всяко известие, което WallaWhats доставя, се записва тук, заедно със статуса му на доставка в WhatsApp.
GET /notificationsПараметри на заявката
| Параметър | Тип | Описание |
|---|---|---|
from | number (ms epoch) | Филтрирайте известия, създадени в или след този момент |
to | number (ms epoch) | Филтрирайте известия, създадени в или преди този момент |
lastKey | string | Курсор за странициране, върнат в предишния отговор |
Отговор
{
"notifications": [
{
"notificationId": "a1b2c3d4-...",
"userId": "5a4cbd70-...",
"phoneNumber": "+34612345678",
"xUsername": "elonmusk",
"tweetId": "1797123456789000000",
"tweetText": "...",
"tweetUrl": "https://x.com/elonmusk/status/...",
"waMessageId": "wamid.HBgN...",
"status": "delivered",
"errorMessage": null,
"createdAt": 1745000000000,
"updatedAt": 1745000002000
}
],
"lastKey": "eyJOT1RJRklDQVRJT05fSUQi..."
}Възможни стойности на status: queued, sent, delivered, read, failed.
Размерът на страницата е 50. Когато lastKey липсва, сте достигнали края.
Управлявайте ключовете, които вашите приложения използват за извикване на този API.
POST /apikeysЗаявка
| Поле | Тип | Задължително |
|---|---|---|
name | string | не, по подразбиране "Default" |
Отговор (201 Created)
{
"apiKey": "bws_prod_00000000000000000000000000000000",
"keyPrefix": "bws_prod_00",
"keyName": "CI server",
"createdAt": 1745000000000,
"expiresAt": 1776536000000
}Стойност, показана само веднъж
apiKey се връща само при създаване. Съхранете го в мениджъра си за тайни незабавно. Следващите извиквания показват само keyPrefix.
GET /apikeysОтговор
[
{
"keyPrefix": "bws_prod_00",
"keyName": "CI server",
"createdAt": 1745000000000,
"lastUsedAt": 1745086400000,
"expiresAt": 1776536000000
}
]DELETE /apikeys/{keyPrefix}Използвайте 12-знаковия keyPrefix от отговора на списъка — никога целия ключ.
Отговор
{ "success": true }# 1. Създайте ключ в таблото и го експортирайте
export WALLA_API_KEY="bws_prod_..."
# 2. Регистрирайте + потвърдете своя WhatsApp номер
curl -X POST https://api.wallawhats.com/phones \
-H "x-api-key: $WALLA_API_KEY" \
-H "Content-Type: application/json" \
-d '{"phoneNumber":"+34612345678","displayName":"Mobile"}'
# -> телефонът получава WhatsApp код. Изпратете го:
curl -X POST https://api.wallawhats.com/phones/verify \
-H "x-api-key: $WALLA_API_KEY" \
-H "Content-Type: application/json" \
-d '{"phoneNumber":"+34612345678","code":"123456"}'
# 3. Абонирайте се за X акаунт
curl -X POST https://api.wallawhats.com/subscriptions \
-H "x-api-key: $WALLA_API_KEY" \
-H "Content-Type: application/json" \
-d '{"xUsername":"elonmusk","phoneNumber":"+34612345678"}'
# 4. Наблюдавайте как пристигат известията
curl https://api.wallawhats.com/notifications \
-H "x-api-key: $WALLA_API_KEY"Това е всичко — щом X акаунтът публикува, известието пристига на телефона за ~10 секунди.
Въпроси за API, доклади за грешки или заявки за увеличаване на квотата: отворете заявка от таба Support във вашето табло или изпратете имейл на hello@support.wallawhats.com.