Skip to content

API referencia

REST API WallaWhats vám umožňuje spravovať telefóny, odbery účtov X a históriu upozornení programovo — presne to, čo by ste inak robili z ovládacieho panela.

  • Základné URL: https://api.wallawhats.com
  • Typ obsahu: application/json
  • Autentifikácia: API kľúč (hlavička)
  • Verziovanie: API je stabilné. Zásadné zmeny sú oznamované 30 dní vopred e-mailom na každý účet.

Autentifikácia

Každá žiadosť musí obsahovať API kľúč v hlavičke x-api-key:

bash
curl https://api.wallawhats.com/user/profile \
  -H "x-api-key: bws_prod_00000000000000000000000000000000"

Kľúče sa vytvárajú na ovládacom paneli v Settings → API Keys alebo cez POST /apikeys. Prefix kľúča začína na bws_ a má 36 znakov. Kľúče sú zobrazené raz, pri vytvorení — ak niektorý stratíte, zmažte ho a vytvorte nový.

Rozsah a platnosť

  • Kľúč sa autentifikuje ako používateľ, ktorý ho vytvoril. Má rovnaké oprávnenia ako tento používateľ a započítava sa do rovnakých kvót plánu.
  • Kľúče sú platné 365 dní. Rotujte ich vytvorením nového kľúča, prepnutím a zmazaním starého.
  • Chýbajúce, poškodené alebo zneplatnené kľúče vracajú 401 Unauthorized.

Limity plánu na kľúče

PlánPovolené kľúče
Free1
Pro1
Pro+2
Business5
Enterprise20

Pokus o vytvorenie viacerých kľúčov, ako váš plán umožňuje, vráti 400 s "error": "api key limit reached".

Chyby

Chyby sa vracajú ako JSON s poľom error a stavovým kódom HTTP:

json
{ "error": "phoneNumber is required" }
StavVýznam
400Neplatné parametre, prekročená kvóta alebo porušenie obchodného pravidla
401Chýbajúci alebo neplatný API kľúč
402Nedostatok kreditov na dokončenie operácie
404Zdroj nenájdený
500Chyba servera — zopakujte s exponenciálnym odstupom

Limity rýchlosti

  • Predvolené: 20 žiadostí/sekundu na API kľúč, s nárazovou kapacitou až 40.
  • Zoznamové endpointy vracajú až 50 položiek na stránku; na stránkovanie použite kurzor lastKey.
  • Pravidlá WAF môžu vrátiť 403 pri podozrivých vzorcoch. Ak vás neočakávane obmedzuje rýchlostný limit, kontaktujte podporu.

User

Získanie vášho profilu

GET /user/profile

Vracia profil autentifikovaného používateľa.

Odpoveď

json
{
  "userId": "5a4cbd70-...",
  "email": "jane@example.com",
  "name": "Jane",
  "plan": "pro_plus",
  "createdAt": 1745000000000
}

Príklad

bash
curl https://api.wallawhats.com/user/profile \
  -H "x-api-key: bws_prod_..."

Phones

Telefón je overené číslo WhatsApp, ktoré môže prijímať upozornenia. Predtým, než k nemu prihlásite účet X, musíte telefón overiť.

Registrácia telefónu

POST /phones

Vygeneruje 6-ciferný kód a odošle ho na číslo cez WhatsApp. Telefón je vytvorený v stave pending_verification.

Žiadosť

PoleTypPovinnéPoznámky
phoneNumberstringánoFormát E.164, napr. +34612345678
displayNamestringniePriateľský názov zobrazený na ovládacom paneli

Odpoveď

json
{ "phoneNumber": "+34612345678", "status": "pending_verification" }

Chyby

  • 400 "invalid phone number format" — nie je E.164
  • 400 "phone number limit reached" — presahuje povolený limit plánu (Free/Pro/Pro+ 1, Business 3, Enterprise 10)

Príklad

bash
curl -X POST https://api.wallawhats.com/phones \
  -H "x-api-key: bws_prod_..." \
  -H "Content-Type: application/json" \
  -d '{"phoneNumber": "+34612345678", "displayName": "Work"}'

Overenie telefónu

POST /phones/verify

Potvrdí telefón odoslaním 6-ciferného kódu. Kódy vypršia po 15 minútach.

Žiadosť

PoleTypPovinné
phoneNumberstring (E.164)áno
codestring (6 číslic)áno

Odpoveď

json
{ "phoneNumber": "+34612345678", "status": "verified" }

Chyby

  • 404 "phone not found"
  • 400 "invalid code" — nesprávny kód
  • 400 "code expired" — starší ako 15 minút
  • 400 "phone already verified"

Zoznam vašich telefónov

GET /phones

Odpoveď

json
{
  "phones": [
    {
      "phoneNumber": "+34612345678",
      "status": "verified",
      "displayName": "Work",
      "createdAt": 1745000000000,
      "verifiedAt": 1745000060000
    }
  ],
  "count": 1
}

