Bird
Bird

A world of possibilities.
One place to start.

Phone Number Lookup API

Phone lookup API.
Know before you connect.

Check a phone number’s country, carrier and line type before sending a message. Use the returned signals to choose a contact channel or ask the customer to correct their number.

BIRD / LOOKUPIllustrative experience
Lookup / Input
PHONE NUMBER

+1 555 000 0142

+1 555 000 0142

Continue the appropriate destination checks.

Destination evidence
Country
United States
Line type
Mobile
Carrier
Example Wireless
Ownership
Not established
Illustrative response

Example content and data. Explore the workflow below; nothing is sent or changed in a live account.

Companies that trust Bird across their communications.

Read Bird customer stories
BIRD LOOKUPEvidence with its limits.
DOCUMENTED OPERATING BEHAVIOR

An answer.
A deliberate next step.

The maintained Lookup guides distinguish the baseline, independently answered properties and one email verdict. An unavailable property can leave the baseline useful; a negative answered verdict can still be billed.

Read the maintained Lookup guide ↗Sources checked 18 September 2026. Synthetic examples demonstrate interpretation, not measured accuracy, supplier coverage or a live customer result. Confirm current account access before launch.
Lookup / phone evidence

Read the answer before the action.

Inspect a controlled number and its independent network signals. Change an observation to see how the next messaging decision changes.

ILLUSTRATIVE LOOKUP / L-316Phone number

+31 6 1234 5678

Input: +31612345678

Original networkVodafone
Serving networkKPN
country_code
NL
line_type
mobile
flags
ported

Carrier examples come from the maintained code sample. Country and network fields can be absent when unresolved; do not fill them from a display label.

Independent property observations
presenceok

reachable: true

roamingok

is_roaming: false

Continue to your messaging policy

The source reports a reachable mobile line. Confirm the recipient’s consent and your sending policy before a separate message request.

A lookup does not establish identity, ownership, permission to contact or future delivery. Roaming is independent of reachability and cannot replace those checks.

Read the response contract

Illustrative observations only. No number is queried and no message is sent.

WHAT IT MEANS FOR YOUR CUSTOMER

Better information.
A better next decision.

Catch a detail while it is still easy to correct. Use phone and email evidence to make the next customer step more informed, without treating an unknown answer as a failed person.

01 / Collect

Start with the right destination.

Help your application understand the number or address the customer has provided.

02 / Understand

Read the useful signals.

Use the returned classification and supported properties, including their status and confidence.

03 / Decide

Make the next step clear.

Ask for a correction, continue, or verify control according to the decision your product needs to make.

FIND YOUR WAY IN

Evidence has a scope.

Phone intelligence

Understand the number.

Read serving/original network, country when resolved, coarse line type and six optional properties. Treat unknown signals separately from answered negatives.

Explore phone lookup ↗
Email address quality

Catch the small mistake.

Use validation evidence and typo suggestions in your email collection flow. Ownership and permission remain separate questions.

Explore Email validation ↗
The details behind your setup

Base result

Use the information returned for the destination. A number classification is not proof that the person owns it.

Optional properties

Read the status of each requested property before its value. Successful optional results can add charges.

Unknown is a policy case

An unavailable signal is not an invalid customer. Decide whether to continue, ask for a correction, or perform verification.

READY WHEN YOU ARE

Start with the detail you have.

  1. 01Prepare phone Lookup ↗

    Use lookup write scope, wallet funding and a controlled recipient.

  2. 02Choose your evidence ↗

    Request the properties needed for your decision.

  3. 03Handle every result ↗

    Preserve uncertainty and connect the appropriate next step.

BUILD WITH LOOKUP

Put the evidence
to useful work.

Run a phone lookup on your server and check each property’s status before using its value. The guide covers credentials, region, paid queries and unavailable signals.

Run the same phone lookup with the CLI or MCP and inspect each returned signal. Carrier and number information does not establish identity or possession.

Open the implementation guide →
npm install @messagebird/sdk
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);

THE COMPLETE BIRD PLATFORM

Better inputs. Better next steps.

Connect Lookup to signup, verification, and messaging. Each product handles a distinct job while your application keeps the customer journey together.

LOOKUPThe number,
in context.
Line type
Mobile
Ownership
Not established
01

Lookup This step

Inspect Alex’s submitted destination.

Use phone and email signals

Follow concrete recipient decisions, handle unavailable evidence and keep possession and permission separate.

Choose phone or email ↗
LOOKUP / PRICING

Choose the evidence.
Know the scope.

