Referenz
WA Lookup API-Referenz
Alle Endpunkte teilen sich einen API-Schlüssel und ein Guthaben.
| Eintrag | Wert |
|---|---|
| Basis-URL | https://walookup.com |
| Auth-Header | X-API-Key: sk_your_api_key |
| Antwort-Envelope | { code, msg, data } |
Preise werden hier nicht aufgeführt; jedes Produkt wird pro erfolgreicher Prüfung berechnet. Preise ansehen
Authentifizierung
Verwenden Sie einen in den Einstellungen erstellten API-Schlüssel und senden Sie ihn bei jeder Anfrage im Header X-API-Key mit.
X-API-Key: sk_your_api_keyHalten Sie Ihren API-Schlüssel geheimRufen Sie diesen Endpunkt immer von Ihrem Server aus auf. Jeder, der den Schlüssel besitzt, kann Ihr Guthaben verbrauchen.
Synchrone Prüfungen
Übermitteln Sie eine Kennung oder bis zu 100 in einer Anfrage und lesen Sie das Ergebnis in derselben Antwort. Kein Polling, keine Callbacks. Ein unbestimmtes Ergebnis liefert 422 mit dem Code 42200 und wird nicht berechnet. Eine Mehrfachanfrage behält die Eingabereihenfolge bei, rechnet jede Kennung einzeln ab und hat 300 Sekunden Zeit – wird sie nicht rechtzeitig fertig, schlägt die gesamte Anfrage fehl und alle Abbuchungen werden erstattet.
Parameter
| Feld | Typ | Beschreibung |
|---|---|---|
service_type | string | Produktcode, eines der unten aufgeführten Produkte. |
identifier | string | Einzelprüfung: eine Telefonnummer im E.164-Format, mit oder ohne führendes +. Der Server normalisiert sie. |
identifiers | string[] | Mehrfachprüfung: 1 bis 100 Telefonnummern. Die Antwort behält diese Reihenfolge bei. |
Produkte in dieser Gruppe
WhatsApp-RegistrierungsprüfungwsBestätigen Sie, ob eine Nummer bei WhatsApp registriert ist – nützlich, um eine Kontaktliste vor dem Versand zu prüfen.Produktseite
WhatsApp-Profilbildprüfungws_avatarPrüfen Sie, ob eine Nummer bei WhatsApp registriert ist, und erhalten Sie die Profilbildfelder: avatar (ob ein Profilbild ermittelt wurde) und avatar_url.Produktseite
WhatsApp-Business-Kontoprüfungws_businessPrüfen Sie die Registrierung und ermitteln Sie, ob die Nummer ein WhatsApp Business-Konto nutzt.Produktseite

WhatsApp-Registrierungsprüfung
wsTelefonBestätigen Sie, ob eine Nummer bei WhatsApp registriert ist – nützlich, um eine Kontaktliste vor dem Versand zu prüfen.
Einzelprüfung
POST/api/v1/checkcurl -X POST "https://walookup.com/api/v1/check" \
-H "X-API-Key: sk_your_api_key" \
-H "Content-Type: application/json" \
-d '{ "service_type": "ws", "identifier": "+17253100591" }'{
"code": 0,
"msg": "ok",
"data": {
"service_type": "ws",
"identifier": "+17253100591",
"registered": true
}
}Antwortfelder
| Feld | Typ | Beschreibung |
|---|---|---|
registered | boolean | Ob die Nummer bei WhatsApp registriert ist. |
Mehrfachprüfung
POST/api/v1/batch-checkcurl -X POST "https://walookup.com/api/v1/batch-check" \
-H "X-API-Key: sk_your_api_key" \
-H "Content-Type: application/json" \
-d '{ "service_type": "ws", "identifiers": ["+17253100591", "+14155550000", "12345"] }'{
"code": 0,
"msg": "ok",
"data": {
"service_type": "ws",
"total": 3,
"succeeded": 2,
"failed": 1,
"results": [
{
"identifier": "+17253100591",
"exists": true,
"registered": true
},
{
"identifier": "+14155550000",
"exists": true,
"registered": false
},
{
"identifier": "12345",
"exists": false
}
]
}
}Antwortfelder
| Feld | Typ | Beschreibung |
|---|---|---|
exists | boolean | Ob diese Nummer ein Ergebnis geliefert hat. false bedeutet, dass das Format ungültig war, das Ergebnis unbestimmt war oder die Prüfung fehlgeschlagen ist; bei false ist keines der folgenden Felder vorhanden. |
registered | boolean | Ob die Nummer registered ist. Nur vorhanden, wenn exists true ist, mit derselben Bedeutung wie bei der Einzelprüfung. |

