Svenska
Svenska
Appearance
Svenska
Svenska
Appearance
WallaWhats REST API låter dig hantera telefoner, X-kontoprenumerationer och aviseringshistorik programmatiskt — precis det du annars skulle göra från dashboarden.
https://api.wallawhats.comapplication/jsonVarje begäran måste innehålla en API-nyckel i headern x-api-key:
curl https://api.wallawhats.com/user/profile \
-H "x-api-key: bws_prod_00000000000000000000000000000000"Nycklar skapas i dashboarden under Settings → API Keys eller via POST /apikeys. Nyckelns prefix börjar med bws_ och är 36 tecken långt. Nycklar visas endast en gång, vid skapandet — om du tappar bort en, radera den och skapa en ny.
401 Unauthorized.| Plan | Tillåtna nycklar |
|---|---|
| Free | 1 |
| Pro | 1 |
| Pro+ | 2 |
| Business | 5 |
| Enterprise | 20 |
Om du försöker skapa fler än din plan tillåter returneras 400 med "error": "api key limit reached".
Fel returneras som JSON med ett error-fält och en HTTP-statuskod:
{ "error": "phoneNumber is required" }| Status | Betydelse |
|---|---|
400 | Ogiltiga parametrar, överskriden kvot eller brott mot affärsregel |
401 | Saknad eller ogiltig API-nyckel |
402 | Inte tillräckligt med krediter för att slutföra operationen |
404 | Resursen hittades inte |
500 | Serverfel — försök igen med exponentiell backoff |
lastKey för paginering.403 vid missbruksmönster. Kontakta supporten om du blir rate-limited oväntat.GET /user/profileReturnerar den autentiserade användarens profil.
Svar
{
"userId": "5a4cbd70-...",
"email": "jane@example.com",
"name": "Jane",
"plan": "pro_plus",
"createdAt": 1745000000000
}Exempel
curl https://api.wallawhats.com/user/profile \
-H "x-api-key: bws_prod_..."En telefon är ett verifierat WhatsApp-nummer som kan ta emot aviseringar. Du måste verifiera en telefon innan du prenumererar på ett X-konto med den.
POST /phonesGenererar en 6-siffrig kod och skickar den till numret via WhatsApp. Telefonen skapas i status pending_verification.
Begäran
| Fält | Typ | Obligatoriskt | Anteckningar |
|---|---|---|---|
phoneNumber | string | ja | E.164-format, t.ex. +34612345678 |
displayName | string | nej | Vänlig etikett som visas i dashboarden |
Svar
{ "phoneNumber": "+34612345678", "status": "pending_verification" }Fel
400 "invalid phone number format" — inte E.164400 "phone number limit reached" — överskrider planens tilldelning (Free/Pro/Pro+ 1, Business 3, Enterprise 10)Exempel
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/verifyBekräftar en telefon genom att skicka in den 6-siffriga koden. Koder går ut efter 15 minuter.
Begäran
| Fält | Typ | Obligatoriskt |
|---|---|---|
phoneNumber | string (E.164) | ja |
code | string (6 siffror) | ja |
Svar
{ "phoneNumber": "+34612345678", "status": "verified" }Fel
404 "phone not found"400 "invalid code" — fel kod400 "code expired" — äldre än 15 minuter400 "phone already verified"GET /phonesSvar
{
"phones": [
{
"phoneNumber": "+34612345678",
"status": "verified",
"displayName": "Work",
"createdAt": 1745000000000,
"verifiedAt": 1745000060000
}
],
"count": 1
}DELETE /phones/{phoneNumber}Tar bort telefonen och inaktiverar alla prenumerationer som riktades mot den. URL-koda + som %2B.
Svar
{ "success": true }Exempel
curl -X DELETE "https://api.wallawhats.com/phones/%2B34612345678" \
-H "x-api-key: bws_prod_..."En prenumeration binder ett X-konto du vill bevaka till en av dina verifierade telefoner. När X-kontot publicerar skickar WallaWhats en WhatsApp-avisering till den telefonen.
POST /subscriptionsBegäran
| Fält | Typ | Obligatoriskt | Anteckningar |
|---|---|---|---|
xUsername | string | ja | 1–15 tecken, alfanumeriska + understreck. Prefixet @ accepteras och tas bort. |
phoneNumber | string (E.164) | ja | Måste vara en av dina verifierade telefoner. |
Svar
{
"xUsername": "elonmusk",
"xUserId": "44196397",
"xDisplayName": "Elon Musk",
"xProfileImage": "https://pbs.twimg.com/...",
"phoneNumber": "+34612345678",
"isActive": true,
"createdAt": 1745000000000
}Fel
400 "invalid X username format" — regex misslyckas400 "phone not found" / "phone not verified"400 "subscription limit reached" — se plantabellen nedan404 "X account not found" — användarnamnet hittas inte på XPlanbegränsningar
| Plan | Prenumerationer |
|---|---|
| Free | 1 |
| Pro | 1 |
| Pro+ | 2 |
| Business | 5 |
| Enterprise | 50 |
GET /subscriptionsSvar
{
"subscriptions": [ /* samma form som svaret för POST /subscriptions */ ],
"count": 3
}DELETE /subscriptions/{xUsername}Skiftlägesokänslig matchning på xUsername. Ta bort @ före sändning.
Svar
{ "success": true }Varje avisering WallaWhats levererar loggas här, tillsammans med dess WhatsApp-leveransstatus.
GET /notificationsQuery-parametrar
| Param | Typ | Beskrivning |
|---|---|---|
from | number (ms epoch) | Filtrera till aviseringar skapade vid eller efter denna tidpunkt |
to | number (ms epoch) | Filtrera till aviseringar skapade vid eller före denna tidpunkt |
lastKey | string | Pagineringsmarkör som returneras av föregående svar |
Svar
{
"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..."
}Möjliga status-värden: queued, sent, delivered, read, failed.
Sidstorleken är 50. När lastKey saknas har du nått slutet.
Hantera de nycklar dina applikationer använder för att anropa detta API.
POST /apikeysBegäran
| Fält | Typ | Obligatoriskt |
|---|---|---|
name | string | nej, standardvärde "Default" |
Svar (201 Created)
{
"apiKey": "bws_prod_00000000000000000000000000000000",
"keyPrefix": "bws_prod_00",
"keyName": "CI server",
"createdAt": 1745000000000,
"expiresAt": 1776536000000
}Värde som visas en gång
apiKey returneras endast vid skapandet. Spara den i din secrets manager omedelbart. Efterföljande anrop exponerar endast keyPrefix.
GET /apikeysSvar
[
{
"keyPrefix": "bws_prod_00",
"keyName": "CI server",
"createdAt": 1745000000000,
"lastUsedAt": 1745086400000,
"expiresAt": 1776536000000
}
]DELETE /apikeys/{keyPrefix}Använd det 12-tecken långa keyPrefix från listsvaret — aldrig hela nyckeln.
Svar
{ "success": true }# 1. Skapa en nyckel i dashboarden och exportera den
export WALLA_API_KEY="bws_prod_..."
# 2. Registrera + verifiera ditt WhatsApp-nummer
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"}'
# -> telefonen tar emot en WhatsApp-kod. Skicka in den:
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. Prenumerera på ett X-konto
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. Se aviseringarna rulla in
curl https://api.wallawhats.com/notifications \
-H "x-api-key: $WALLA_API_KEY"Det var det — så fort X-kontot publicerar landar aviseringen på telefonen inom ~10 sekunder.
API-frågor, buggrapporter eller förfrågningar om ökad kvot: öppna ett ärende från fliken Support i din dashboard, eller mejla hello@support.wallawhats.com.