Bird Lookup

Verifica il destinatario prima di inviargli un messaggio.

Verifica se un indirizzo email può ricevere posta o trova l'operatore associato a un numero di telefono.

Cursor
lookup.ts
200
import { BirdClient } from "@messagebird/sdk";

const bird = new BirdClient({
  apiKey: process.env.BIRD_API_KEY!,
});

const answer = await bird.lookup.phoneNumber({
  phone_number: "+31612345678",
  type: ["porting", "score"],
});

console.log(answer.country_code, answer.line_type);
// → "NL" "mobile"
console.log(answer.network_info?.carrier_name, answer.flags);
// → "KPN" ["ported"]

// Only a block whose status is ok carries a value,
// and only that one is billed.
if (answer.score?.status === "ok") console.log(answer.score.value);
// → 84
Recipient lookup

Example lookup

Check before sending.

VerdictValid
CheckComplete
Result received
A clearer next step for your application.

Scelto ogni giorno dai team che creano software di livello mondiale

Leggi altre storie dei clienti

Verifica un indirizzo email

Accedi a Bird per verificare un indirizzo email. Incollalo nel modulo Lookup nella tua dashboard. Puoi anche verificare gli indirizzi dal codice, una chiamata API per indirizzo.

Il risultato ti aiuta a decidere se inviare a quell'indirizzo. Un indirizzo scritto correttamente può comunque generare un bounce.

Scopri cosa restituisce il controllo in email address lookup. Segui la guida alla lookup email per aggiungerlo al tuo codice.

5 minuti da npm install alla prima ricerca

Cerca un numero o un indirizzo dal linguaggio che già utilizzi.

Metodi tipizzati negli SDK Go, TypeScript, Python e PHP, e bird lookup da CLI. La dashboard esegue le stesse due operazioni una alla volta, il modo più rapido per ottenere una risposta prima di scrivere codice.

1
2
3
4
5
6
7
const answer = await bird.lookup.phoneNumber({
  phone_number: "+31612345678",
  type: ["classification", "score"],
});
console.log(answer.country_code, answer.line_type);
// Only a block whose status is ok carries a value, and only that one is billed.
if (answer.score?.status === "ok") console.log(answer.score.value);

Cosa risponde una lookup e quanto costa ogni risposta.

Campi nominati da fonti dati reali, non un modello che tira a indovinare. Ognuno ti indica se ha ricevuto risposta, e ti viene addebitato solo per quelli che l'hanno ricevuta.

  1. 01

    Paese ed entrambe le reti

    Il Paese del numero, la rete che lo serve oggi e la rete che ha emesso il suo range. Differiscono quando il numero è stato portato.

  2. 02

    Rilevamento del tipo di linea

    Mobile, linea fissa, VoIP, numero verde, tariffa premium, satellite, cercapersone, telefono pubblico, M2M, servizio. Decidi se l'SMS è possibile prima di inviarlo.

  3. 03

    Il flag di portabilità, gratuito con la risposta base

    L'informazione su un eventuale cambio di rete del numero è inclusa in ogni lookup. Richiedi la proprietà porting quando ti servono anche le date e il record completo.

  4. 04

    Sei proprietà su richiesta

    Name classification, porting, presence, roaming, sim_swap o score in type. Il servizio allocato del range, il record di portabilità, se la linea è attiva, se è in roaming, quando la SIM è stata cambiata l'ultima volta e un punteggio di credibilità da 0 a 100.

  5. 05

    Uno stato per ogni proprietà

    Ogni blocco riporta ok, unavailable o inconclusive. Solo ok contiene un valore, quindi non devi mai ispezionare una risposta per scoprire che è vuota.

  6. 06

    Paghi per le risposte, non per i tentativi

    La lookup base viene addebitata una volta. Una proprietà viene addebitata solo quando viene consegnata, e una lookup che fallisce non viene addebitata affatto.

  7. 07

    Un solo campo per valutare un indirizzo email

    result può essere valid, neutral, risky, undeliverable o typo, con reason che indica perché un indirizzo non recapitabile non può ricevere posta.

  8. 08

    Una correzione per un indirizzo scritto male

    did_you_mean suggerisce una correzione quando un indirizzo sembra scritto male. flags segnala un indirizzo di ruolo, usa e getta o di un provider gratuito, e delivery_confidence valuta il tutto da 0 a 100.

  9. 09

    Un nuovo tentativo non può addebitarti due volte

    Invia un Idempotency-Key e una richiesta ripetuta restituirà la risposta che hai già pagato, invece di acquistarne una seconda.

  10. 10

    Stessa autenticazione, stesso formato di errore

    Una sola chiave API per Lookup, SMS, Email, WhatsApp e Verify. Un unico registro errori per tutti, e un budget di rate-limit dedicato, così una lookup non intacca mai la tua capacità di invio.

Perché abbiamo creato Lookup

Perché non dovresti scoprire che un numero è un fisso guardando l'SMS fallire.

La risposta base proviene dalla stessa piattaforma carrier che instrada SMS e Voice di Bird, ed è per questo che richiederla costa così poco: stavamo già eseguendo la query per scegliere una rotta in tempo reale. Lookup è quella query come endpoint di prima classe, così puoi controllare una registrazione, filtrare un lead o instradare un messaggio in modo diverso senza inviare prima nulla. Stessa autenticazione, stessa struttura di errore, stesso contratto di idempotenza del resto della piattaforma.

lookup.ts
200
import { BirdClient } from "@messagebird/sdk";

const bird = new BirdClient({
  apiKey: process.env.BIRD_API_KEY!,
});

const answer = await bird.lookup.phoneNumber({
  phone_number: "+31612345678",
  type: ["porting", "score"],
});

console.log(answer.country_code, answer.line_type);
// → "NL" "mobile"
console.log(answer.network_info?.carrier_name, answer.flags);
// → "KPN" ["ported"]

// Only a block whose status is ok carries a value,
// and only that one is billed.
if (answer.score?.status === "ok") console.log(answer.score.value);
// → 84

Due operazioni, una per ogni tipo di destinatario.

Entrambe sono una singola richiesta e una singola risposta. Non c'è nulla da creare, nulla da interrogare e nulla da ripulire dopo.

Numero di telefono.

phone-number

Paese, entrambe le reti, il flag di portabilità e il tipo di linea, più qualsiasi proprietà indicata in type.

Indirizzo email.

email

Un verdetto, un punteggio di affidabilità, i flag che spiegano un indirizzo rischioso e una correzione quando sembra un errore di battitura.

Paghi solo per le risposte che ricevi.

Prezzo per query: un addebito per ogni ricerca, più uno per ogni proprietà restituita con una risposta. Una proprietà senza risposta e una ricerca non riuscita non costano nulla. Nessun costo per utenza.

Mettilo in pratica.

Prosegui con la documentazione, le guide e gli esempi per questo argomento. Le risorse sono in inglese.

Ottieni un brief di implementazione

Know more before you send.

Tell us what you need to check. We can help you choose the lookup properties for your application.

I tuoi dati

Tutti i campi di contatto sono obbligatori.

Per consentire al nostro team di contattarti per la demo.

Prodotti di interesse

Facoltativo

Ti contatteremo per organizzare la tua demo.
Informativa sulla privacy

Inizia con un canale.
Aggiungi gli altri quando sei pronto.

Una chiave API di test è subito tua. La produzione si sblocca quando aggiungi un metodo di pagamento e verifichi un mittente.

Usi Claude Code, Cursor o Codex? Copia un prompt di configurazione e il tuo agente installerà la CLI e le skill di Bird per te. Scegli il tuo:

Cursor