WhatsApp-Profilbildprüfung
ws_avatarTelefonPrüfen Sie, ob eine Nummer bei WhatsApp registriert ist, und erhalten Sie die Profilbildfelder: avatar (ob ein Profilbild ermittelt wurde) und avatar_url.
Einzelprüfung
POST/api/v1/checkcurl -X POST "https://walookup.com/api/v1/check" \
-H "X-API-Key: sk_your_api_key" \
-H "Content-Type: application/json" \
-d '{ "service_type": "ws_avatar", "identifier": "+17253100591" }'{
"code": 0,
"msg": "ok",
"data": {
"service_type": "ws_avatar",
"identifier": "+17253100591",
"registered": true,
"avatar": true,
"avatar_url": "<image url>"
}
}Antwortfelder
| Feld | Typ | Beschreibung |
|---|---|---|
registered | boolean | Ob die Nummer bei WhatsApp registriert ist. |
avatar | boolean | Ob für das Konto ein Profilbild festgelegt ist. avatar_url kann dennoch leer sein, wenn das Bild nicht verfügbar ist. |
avatar_url | string | Die URL des Profilbilds; ein leerer String, wenn keine URL verfügbar ist. |
Mehrfachprüfung
POST/api/v1/batch-checkcurl -X POST "https://walookup.com/api/v1/batch-check" \
-H "X-API-Key: sk_your_api_key" \
-H "Content-Type: application/json" \
-d '{ "service_type": "ws_avatar", "identifiers": ["+17253100591", "+14155550000", "12345"] }'{
"code": 0,
"msg": "ok",
"data": {
"service_type": "ws_avatar",
"total": 3,
"succeeded": 2,
"failed": 1,
"results": [
{
"identifier": "+17253100591",
"exists": true,
"registered": true,
"avatar": true,
"avatar_url": "<image url>"
},
{
"identifier": "+14155550000",
"exists": true,
"registered": false,
"avatar": false,
"avatar_url": ""
},
{
"identifier": "12345",
"exists": false
}
]
}
}Antwortfelder
| Feld | Typ | Beschreibung |
|---|---|---|
exists | boolean | Ob diese Nummer ein Ergebnis geliefert hat. false bedeutet, dass das Format ungültig war, das Ergebnis unbestimmt war oder die Prüfung fehlgeschlagen ist; bei false ist keines der folgenden Felder vorhanden. |
registered | boolean | Ob die Nummer registered ist. Nur vorhanden, wenn exists true ist, mit derselben Bedeutung wie bei der Einzelprüfung. |
avatar | boolean | Ob für das Konto ein Profilbild festgelegt ist. avatar_url kann dennoch leer sein, wenn das Bild nicht verfügbar ist. |
avatar_url | string | Die URL des Profilbilds; ein leerer String, wenn keine URL verfügbar ist. |

