Bird Lookup
Verifica il destinatario prima di inviargli un messaggio.
Una sola chiamata ti dice cos'è un numero di telefono: la rete che lo serve, la rete che lo ha emesso, se è stato trasferito tra le due e che tipo di linea è. Una sola chiamata ti dice se un indirizzo email accetterà la posta. Stessa chiave, stessa struttura di errore, stesso contratto di idempotenza di ogni altro canale Bird, perché lo stesso team di ingegneri li ha costruiti tutti.
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
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.
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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 08
Una correzione per un indirizzo scritto male
did_you_mean contiene l'indirizzo di cui un typo sembra un errore di battitura. flags segnala un indirizzo di ruolo, usa e getta o di provider gratuito, e delivery_confidence valuta il tutto da 0 a 100.
- 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
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.
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.
Paese, entrambe le reti, il flag di portabilità e il tipo di linea, più qualsiasi proprietà indicata in type.
Indirizzo email.
Un verdetto, un punteggio di affidabilità, i flag che spiegano un indirizzo rischioso e una correzione quando sembra un errore di battitura.
Esplora Lookup
Ogni operazione nel dettaglio. Una chiave API, un unico formato di errore.
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.
Put it into practice.
Continue with the documentation, guides and examples for this topic. Resources are in English.