Zum Inhalt springen
Wbiztool

Verifizierungs-API

Ergebnisse der WhatsApp-Nummernverifizierung (API)

Rufen Sie die Ergebnisse der Nummernverifizierung seitenweise ab, gefiltert nach Aufgabe oder Status. Nutzen Sie die API, um die Nummern zu exportieren, die WhatsApp nutzen, ungültige Nummern aus Ihrer Kontaktliste zu entfernen oder Ergebnisse mit Ihrem CRM zu synchronisieren.

GEThttps://wbiztool.com/api/v1/verification/results/

Ohne Filter gibt der Endpoint jede Verifizierung in Ihrem Arbeitsbereich zurück, die neuesten zuerst. Dazu gehören auch Aufgaben, die auf der Dashboard-Seite Nummernverifizierung erstellt wurden, nicht nur die über die API erstellten.

Kurzes Beispiel#

curl "https://wbiztool.com/api/v1/verification/results/?campaign_id=4521&status=verified&limit=100&offset=0" \
  -H "Authorization: Bearer YOUR_API_KEY"

Request-Parameter#

Alle Parameter werden im Query-String übergeben.

Authentifizierung

Authorizationheadererforderlich

Bearer YOUR_API_KEY mit einem Schlüssel aus Einstellungen → API-Schlüssel. Sie können den Schlüssel stattdessen als Query-Parameter api_key übergeben, der Header hält ihn jedoch aus Server- und Proxy-Logs heraus.

Filter und Paginierung

campaign_idintegeroptional

Gibt nur Nummern aus dieser Verifizierungsaufgabe zurück. Es muss eine Verifizierungsaufgabe im selben Arbeitsbereich wie der API-Schlüssel sein. Lassen Sie den Parameter weg, um Ergebnisse aus allen Aufgaben zu erhalten.

statusstringoptional

Gibt nur Nummern mit diesem Status zurück: pending, verified oder invalid. Jeder andere Wert wird ignoriert, und es wird nicht nach Status gefiltert, auch bei unknown: status=unknown liefert also alle Status. Bei den Werten wird zwischen Groß- und Kleinschreibung unterschieden: Verified wird ignoriert und liefert alle Status.

limitintegeroptional

Ergebnisse pro Seite. Standard 100. Verwenden Sie einen Wert von 1 oder mehr.

offsetintegeroptional

Wie viele Ergebnisse übersprungen werden. Standard 0. Muss 0 oder mehr sein.

Antwort#

Ein erfolgreicher Request gibt HTTP 200 zurück:

{
  "status": "success",
  "total_count": 2,
  "returned_count": 2,
  "limit": 100,
  "offset": 0,
  "has_more": false,
  "results": [
    {
      "id": 88215,
      "campaign_id": 4521,
      "campaign_name": "Website leads - September",
      "number": "14155550123",
      "status": "verified",
      "checked_at": "2026-09-16T10:16:26.730114+00:00",
      "created_at": "2026-09-16T10:15:00.483101+00:00"
    },
    {
      "id": 88213,
      "campaign_id": 4521,
      "campaign_name": "Website leads - September",
      "number": "919876543210",
      "status": "verified",
      "checked_at": "2026-09-16T10:16:12.204551+00:00",
      "created_at": "2026-09-16T10:15:00.482913+00:00"
    }
  ]
}
FeldTypBeschreibung
statusstring"success". Fehler liefern "error".
total_countintegerErgebnisse, die Ihren Filtern entsprechen, über alle Seiten.
returned_countintegerErgebnisse in dieser Antwort.
limitintegerDas verwendete limit.
offsetintegerDer verwendete offset.
has_morebooleantrue, wenn offset + limit kleiner als total_count ist, es also eine weitere Seite gibt.
resultsarrayDie Ergebnisse, die neuesten zuerst.
results[].idintegerID dieses Verifizierungsdatensatzes.
results[].campaign_idinteger or nullID der Aufgabe, zu der die Nummer gehört.
results[].campaign_namestring or nullName dieser Aufgabe.
results[].numberstringDie bereinigte Telefonnummer.
results[].statusstringpending, verified, invalid oder unknown für eine abgebrochene Prüfung.
results[].checked_atstring or nullWann die Nummer geprüft wurde, oder null, solange sie aussteht.
results[].created_atstringWann die Nummer hinzugefügt wurde.

Zeitstempel sind im Format ISO 8601 in UTC mit der Abweichung +00:00 angegeben. Was jeder Status bedeutet, erfahren Sie unter Werte für den Nummernstatus.

Fehler#

Fehler liefern einen JSON-Body mit status gleich "error" und einen HTTP-Fehlercode:

{ "status": "error", "message": "Campaign not found" }
HTTPMeldungLösung
405Only GET method allowedSenden Sie einen GET-Request.
401API key requiredFügen Sie den Header Authorization: Bearer YOUR_API_KEY hinzu.
401Invalid API keyPrüfen Sie, ob der Schlüssel existiert und nicht gelöscht oder deaktiviert wurde.
404Campaign not foundDie campaign_id existiert nicht, ist keine Verifizierungsaufgabe oder gehört zu einem anderen Arbeitsbereich.
500Internal server error: …Meist ist campaign_id, limit oder offset keine ganze Zahl, offset ist negativ, oder offset + limit ist negativ.

Alle Seiten abrufen#

Erhöhen Sie offset um limit, bis has_more den Wert false hat.

Alle verifizierten Nummern einer Aufgabe exportieren
import requests

numbers, offset, limit = [], 0, 500

while True:
    response = requests.get(
        "https://wbiztool.com/api/v1/verification/results/",
        headers={"Authorization": "Bearer YOUR_API_KEY"},
        params={"campaign_id": 4521, "status": "verified", "limit": limit, "offset": offset},
        timeout=60,
    )
    result = response.json()
    if result["status"] != "success":
        raise RuntimeError(result["message"])

    numbers += [item["number"] for item in result["results"]]
    if not result["has_more"]:
        break
    offset += limit

print(len(numbers), "numbers are on WhatsApp")

Tipps#

  • Beim Blättern nach id deduplizieren. Die Ergebnisse sind nach Erstellungszeit sortiert, die neuesten zuerst. Nummern derselben Aufgabe haben fast denselben Zeitstempel, und während Sie blättern, können neue Verifizierungen hinzukommen. Eine Zeile kann daher auf zwei Seiten erscheinen oder übersprungen werden. Das Filtern nach campaign_id und das Warten auf den Abschluss der Aufgabe verringern dieses Problem.
  • Warten Sie auf den Abschluss, bevor Sie exportieren. Prüfen Sie Verifizierungsstatus, bis overall_status den Wert completed hat, oder behandeln Sie pending-Ergebnisse in Ihrem Code.
  • Bereinigen Sie Ihre Kontaktliste, indem Sie status=invalid exportieren und diese Nummern vor Ihrer nächsten Kampagne entfernen.
  • Seitengröße: Es gibt kein Maximum für limit, aber eine sehr große Seite führt zu einer großen, langsamen Antwort.