WhatsApp-Business-Kontoprüfung
ws_businessTelefonPrüfen Sie die Registrierung und ermitteln Sie, ob die Nummer ein WhatsApp Business-Konto nutzt.
Einzelprüfung
POST/api/v1/checkcurl -X POST "https://walookup.com/api/v1/check" \
-H "X-API-Key: sk_your_api_key" \
-H "Content-Type: application/json" \
-d '{ "service_type": "ws_business", "identifier": "+17253100591" }'{
"code": 0,
"msg": "ok",
"data": {
"service_type": "ws_business",
"identifier": "+17253100591",
"registered": true,
"business": true
}
}Antwortfelder
| Feld | Typ | Beschreibung |
|---|---|---|
registered | boolean | Ob die Nummer bei WhatsApp registriert ist. |
business | boolean | Ob es sich um ein WhatsApp Business-Konto handelt. |
Mehrfachprüfung
POST/api/v1/batch-checkcurl -X POST "https://walookup.com/api/v1/batch-check" \
-H "X-API-Key: sk_your_api_key" \
-H "Content-Type: application/json" \
-d '{ "service_type": "ws_business", "identifiers": ["+17253100591", "+14155550000", "12345"] }'{
"code": 0,
"msg": "ok",
"data": {
"service_type": "ws_business",
"total": 3,
"succeeded": 2,
"failed": 1,
"results": [
{
"identifier": "+17253100591",
"exists": true,
"registered": true,
"business": true
},
{
"identifier": "+14155550000",
"exists": true,
"registered": false,
"business": false
},
{
"identifier": "12345",
"exists": false
}
]
}
}Antwortfelder
| Feld | Typ | Beschreibung |
|---|---|---|
exists | boolean | Ob diese Nummer ein Ergebnis geliefert hat. false bedeutet, dass das Format ungültig war, das Ergebnis unbestimmt war oder die Prüfung fehlgeschlagen ist; bei false ist keines der folgenden Felder vorhanden. |
registered | boolean | Ob die Nummer registered ist. Nur vorhanden, wenn exists true ist, mit derselben Bedeutung wie bei der Einzelprüfung. |
business | boolean | Ob es sich um ein WhatsApp Business-Konto handelt. |
Asynchrone Prüfungen
Laden Sie eine Datei hoch und erhalten Sie sofort eine Aufgaben-ID; fragen Sie diese ID dann ab, bis sie erfolgreich ist. Die erfolgreiche Antwort enthält result_url, den Download-Link für das Ergebnis. Es gibt nur zwei Aktionen: übermitteln und abfragen. Fragen Sie höchstens einmal alle 30 Sekunden ab.
Parameter
| Feld | Typ | Beschreibung |
|---|---|---|
service_type | string | Produktcode für die Massenprüfung, eines der unten aufgeführten Produkte. |
country | string | ISO-3166-1-Code wie US. Erforderlich für Nummernaufgaben: Jede Nummer muss ihre Ländervorwahl enthalten und zu diesem Land gehören (Nummern, die das nicht tun, werden ausgelassen und nicht berechnet); außerdem bestimmt er das Routing. Bei multipart muss er vor file stehen. |
file | file | Eine .txt- oder .csv-Datei mit einer Kennung pro Zeile, bis zu max_file_bytes (standardmäßig 20MB). |
Idempotency-Key | header | Optional, bis zu 128 Zeichen. Wird derselbe Schlüssel erneut gesendet, wird die ursprüngliche Aufgabe zurückgegeben, statt eine zweite zu erstellen. |
Produkte in dieser Gruppe
WhatsApp-Massenprüfung der Registrierungws_batchLaden Sie eine ganze Datei mit Nummern hoch, finden Sie heraus, welche bei WhatsApp registriert sind, und laden Sie die Ergebnisdatei herunter, sobald sie fertig ist.Produktseite
WhatsApp-Massenprüfung des Profilbildsws_avatar_batchPrüfen Sie eine ganze Liste auf WhatsApp-Registrierung und Profilbild: ob für jede registrierte Nummer ein Profilbild festgelegt ist, plus die URL des Profilbilds.Produktseite
WhatsApp-Massenprüfung für Business-Kontenws_business_batchPrüfen Sie eine ganze Liste auf WhatsApp Business-Konten: ob jede Nummer bei WhatsApp ist und ob es sich um ein WhatsApp Business-Konto handelt.Produktseite
WhatsApp-Massenprüfung der Aktivitätws_active_batchRegistrierungsstatus plus aktive Tage – Tage seit der letzten Aktivität der Nummer –, damit Sie in einer ganzen Liste aktive von ruhenden Nummern unterscheiden können.Produktseite

