Vai al contenuto
Wbiztool

API di verifica numeri

Risultati della verifica dei numeri WhatsApp (API)

Leggi i risultati della verifica dei numeri pagina per pagina, filtrati per attività o per stato. Usala per esportare i numeri presenti su WhatsApp, rimuovere i numeri non validi dal tuo elenco contatti o sincronizzare i risultati con il tuo CRM.

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

Senza filtri, restituisce tutte le verifiche del tuo spazio di lavoro, dalla più recente. Sono incluse le attività create dalla pagina Verifica Numero della dashboard, non solo quelle create tramite l'API.

Esempio rapido#

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

Parametri della richiesta#

Tutti i parametri vanno nella query string.

Autenticazione

Authorizationheaderobbligatorio

Bearer YOUR_API_KEY, usando una chiave da Impostazioni → Chiavi API. In alternativa puoi passare la chiave come parametro di query api_key, ma l'header evita che finisca nei log del server e dei proxy.

Filtri e paginazione

campaign_idintegerfacoltativo

Restituisce solo i numeri di questa attività di verifica. Deve essere un'attività di verifica dello stesso spazio di lavoro della chiave API. Omettilo per ottenere i risultati di tutte le attività.

statusstringfacoltativo

Restituisce solo i numeri con questo stato: pending, verified o invalid. Qualsiasi altro valore viene ignorato e non viene applicato alcun filtro per stato, compreso unknown, quindi status=unknown restituisce tutti gli stati. I valori distinguono tra maiuscole e minuscole: Verified viene ignorato e restituisce tutti gli stati.

limitintegerfacoltativo

Risultati per pagina. Valore predefinito 100. Usa un valore pari o superiore a 1.

offsetintegerfacoltativo

Quanti risultati saltare. Valore predefinito 0. Deve essere pari o superiore a 0.

Risposta#

Una richiesta riuscita restituisce HTTP 200:

{
  "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"
    }
  ]
}
CampoTipoDescrizione
statusstring"success". Gli errori restituiscono "error".
total_countintegerRisultati che corrispondono ai tuoi filtri, su tutte le pagine.
returned_countintegerRisultati presenti in questa risposta.
limitintegerIl limit utilizzato.
offsetintegerL'offset utilizzato.
has_morebooleantrue se offset + limit è minore di total_count, cioè se c'è un'altra pagina.
resultsarrayI risultati, dal più recente.
results[].idintegerID di questo record di verifica.
results[].campaign_idinteger or nullID dell'attività a cui appartiene il numero.
results[].campaign_namestring or nullNome di quell'attività.
results[].numberstringIl numero di telefono ripulito.
results[].statusstringpending, verified, invalid, oppure unknown per una verifica annullata.
results[].checked_atstring or nullQuando è stato verificato il numero, oppure null finché è in attesa.
results[].created_atstringQuando è stato aggiunto il numero.

I timestamp sono in formato ISO 8601 in UTC con l'offset +00:00. Per il significato di ogni stato, vedi Valori di stato dei numeri.

Errori#

Gli errori restituiscono un corpo JSON con status impostato su "error" e un codice di errore HTTP:

{ "status": "error", "message": "Campaign not found" }
HTTPMessaggioCome risolvere
405Only GET method allowedInvia una richiesta GET.
401API key requiredAggiungi l'header Authorization: Bearer YOUR_API_KEY.
401Invalid API keyVerifica che la chiave esista e non sia stata eliminata o disattivata.
404Campaign not foundIl campaign_id non esiste, non è un'attività di verifica oppure appartiene a un altro spazio di lavoro.
500Internal server error: …Di solito campaign_id, limit o offset non è un numero intero, offset è negativo, oppure offset + limit è negativo.

Leggere tutte le pagine#

Aumenta offset di limit finché has_more non è false.

Esporta tutti i numeri verificati di un'attività
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")

Suggerimenti#

  • Elimina i duplicati in base a id durante la paginazione. I risultati sono ordinati per data di creazione, dal più recente. I numeri della stessa attività hanno timestamp quasi identici e nuove verifiche possono essere aggiunte mentre scorri le pagine, quindi una riga può comparire su due pagine o essere saltata. Filtrare per campaign_id e attendere il completamento dell'attività riduce il problema.
  • Attendi il completamento prima di esportare. Controlla Stato della verifica finché overall_status non è completed, oppure gestisci nel tuo codice i risultati pending.
  • Ripulisci il tuo elenco contatti esportando status=invalid e rimuovendo quei numeri prima della prossima campagna.
  • Dimensione della pagina: non c'è un limit massimo, ma una pagina molto grande produce una risposta pesante e lenta.