# Przegląd Lookup

Lookup odpowiada na pytania o odbiorcę, zanim do niego wyślesz. Podaj numer telefonu, a dowiesz się, czym ten numer jest: jaka sieć go obsługuje, w jakim kraju się znajduje, czy zmienił sieć i jaki to typ linii. Podaj adres e-mail, a dowiesz się, czy warto na niego wysyłać.

Oba przypadki to jedno zapytanie i jedna odpowiedź. Nie trzeba niczego tworzyć, odpytywać ani sprzątać po fakcie. Strona [**Lookup**](https://bird.com/dashboard/w/lookup) w dashboardzie uruchamia te same dwie operacje pojedynczo, co jest najszybszym sposobem, żeby zobaczyć, jak wygląda odpowiedź, zanim napiszesz jakikolwiek kod.

## Ile kosztuje każde zapytanie

Każde zapytanie jest rozliczane z portfela Twojej organizacji i to jest część, którą warto zrozumieć, zanim zaczniesz na tym budować.

Zapytanie o numer telefonu zawsze nalicza jedną opłatę za bazowe zapytanie. Oprócz tego możesz zażądać **właściwości**, czyli dodatkowych informacji z płatnego źródła danych. Każda żądana właściwość jest rozliczana osobno, ale **tylko wtedy, gdy zostanie dostarczona**. Właściwość, na którą nie udało się odpowiedzieć, wraca ze statusem informującym o tym i nic Cię nie kosztuje.

Zapytanie o adres e-mail jest rozliczane raz za każdy adres, na który uzyskano odpowiedź. Każdy werdykt jest płatny, łącznie z `undeliverable`: to jest odpowiedź, o którą prosiłeś, i to ona oszczędza Ci zwrotki.

Nic nie jest naliczane, gdy zapytanie się nie powiedzie. Błędny numer, adres, który odrzucamy, lub źródło danych, z którym nie udało się połączyć, nie kosztują nic.

[Cennik Lookup](/products/lookup/pricing) podaje stawkę za bazowe zapytanie, za każdą właściwość i za zapytanie o adres e-mail.

## Zapytanie o numer ma dwa poziomy

Ten podział to cały projekt zapytania o numer telefonu, więc warto go opisać wprost.

**Bazowe zapytanie** uruchamia się zawsze. Odpowiada na pytania o obsługującą sieć, sieć, która wydała numer, kraj, czy numer kiedykolwiek zmienił sieć, oraz przybliżony `line_type` (komórkowy, stacjonarny, VoIP, bezpłatny itd.). Jeśli bazowe zapytanie nie może zostać obsłużone, całe żądanie kończy się błędem zamiast zwracać półpustą odpowiedź, którą musiałbyś sprawdzać, żeby odkryć, że jest pusta.

**Właściwości** to to, co dodajesz na wierzch, podając je w `type`. Odpowiadają na bardziej szczegółowe pytania: dokładną przydzieloną usługę zakresu, pełny rekord przeniesienia numeru, czy numer jest w tej chwili aktywny w sieci, czy jest w roamingu, kiedy ostatnio wymieniono SIM i wynik wiarygodności. Właściwość, na którą nie udało się odpowiedzieć, nigdy nie powoduje błędu żądania. Degraduje się do statusu, a bazowe zapytanie i tak jest obsługiwane.

## Tylko `ok` niesie wartość i tylko `ok` jest rozliczane

Każdy blok właściwości ma `status` i jego odczytanie nie jest opcjonalne.

`ok` oznacza, że właściwość została obsłużona, jej wartość jest w odpowiedzi i została naliczona.

`unavailable` oznacza, że odpowiedź nie dotarła, więc właściwość nic nie wnosi. Nie została naliczona.

`inconclusive` oznacza, że odpowiedź dotarła, ale nie rozwiązuje właściwości: numer jest poza zasięgiem danych, na których właściwość się opiera, albo źródło zwróciło wartość, której ta właściwość nie raportuje. To realne ustalenie, a nie brak danych, i również nie zostało naliczone.

`status` to otwarty słownik, więc mogą pojawić się nowe wartości. Rozgałęziaj się na `ok`, a wszystko inne traktuj jak "not answered". Wtedy Twój kod pozostanie poprawny niezależnie od tego, jak się rozrośnie.

## Wybór między Lookup a walidacją przy wysyłce

Lookup służy do podejmowania decyzji **przed** podjęciem działania, po jednym odbiorcy naraz: sprawdzenie numeru lub adresu przy rejestracji, weryfikacja leada, zanim zaczniesz go obsługiwać, albo zmiana kierowania wiadomości w zależności od typu linii. Kosztuje za każde sprawdzenie i daje odpowiedź, na podstawie której możesz działać.

Jeśli chcesz tylko przestać wysyłać na adresy, które już zwróciły wiadomość lub zgłosiły skargę, nie potrzebujesz Lookup. [Supresje](/docs/guides/email/suppressions) robią to automatycznie i za darmo.

Żadna z tych operacji nie ma formy wsadowej, a `lookup` [limit liczby żądań](/docs/guides/rate-limits) zaczyna się od 10 żądań na minutę na poświadczenie, więc sprawdzanie całej listy nie jest tym, do czego to jest obecnie przystosowane. Skontaktuj się z nami w sprawie podniesienia limitu, jeśli tego potrzebujesz.

## Kolejne kroki

- [Sprawdź numer telefonu](/docs/guides/lookup/phone-numbers) omawia bazowe zapytanie, każdą właściwość i co każda z nich zwraca.
- [Sprawdź adres e-mail](/docs/guides/lookup/email-addresses) omawia werdykty i co zrobić z każdym z nich.
- [Dokumentacja API Lookup](/docs/api/reference/create-phone-number-lookup) dokumentuje każde pole.
- [Idempotentność](/docs/guides/idempotency) wyjaśnia, jak ponowić zapytanie bez płacenia za nie dwa razy.

## Related resources

- [Phone number lookup: check a number before you send](/learn/lookup/phone-number-lookup-check-a-number-before-you-send) (video)
- [Lookup](/lookup-api) (product)

[Get an implementation brief](/learn/workspace?topic=lookup)
