Filipino
Filipino
Appearance
Filipino
Filipino
Appearance
Ang WallaWhats REST API ay nagbibigay-daan sa iyong pamahalaan ang mga telepono, X account subscriptions, at notification history nang programmatically — eksaktong ginagawa mo mula sa dashboard.
https://api.wallawhats.comapplication/jsonBawat request ay dapat may kasamang API key sa x-api-key header:
curl https://api.wallawhats.com/user/profile \
-H "x-api-key: bws_prod_00000000000000000000000000000000"Ang mga key ay ginagawa sa dashboard sa ilalim ng Settings → API Keys o sa pamamagitan ng POST /apikeys. Nagsisimula sa bws_ ang key prefix at 36 na character ang haba. Ang mga key ay ipinapakita isang beses lang, sa paggawa — kung mawala mo ito, i-delete at gumawa ng bago.
401 Unauthorized.| Plan | Mga key na pinapayagan |
|---|---|
| Free | 1 |
| Pro | 1 |
| Pro+ | 2 |
| Business | 5 |
| Enterprise | 20 |
Ang pagtatangkang gumawa ng higit sa pinapayagan ng iyong plan ay nagbabalik ng 400 na may "error": "api key limit reached".
Ang mga error ay ibinabalik bilang JSON na may error field at HTTP status code:
{ "error": "phoneNumber is required" }| Status | Kahulugan |
|---|---|
400 | Invalid na parameters, lumampas sa quota, o business-rule violation |
401 | Nawawala o invalid na API key |
402 | Hindi sapat ang credits para tapusin ang operasyon |
404 | Hindi nakitang resource |
500 | Server error — pakiulit gamit ang exponential backoff |
lastKey cursor para sa pagination.403 sa mga abusive pattern. Makipag-ugnayan sa support kung hindi inaasahang na-rate-limit ka.GET /user/profileNagbabalik ng profile ng authenticated user.
Response
{
"userId": "5a4cbd70-...",
"email": "jane@example.com",
"name": "Jane",
"plan": "pro_plus",
"createdAt": 1745000000000
}Halimbawa
curl https://api.wallawhats.com/user/profile \
-H "x-api-key: bws_prod_..."Ang phone ay isang verified WhatsApp number na makakatanggap ng alerts. Kailangan mong i-verify ang telepono bago mag-subscribe ng X account dito.
POST /phonesBumubuo ng 6-digit code at ipinapadala ito sa numero sa pamamagitan ng WhatsApp. Ang telepono ay ginagawa sa pending_verification state.
Request
| Field | Type | Kailangan | Notes |
|---|---|---|---|
phoneNumber | string | oo | E.164 format, hal. +34612345678 |
displayName | string | hindi | Friendly label na ipinapakita sa dashboard |
Response
{ "phoneNumber": "+34612345678", "status": "pending_verification" }Mga Error
400 "invalid phone number format" — hindi E.164400 "phone number limit reached" — lumampas sa allowance ng plan (Free/Pro/Pro+ 1, Business 3, Enterprise 10)Halimbawa
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/verifyKumukumpirma ng telepono sa pamamagitan ng pag-submit ng 6-digit code. Nag-e-expire ang mga code pagkatapos ng 15 minuto.
Request
| Field | Type | Kailangan |
|---|---|---|
phoneNumber | string (E.164) | oo |
code | string (6 digits) | oo |
Response
{ "phoneNumber": "+34612345678", "status": "verified" }Mga Error
404 "phone not found"400 "invalid code" — maling code400 "code expired" — higit sa 15 minuto ang tanda400 "phone already verified"GET /phonesResponse
{
"phones": [
{
"phoneNumber": "+34612345678",
"status": "verified",
"displayName": "Work",
"createdAt": 1745000000000,
"verifiedAt": 1745000060000
}
],
"count": 1
}DELETE /phones/{phoneNumber}Inaalis ang telepono at dini-deactivate ang anumang subscriptions na naka-target dito. URL-encode ang + bilang %2B.
Response
{ "success": true }Halimbawa
curl -X DELETE "https://api.wallawhats.com/phones/%2B34612345678" \
-H "x-api-key: bws_prod_..."Ang subscription ay nag-uugnay ng X account na gusto mong subaybayan sa isa sa iyong mga verified phones. Kapag nag-post ang X account, nagpapadala ang WallaWhats ng WhatsApp alert sa teleponong iyon.
POST /subscriptionsRequest
| Field | Type | Kailangan | Notes |
|---|---|---|---|
xUsername | string | oo | 1–15 chars, alphanumeric + underscore. Tinatanggap ang @ prefix at inaalis. |
phoneNumber | string (E.164) | oo | Dapat isa sa iyong mga verified phones. |
Response
{
"xUsername": "elonmusk",
"xUserId": "44196397",
"xDisplayName": "Elon Musk",
"xProfileImage": "https://pbs.twimg.com/...",
"phoneNumber": "+34612345678",
"isActive": true,
"createdAt": 1745000000000
}Mga Error
400 "invalid X username format" — regex fail400 "phone not found" / "phone not verified"400 "subscription limit reached" — tingnan ang plan table sa ibaba404 "X account not found" — hindi nare-resolve ang username sa XPlan limits
| Plan | Subscriptions |
|---|---|
| Free | 1 |
| Pro | 1 |
| Pro+ | 2 |
| Business | 5 |
| Enterprise | 50 |
GET /subscriptionsResponse
{
"subscriptions": [ /* same shape as POST /subscriptions response */ ],
"count": 3
}DELETE /subscriptions/{xUsername}Case-insensitive ang match sa xUsername. Alisin ang @ bago ipadala.
Response
{ "success": true }Bawat alert na inihatid ng WallaWhats ay naka-log dito, kasama ang WhatsApp delivery status nito.
GET /notificationsQuery parameters
| Param | Type | Paglalarawan |
|---|---|---|
from | number (ms epoch) | I-filter sa mga notification na nagawa sa o pagkatapos ng oras na ito |
to | number (ms epoch) | I-filter sa mga notification na nagawa sa o bago ang oras na ito |
lastKey | string | Pagination cursor na ibinalik ng nakaraang response |
Response
{
"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..."
}Mga posibleng status values: queued, sent, delivered, read, failed.
Ang page size ay 50. Kapag wala ang lastKey, narating mo na ang dulo.
Pamahalaan ang mga key na ginagamit ng iyong mga application para tawagan ang API na ito.
POST /apikeysRequest
| Field | Type | Kailangan |
|---|---|---|
name | string | hindi, default sa "Default" |
Response (201 Created)
{
"apiKey": "bws_prod_00000000000000000000000000000000",
"keyPrefix": "bws_prod_00",
"keyName": "CI server",
"createdAt": 1745000000000,
"expiresAt": 1776536000000
}Show-once value
Ang apiKey ay ibinabalik sa paggawa lamang. I-store ito agad sa iyong secrets manager. Ang mga kasunod na tawag ay naglalantad lamang ng keyPrefix.
GET /apikeysResponse
[
{
"keyPrefix": "bws_prod_00",
"keyName": "CI server",
"createdAt": 1745000000000,
"lastUsedAt": 1745086400000,
"expiresAt": 1776536000000
}
]DELETE /apikeys/{keyPrefix}Gamitin ang 12-character na keyPrefix mula sa list response — huwag kailanman ang buong key.
Response
{ "success": true }# 1. Gumawa ng key sa dashboard at i-export ito
export WALLA_API_KEY="bws_prod_..."
# 2. I-register + i-verify ang iyong WhatsApp number
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"}'
# -> ang telepono ay makakatanggap ng WhatsApp code. I-submit ito:
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. Mag-subscribe sa isang X account
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. Panoorin ang dating ng mga alert
curl https://api.wallawhats.com/notifications \
-H "x-api-key: $WALLA_API_KEY"Iyan lang — kapag nag-post ang X account, dumarating ang alert sa telepono sa loob ng ~10 segundo.
Mga tanong sa API, bug reports, o quota-increase requests: mag-open ng ticket mula sa Support tab sa iyong dashboard, o mag-email sa hello@support.wallawhats.com.