WhatsApp-Massenprüfung der Registrierung
ws_batchTelefon1.000–500.000 pro AufgabeLaden Sie eine ganze Datei mit Nummern hoch, finden Sie heraus, welche bei WhatsApp registriert sind, und laden Sie die Ergebnisdatei herunter, sobald sie fertig ist.
Aufgabe übermitteln
POST/api/v1/bulk-taskscurl -X POST "https://walookup.com/api/v1/bulk-tasks" \
-H "X-API-Key: sk_your_api_key" \
-F service_type=ws_batch \
-F country=US \
-F file=@numbers.txt{
"code": 0,
"msg": "ok",
"data": {
"id": "3f9c2a7d8e4b4c1a9f0e6b2d5c8a7e13",
"product": "ws_batch",
"status": "processing",
"country": "US",
"submitted_lines": 1015,
"total": 1015,
"invalid_cnt": 0,
"no_code_cnt": 0,
"other_country_cnt": 0,
"duplicate_cnt": 0,
"preparing": true,
"created_at": "2026-09-08T09:30:00Z"
}
}Aufgabe abfragen
GET/api/v1/bulk-tasks/{id}curl "https://walookup.com/api/v1/bulk-tasks/3f9c2a7d8e4b4c1a9f0e6b2d5c8a7e13" \
-H "X-API-Key: sk_your_api_key"{
"code": 0,
"msg": "ok",
"data": {
"id": "3f9c2a7d8e4b4c1a9f0e6b2d5c8a7e13",
"product": "ws_batch",
"status": "success",
"country": "US",
"submitted_lines": 1015,
"total": 1000,
"invalid_cnt": 3,
"no_code_cnt": 0,
"other_country_cnt": 0,
"duplicate_cnt": 12,
"preparing": false,
"success_cnt": 990,
"failure_cnt": 10,
"result_url": "https://…/result.csv",
"created_at": "2026-09-08T09:30:00Z"
}
}Ergebnisspalten
| Feld | Beispiel: | Beschreibung |
|---|---|---|
identifier | 17253100591 | Die übermittelte Nummer als reine Ziffern mit Ländervorwahl, ohne Pluszeichen oder Leerzeichen (z. B. 17253100591). |
activated | true | Ob die Nummer bei WhatsApp registriert ist: true oder false. |

WhatsApp-Massenprüfung des Profilbilds
ws_avatar_batchTelefon1.000–500.000 pro AufgabePrüfen Sie eine ganze Liste auf WhatsApp-Registrierung und Profilbild: ob für jede registrierte Nummer ein Profilbild festgelegt ist, plus die URL des Profilbilds.
Aufgabe übermitteln
POST/api/v1/bulk-taskscurl -X POST "https://walookup.com/api/v1/bulk-tasks" \
-H "X-API-Key: sk_your_api_key" \
-F service_type=ws_avatar_batch \
-F country=US \
-F file=@numbers.txt{
"code": 0,
"msg": "ok",
"data": {
"id": "3f9c2a7d8e4b4c1a9f0e6b2d5c8a7e13",
"product": "ws_avatar_batch",
"status": "processing",
"country": "US",
"submitted_lines": 1015,
"total": 1015,
"invalid_cnt": 0,
"no_code_cnt": 0,
"other_country_cnt": 0,
"duplicate_cnt": 0,
"preparing": true,
"created_at": "2026-09-08T09:30:00Z"
}
}Aufgabe abfragen
GET/api/v1/bulk-tasks/{id}curl "https://walookup.com/api/v1/bulk-tasks/3f9c2a7d8e4b4c1a9f0e6b2d5c8a7e13" \
-H "X-API-Key: sk_your_api_key"{
"code": 0,
"msg": "ok",
"data": {
"id": "3f9c2a7d8e4b4c1a9f0e6b2d5c8a7e13",
"product": "ws_avatar_batch",
"status": "success",
"country": "US",
"submitted_lines": 1015,
"total": 1000,
"invalid_cnt": 3,
"no_code_cnt": 0,
"other_country_cnt": 0,
"duplicate_cnt": 12,
"preparing": false,
"success_cnt": 990,
"failure_cnt": 10,
"result_url": "https://…/result.csv",
"created_at": "2026-09-08T09:30:00Z"
}
}Ergebnisspalten
| Feld | Beispiel: | Beschreibung |
|---|---|---|
identifier | 17253100591 | Die übermittelte Nummer als reine Ziffern mit Ländervorwahl, ohne Pluszeichen oder Leerzeichen (z. B. 17253100591). |
activated | true | Ob die Nummer bei WhatsApp registriert ist: true oder false. Ist der Wert nicht true, bleiben alle anderen Spalten dieser Zeile leer. |
avatar | true | Ob für das Konto ein Profilbild festgelegt ist: true oder false. avatar_url kann dennoch leer sein, wenn das Bild nicht verfügbar ist. |
avatar_url | https://pps.whatsapp.net/v/example.jpg | Die URL des Profilbilds; leer, wenn keine URL verfügbar ist. |