Zmazanie telefónu

DELETE /phones/{phoneNumber}

Odstráni telefón a deaktivuje všetky odbery naň smerované. Zakódujte + ako %2B.

Odpoveď

json
{ "success": true }

Príklad

bash
curl -X DELETE "https://api.wallawhats.com/phones/%2B34612345678" \
  -H "x-api-key: bws_prod_..."

Subscriptions

Odber prepája účet X, ktorý chcete sledovať, s jedným z vašich overených telefónov. Keď účet X zverejní príspevok, WallaWhats odošle upozornenie na WhatsApp na tento telefón.

Vytvorenie odberu

POST /subscriptions

Žiadosť

PoleTypPovinnéPoznámky
xUsernamestringáno1–15 znakov, alfanumerické + podčiarkovník. Prefix @ je akceptovaný a odstránený.
phoneNumberstring (E.164)ánoMusí byť jedným z vašich overených telefónov.

Odpoveď

json
{
  "xUsername": "elonmusk",
  "xUserId": "44196397",
  "xDisplayName": "Elon Musk",
  "xProfileImage": "https://pbs.twimg.com/...",
  "phoneNumber": "+34612345678",
  "isActive": true,
  "createdAt": 1745000000000
}

Chyby

  • 400 "invalid X username format" — chyba regulárneho výrazu
  • 400 "phone not found" / "phone not verified"
  • 400 "subscription limit reached" — pozri tabuľku plánov nižšie
  • 404 "X account not found" — používateľské meno sa na X nenašlo

Limity plánu

PlánOdbery
Free1
Pro1
Pro+2
Business5
Enterprise50

Zoznam vašich odberov

GET /subscriptions

Odpoveď

json
{
  "subscriptions": [ /* rovnaký tvar ako odpoveď POST /subscriptions */ ],
  "count": 3
}

Zmazanie odberu

DELETE /subscriptions/{xUsername}

Porovnanie xUsername bez ohľadu na veľkosť písmen. Pred odoslaním odstráňte @.

Odpoveď

json
{ "success": true }

Notifications

Každé doručené upozornenie WallaWhats je tu zaznamenané, vrátane jeho stavu doručenia na WhatsApp.

Zoznam upozornení

GET /notifications

Parametre dopytu

ParameterTypPopis
fromnumber (ms epocha)Filter na upozornenia vytvorené v tomto čase alebo neskôr
tonumber (ms epocha)Filter na upozornenia vytvorené v tomto čase alebo skôr
lastKeystringKurzor stránkovania vrátený predchádzajúcou odpoveďou

Odpoveď

json
{
  "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..."
}

Možné hodnoty status: queued, sent, delivered, read, failed.

Veľkosť stránky je 50. Ak lastKey chýba, dosiahli ste koniec.


API keys

Spravujte kľúče, ktoré vaše aplikácie používajú na volanie tohto API.

Vytvorenie API kľúča

POST /apikeys

Žiadosť

PoleTypPovinné
namestringnie, predvolené je "Default"

Odpoveď (201 Created)

json
{
  "apiKey": "bws_prod_00000000000000000000000000000000",
  "keyPrefix": "bws_prod_00",
  "keyName": "CI server",
  "createdAt": 1745000000000,
  "expiresAt": 1776536000000
}

Hodnota zobrazená iba raz

apiKey je vrátené iba pri vytvorení. Ihneď ho uložte do svojho správcu tajomstiev. Následné volania odhaľujú iba keyPrefix.

Zoznam vašich API kľúčov

GET /apikeys

Odpoveď

json
[
  {
    "keyPrefix": "bws_prod_00",
    "keyName": "CI server",
    "createdAt": 1745000000000,
    "lastUsedAt": 1745086400000,
    "expiresAt": 1776536000000
  }
]

Zmazanie API kľúča

DELETE /apikeys/{keyPrefix}

Použite 12-znakový keyPrefix z odpovede zoznamu — nikdy celý kľúč.

Odpoveď

json
{ "success": true }

Rýchly štart

bash
# 1. Vytvorte kľúč na ovládacom paneli a vyexportujte ho
export WALLA_API_KEY="bws_prod_..."

# 2. Zaregistrujte + overte svoje číslo 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"}'
# -> telefón dostane kód cez WhatsApp. Odošlite ho:
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. Prihláste sa na odber účtu 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. Sledujte, ako prichádzajú upozornenia
curl https://api.wallawhats.com/notifications \
  -H "x-api-key: $WALLA_API_KEY"

A je to — akonáhle účet X niečo zverejní, upozornenie dorazí na telefón do ~10 sekúnd.

Podpora

Otázky k API, hlásenia chýb alebo žiadosti o zvýšenie kvót: otvorte tiket zo záložky Support na vašom ovládacom paneli alebo napíšte e-mail na hello@support.wallawhats.com.

WallaWhats Documentation