Every answered phone lookup has a baseline charge. Each requested optional property adds a charge only with status ok. Budget email verdicts and downstream verification separately.

See Lookup pricing ↗
YOUR LOOKUP SETUPBase + properties

Request the evidence your application needs.

Your request
Phone and email checks serve different decisions.
Optional evidence
Review property availability and successful-result charges.
The next step
Budget verification and downstream messaging separately.
A FEW USEFUL ANSWERS

Lookup, answered.

Was beantwortet eine Telefonnummern-Abfrage?

Die Basisabfrage liefert das Land der Nummer, das aktuell zuständige Netz, das Netz, das den Nummernbereich vergeben hat, ob die Nummer jemals das Netz gewechselt hat, und einen groben Leitungstyp. Sie wird immer ausgeführt, und wenn sie nicht beantwortet werden kann, schlägt die gesamte Anfrage fehl, anstatt eine halb leere Antwort zurückzugeben.

Wie sollte ich die Nummer schreiben?

Zuerst die Landesvorwahl, dann die nationale Nummer. Das führende Plus ist optional, und 00 funktioniert als Ersatz – +31612345678, 31612345678 und 0031612345678 bezeichnen also dieselbe Nummer.

Warum wurde meine Nummer abgelehnt?

Eine Nummer, die für die Inlandswahl ohne Landesvorwahl geschrieben ist, gibt E22000 zurück, statt geraten zu werden. Würde man eine Landesvorwahl vor 0612345678 setzen, würde das eine reale Nummer anderswo bezeichnen – und Ihnen diese Abfrage in Rechnung stellen.

Welche Leitungstypen kann die Abfrage zurückgeben?

mobile, fixed_line, voip, toll_free, premium_rate, satellite, pager, payphone, m2m, service, other oder unknown. unknown bedeutet, dass die Carrier-Plattform keine Klassifizierung für den Bereich führt, und other bedeutet, dass sie eine führt, die hier keine Entsprechung hat. Fragen Sie die Eigenschaft classification ab, um den zugewiesenen Dienst mit feinerer Auflösung zu erhalten.

Wie erkenne ich, ob eine Nummer portiert wurde?

network_info ist das Netz, das die Nummer aktuell bedient, und original_network_info ist das Netz, das den Bereich vergeben hat. Die beiden unterscheiden sich, sobald eine Nummer portiert wurde, und flags enthält in diesem Fall ported. Fragen Sie die Eigenschaft porting ab, wenn Sie auch das Datum und den vollständigen Datensatz benötigen.

Warum fehlt country_code in meiner Antwort?

Weil die Nummer keinem einzelnen Land zugehört, wie es bei einem nicht-geografischen Nummernbereich der Fall ist. Felder ohne Wert werden weggelassen statt als null zurückgegeben, sodass jedes in der Antwort vorhandene Feld tatsächlich aufgelöst wurde.

Ruft eine Abfrage die Nummer an oder sendet ihr eine Nachricht?

Nein. Eine Abfrage kontaktiert die Nummer selbst niemals. Sie liest Carrier- und Nummern-Informationsdaten, und die Eigenschaften presence und roaming befragen das Netz, in dem die Nummer registriert ist – es klingelt also nichts, und auf dem Gerät kommt nichts an.

Does Lookup prove who owns a number?

No. Lookup provides information about a destination. Verification is a separate step for confirming that someone can receive and return a code.

Should I reject an unknown result?

Unknown is different from invalid. Some result blocks may be unavailable. Your application should make a deliberate decision using the evidence it has.

Can I treat an unavailable property as false?

No. Read its status and preserve uncertainty. A missing result can reflect unavailable evidence rather than a negative answer.

Is Lookup the same as Verify?

Lookup provides information about a destination. Verify checks control by delivering and checking a code. Use the capability that matches the decision.

How do I get started or speak to sales?

Start with a Bird account and follow the setup path on this page. Our sales team can help with migration, volume, or a wider product mix. Start now or talk to sales.

YOUR NEXT CONNECTION

Make the next decision
a little clearer.

Explore the whole Bird platform ↗

Starten Sie mit einem Kanal.
Fügen Sie die anderen hinzu, wenn Sie bereit sind.

Ein Test-API-Key steht Ihnen sofort zur Verfügung. Der Produktivzugang wird freigeschaltet, sobald Sie eine Zahlungsmethode hinzufügen und einen Absender verifizieren.

Dokumentation lesen
Sie nutzen Claude Code, Cursor oder Codex? Kopieren Sie einen Setup-Prompt und Ihr Agent installiert die Bird CLI und Skills für Sie. Wählen Sie Ihren:
Cursor