WhatsApp-Massenprüfung für Business-Konten
ws_business_batchTelefon1.000–500.000 pro AufgabePrüfen Sie eine ganze Liste auf WhatsApp Business-Konten: ob jede Nummer bei WhatsApp ist und ob es sich um ein WhatsApp Business-Konto handelt.
Aufgabe übermitteln
POST/api/v1/bulk-taskscurl -X POST "https://walookup.com/api/v1/bulk-tasks" \
-H "X-API-Key: sk_your_api_key" \
-F service_type=ws_business_batch \
-F country=US \
-F file=@numbers.txt{
"code": 0,
"msg": "ok",
"data": {
"id": "3f9c2a7d8e4b4c1a9f0e6b2d5c8a7e13",
"product": "ws_business_batch",
"status": "processing",
"country": "US",
"submitted_lines": 1015,
"total": 1015,
"invalid_cnt": 0,
"no_code_cnt": 0,
"other_country_cnt": 0,
"duplicate_cnt": 0,
"preparing": true,
"created_at": "2026-09-08T09:30:00Z"
}
}Aufgabe abfragen
GET/api/v1/bulk-tasks/{id}curl "https://walookup.com/api/v1/bulk-tasks/3f9c2a7d8e4b4c1a9f0e6b2d5c8a7e13" \
-H "X-API-Key: sk_your_api_key"{
"code": 0,
"msg": "ok",
"data": {
"id": "3f9c2a7d8e4b4c1a9f0e6b2d5c8a7e13",
"product": "ws_business_batch",
"status": "success",
"country": "US",
"submitted_lines": 1015,
"total": 1000,
"invalid_cnt": 3,
"no_code_cnt": 0,
"other_country_cnt": 0,
"duplicate_cnt": 12,
"preparing": false,
"success_cnt": 990,
"failure_cnt": 10,
"result_url": "https://…/result.csv",
"created_at": "2026-09-08T09:30:00Z"
}
}Ergebnisspalten
| Feld | Beispiel: | Beschreibung |
|---|---|---|
identifier | 17253100591 | Die übermittelte Nummer als reine Ziffern mit Ländervorwahl, ohne Pluszeichen oder Leerzeichen (z. B. 17253100591). |
activated | true | Ob die Nummer bei WhatsApp registriert ist: true oder false. Ist der Wert nicht true, bleiben alle anderen Spalten dieser Zeile leer. |
business | false | Ob es sich um ein WhatsApp Business-Konto handelt: true oder false. |

