Bird Lookup

Sprawdź odbiorcę, zanim do niego wyślesz.

Check whether an email address can receive mail or find the carrier behind a phone number.

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

Check an email address

Sign in to Bird to check an email address. Paste it into the Lookup form in your dashboard. You can also check addresses from your code, one API call per address.

The result helps you decide whether to send to that address. A correctly spelled address can still bounce.

See what the check tells you in email address lookup. Follow the email lookup guide to add it to your code.

5 minut od npm install do pierwszego wyszukiwania

Sprawdź numer lub adres w języku, którego już używasz.

Typowane metody w SDK dla Go, TypeScript, Python i PHP oraz bird lookup w CLI. Dashboard wykonuje te same dwie operacje pojedynczo — to najszybszy sposób, by zobaczyć odpowiedź, zanim napiszesz jakikolwiek kod.

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);

Co zwraca lookup i ile kosztuje każda odpowiedź.

Nazwane pola z rzeczywistych źródeł danych, nie zgadywanie modelu. Każde z nich informuje, czy zostało uzyskane, a płacisz tylko za te, które zostały.

  1. 01

    Kraj i obie sieci

    Kraj numeru, sieć obsługująca go dziś i sieć, która wydała jego zakres. Różnią się, gdy numer został przeniesiony.

  2. 02

    Wykrywanie typu linii

    Komórkowy, stacjonarny, VoIP, bezpłatny, premium, satelitarny, pager, automat telefoniczny, M2M, usługowy. Zdecyduj, czy SMS jest w ogóle możliwy, zanim go wyślesz.

  3. 03

    Flaga przeniesienia, bezpłatnie z odpowiedzią podstawową

    Informacja, czy numer kiedykolwiek zmienił sieć, jest dołączana do każdego lookup. Zażądaj właściwości porting, gdy potrzebujesz też dat i pełnego rekordu.

  4. 04

    Sześć właściwości na żądanie

    Name classification, porting, presence, roaming, sim_swap lub score w type. Przypisana usługa zakresu, rekord przeniesienia, czy linia jest aktywna, czy jest w roamingu, kiedy ostatnio zmieniono SIM i wynik wiarygodności od 0 do 100.

  5. 05

    Status przy każdej właściwości

    Każdy blok zwraca ok, unavailable lub inconclusive. Tylko ok niesie wartość, więc nigdy nie musisz analizować odpowiedzi, żeby odkryć, że jest pusta.

  6. 06

    Płacisz za odpowiedzi, nie za próby

    Podstawowy lookup jest rozliczany raz. Właściwość jest rozliczana tylko wtedy, gdy zostanie dostarczona, a lookup, który się nie powiedzie, nie kosztuje nic.

  7. 07

    Jedno pole, by ocenić adres e-mail

    result to valid, neutral, risky, undeliverable lub typo, z reason wyjaśniającym, dlaczego niedostarczalny adres nie może odbierać poczty.

  8. 08

    Korekta błędnie wpisanego adresu

    did_you_mean suggests a correction when an address looks misspelled. flags marks a role, disposable, or free-provider address, and delivery_confidence grades all of it from 0 to 100.

  9. 09

    Ponowna próba nie może naliczyć podwójnie

    Wyślij Idempotency-Key, a powtórzone żądanie odtworzy odpowiedź, za którą już zapłaciłeś, zamiast kupować drugą.

  10. 10

    Ta sama autoryzacja, ten sam format błędów

    Jeden klucz API dla Lookup, SMS, Email, WhatsApp i Verify. Jeden rejestr błędów dla wszystkich i osobny budżet rate-limit, dzięki czemu lookup nigdy nie wchodzi w limit wysyłki.

Dlaczego stworzyliśmy Lookup

Bo nie powinieneś dowiadywać się, że numer jest stacjonarny, obserwując niepowodzenie SMS.

Odpowiedź podstawowa pochodzi z tej samej platformy operatorskiej, która obsługuje SMS i Voice w Bird — dlatego zapytanie kosztuje tak niewiele: już wykonywaliśmy to zapytanie, żeby wybrać trasę w czasie rzeczywistym. Lookup to to samo zapytanie jako pełnoprawny endpoint, dzięki czemu możesz zweryfikować rejestrację, prześwietlić leada lub skierować wiadomość inaczej — bez uprzedniego wysyłania czegokolwiek. Ta sama autoryzacja, ta sama koperta błędów, ten sam kontrakt idempotencji co reszta platformy.

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

Dwie operacje, po jednej dla każdego typu odbiorcy.

Obie to pojedyncze żądanie i pojedyncza odpowiedź. Nie trzeba niczego tworzyć, niczego odpytywać ani niczego sprzątać po zakończeniu.

Numer telefonu.

phone-number

Kraj, obie sieci, flaga przeniesienia i typ linii, plus dowolna właściwość podana w type.

Adres e-mail.

email

Jeden werdykt, wynik pewności, flagi wyjaśniające ryzykowny adres i korekta, gdy wygląda jak literówka.

Płacisz za uzyskane odpowiedzi.

Cena za zapytanie: jedna opłata za wyszukiwanie plus jedna za każdą zwróconą właściwość z odpowiedzią. Właściwość, na którą nie możemy odpowiedzieć, oraz nieudane wyszukiwanie są bezpłatne. Bez opłat za stanowisko.

Put it into practice.

Continue with the documentation, guides and examples for this topic. Resources are in English.

Get an implementation brief

Zacznij od jednego kanału.
Dodaj kolejne, gdy będziesz gotowy.

Testowy klucz API otrzymasz od razu. Dostęp produkcyjny odblokujesz po dodaniu metody płatności i weryfikacji nadawcy.

Używasz Claude Code, Cursor lub Codex? Skopiuj prompt konfiguracyjny, a Twój agent zainstaluje za Ciebie Bird CLI i umiejętności. Wybierz swój:

Cursor