WhatsApp-Massenprüfung der Aktivität
ws_active_batchTelefon1.000–500.000 pro AufgabeRegistrierungsstatus plus aktive Tage – Tage seit der letzten Aktivität der Nummer –, damit Sie in einer ganzen Liste aktive von ruhenden Nummern unterscheiden können.
Aufgabe übermitteln
POST/api/v1/bulk-taskscurl -X POST "https://walookup.com/api/v1/bulk-tasks" \
-H "X-API-Key: sk_your_api_key" \
-F service_type=ws_active_batch \
-F country=US \
-F file=@numbers.txt{
"code": 0,
"msg": "ok",
"data": {
"id": "3f9c2a7d8e4b4c1a9f0e6b2d5c8a7e13",
"product": "ws_active_batch",
"status": "processing",
"country": "US",
"submitted_lines": 1015,
"total": 1015,
"invalid_cnt": 0,
"no_code_cnt": 0,
"other_country_cnt": 0,
"duplicate_cnt": 0,
"preparing": true,
"created_at": "2026-09-08T09:30:00Z"
}
}Aufgabe abfragen
GET/api/v1/bulk-tasks/{id}curl "https://walookup.com/api/v1/bulk-tasks/3f9c2a7d8e4b4c1a9f0e6b2d5c8a7e13" \
-H "X-API-Key: sk_your_api_key"{
"code": 0,
"msg": "ok",
"data": {
"id": "3f9c2a7d8e4b4c1a9f0e6b2d5c8a7e13",
"product": "ws_active_batch",
"status": "success",
"country": "US",
"submitted_lines": 1015,
"total": 1000,
"invalid_cnt": 3,
"no_code_cnt": 0,
"other_country_cnt": 0,
"duplicate_cnt": 12,
"preparing": false,
"success_cnt": 990,
"failure_cnt": 10,
"result_url": "https://…/result.csv",
"created_at": "2026-09-08T09:30:00Z"
}
}Ergebnisspalten
| Feld | Beispiel: | Beschreibung |
|---|---|---|
identifier | 17253100591 | Die übermittelte Nummer als reine Ziffern mit Ländervorwahl, ohne Pluszeichen oder Leerzeichen (z. B. 17253100591). |
activated | true | Ob die Nummer bei WhatsApp registriert ist: true oder false. Ist der Wert nicht true, bleiben alle anderen Spalten dieser Zeile leer. |
activedays | 9 | Tage seit der letzten Aktivität der Nummer – je kleiner, desto aktueller. |
Guthaben
Liest das aktuelle Kontoguthaben in USD-Mikroeinheiten aus. Nur lesend: Es wird kein Prüfdatensatz erstellt und nichts berechnet.
Guthaben
GET/api/v1/balancecurl "https://walookup.com/api/v1/balance" \
-H "X-API-Key: sk_your_api_key"{
"code": 0,
"msg": "ok",
"data": {
"balance_micros": 12500000
}
}Parallelität, Zeitlimits und Wiederholungsverhalten
Prüfungen erfolgen synchron. Entscheiden Sie anhand des zurückgegebenen Codes, ob Sie das Ergebnis übernehmen oder die Anfrage wiederholen.
| Feld | Beschreibung |
|---|---|
5 gleichzeitige Anfragen pro Benutzer | Einzel- und Mehrfachprüfungen teilen sich dieses Limit, und eine Mehrfachanfrage zählt als eine Anfrage, unabhängig davon, wie viele Nummern sie enthält. Zusätzlich läuft pro Konto jeweils nur eine Mehrfachprüfung; eine zweite wird abgelehnt, bis die erste abgeschlossen ist. Wird eines der Limits erreicht, wird sofort code 42901 ohne Berechnung zurückgegeben, zusammen mit einem Retry-After-Header – senden Sie die Anfrage erneut, sobald eine laufende Anfrage abgeschlossen ist. |
60 s Einzelprüfung, 300 s Mehrfachprüfung | Bei Überschreitung des Zeitlimits wird code 50400 ohne Berechnung zurückgegeben. Eine Mehrfachprüfung mit Zeitüberschreitung schlägt als Ganzes fehl – keine Teilergebnisse, und der volle Betrag wird erstattet. |
Eine Mehrfachprüfung umfasst bis zu 100 Nummern | Die Ergebnisse behalten Reihenfolge und Länge der Übermittlung bei. Pro Konto läuft jeweils eine Mehrfachprüfung; senden Sie den nächsten Stapel, sobald der vorherige zurückgekommen ist. |
Fehlercodes
| Code | Beschreibung |
|---|---|
40000 | Nicht unterstützter Diensttyp oder widersprüchliche Anfragefelder |
40001 | Ungültiger JSON-Body |
40002 | Ungültige Nummer |
40100 | Fehlender oder ungültiger API-Schlüssel |
40200 | Unzureichendes Guthaben |
42200 | Die Nummer konnte derzeit nicht bestimmt werden. Es werden keine data zurückgegeben, und die Anfrage wird nicht berechnet |
42900 | Ein Nutzungskontingent ist aufgebraucht, oder es gibt zu viele nicht abgeschlossene Bestellungen |
42901 | Alle fünf Plätze für gleichzeitige Anfragen sind belegt, oder auf diesem Konto läuft bereits eine Mehrfachprüfung; senden Sie erneut, sobald eine laufende Anfrage abgeschlossen ist. Die abgelehnte Anfrage wird nicht berechnet und enthält einen Retry-After-Header |
50303 | Der Dienst ist derzeit ausgelastet; nicht berechnet. Warten Sie die in Retry-After angegebenen Sekunden ab und senden Sie dieselbe Anfrage erneut |
50400 | Die Prüfung wurde nicht innerhalb ihres Zeitlimits abgeschlossen und wird nicht berechnet; wiederholen Sie sie. Eine Zeitüberschreitung beim Stapel lässt den gesamten Stapel fehlschlagen und erstattet den vollen Betrag |
50300 | Wartung des Prüfdienstes |