Sprawdź adres e-mail
Jedno wywołanie mówi, czy adres przyjmie pocztę. Użyj go przy rejestracji lub przed podjęciem działań wobec leada, żeby adresy, które odbiłyby wiadomość, w ogóle nie trafiły do wysyłki. Wszystko, co tu opisano, wymaga klucza API z uprawnieniem lookup.
Sprawdź adres
const answer = await bird.lookup.email({ email: "aisha.khan@example.com" });
// result is an open vocabulary; delivery_confidence is always comparable.
console.log(answer.result, answer.delivery_confidence);answer = client.lookup.email(email="aisha.khan@example.com")
# result is an open vocabulary; delivery_confidence is always comparable.
print(answer.result, answer.delivery_confidence)answer, err := client.Lookup.Email(context.Background(), bird.LookupEmailParams{
Email: "aisha.khan@example.com",
})
if err != nil {
log.Fatal(err)
}
// result is an open vocabulary; delivery_confidence is always comparable.
fmt.Println(*answer.Result, *answer.DeliveryConfidence)$answer = $bird->lookup->email(
(new EmailLookupRequest())->setEmail('aisha.khan@example.com'),
);
// result is an open vocabulary; delivery_confidence is always comparable.
echo $answer->getResult(), ' ', $answer->getDeliveryConfidence();bird lookup email --email aisha.khan@example.comcurl -X POST "https://us1.platform.bird.com/v1/lookup/email" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"email": "aisha.khan@example.com"
}'Sprawdzanie partii adresów
Użyj POST /v1/lookup/email/batch, aby ocenić do 1000 adresów w jednym żądaniu:
Przykład kodu
curl -X POST "https://us1.platform.bird.com/v1/lookup/email/batch" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"emails":["aisha.khan@example.com","not-an-email"]}'Tablica data w odpowiedzi zawiera jedną ocenę na każdy adres wejściowy, w kolejności przesłania. Zniekształcone adresy otrzymują indywidualne oceny. Zduplikowane adresy pozostają oddzielnymi wpisami, a każdy oceniony wpis jest rozliczany. Otaczające białe znaki są usuwane, a wielkość liter jest zachowywana.
Ogranicz każde żądanie do 128 KiB. Większe listy podziel na osobne partie. Jeśli korzystasz z idempotentnych ponownych prób, użyj osobnego klucza dla każdej partii. Odpowiedzi do 256 KiB mogą być zachowane do ponownego odtworzenia; większe odpowiedzi są zwracane bez ochrony przed powtórzeniem, więc ponowna próba może wykonać i naliczyć opłatę za kolejną partię. Zobacz dokumentację partii API.
Jak podać adres
Wyślij sam adres, dokładnie tak, jak go przechowujesz. Sprawdzanie pojedynczego adresu odrzuca formy z nazwą wyświetlaną, takie jak Aisha <aisha@example.com>, zamiast je rozpakowywać. Sprawdzanie partii zwraca ocenę dla każdego przesłanego ciągu znaków.
Część przed @ jest przekazywana w oryginalnej pisowni bez zamiany na małe litery, a pole email zachowuje tę wielkość liter. Odpowiedzi partii usuwają otaczające białe znaki; dopasowuj każdy wynik do danych wejściowych na tej samej pozycji. Wyślij adres w wielkości liter, w jakiej go przechowujesz, zamiast go wcześniej normalizować: result jest zasadniczo taki sam w obu przypadkach, ale delivery_confidence nie zawsze jest identyczny, więc zmiana wielkości liter może zmienić uzyskaną odpowiedź.
Pięć werdyktów
result to pole, na podstawie którego podejmujesz decyzję.
valid: adres istnieje i przyjmuje pocztę. Wysyłaj.
neutral: nie udało się potwierdzić w żadną stronę, zwykle dlatego, że domena odbierająca odpowiada tak samo na każdego odbiorcę. Wysyłanie jest uzasadnione; neutralny adres to nie zły adres, lecz taki, na który nie da się uzyskać jednoznacznej odpowiedzi.
risky: adres prawdopodobnie przyjmuje pocztę, ale jest bardziej narażony na odbicie lub skargę niż większość. Trafiają tu adresy funkcyjne, jednorazowe i o niskiej reputacji. Czy wysyłać, zależy od Twojej tolerancji na skargi, a flags informuje, o jaki rodzaj ryzyka chodzi.
undeliverable: adres nie przyjmuje poczty. Nie wysyłaj. reason podaje powód: invalid_syntax dla zniekształconego adresu, invalid_domain gdy domena w ogóle nie przyjmuje poczty, invalid_recipient gdy domena przyjmuje pocztę, ale ta skrzynka nie istnieje.
typo: adres wygląda na błędnie wpisany, a did_you_mean zawiera korektę. Zaproponuj korektę osobie, która wpisała oryginał, zamiast wysyłać na nią bez pytania: to przypuszczenie, a zamierzony adres może nie być żadnym z nich.
result to otwarty słownik, więc nierozpoznana wartość jest przyszłym werdyktem, a nie błędem. Obsługuj znane wartości i w pozostałych przypadkach korzystaj z delivery_confidence, które jest zawsze obecne i zawsze porównywalne.
Odczytuj pewność obok werdyktu, nie zamiast niego
delivery_confidence przyjmuje wartości od 0 (na pewno nie zostanie dostarczony) do 100 (na pewno zostanie). Ten sam wynik może występować pod neutral lub risky z różnych powodów, więc jest to druga opinia, a nie zamiennik dla result. To pole, na którym warto się oprzeć, gdy chcesz mieć jeden próg dla każdego werdyktu, w tym werdyktów dodanych w przyszłości.
valid zawiera ocenę ważności od dostawcy. Nieprawidłowy odbiorca może mieć valid: false nawet wtedy, gdy jego domena przyjmuje pocztę. Przy podejmowaniu decyzji o wysyłce używaj result i delivery_confidence razem; valid: true nie gwarantuje dostarczenia.
Flagi opisują rodzaj adresu
flags jest puste, gdy nic szczególnego nie dotyczy adresu. Zdefiniowane są trzy wartości i jest to lista otwarta.
role oznacza, że adres wskazuje na funkcję, a nie na osobę, na przykład support@ lub info@. Odpowiedzi i zgoda są niejednoznaczne, a skargi bardziej prawdopodobne.
disposable oznacza, że adres należy do dostawcy jednorazowych adresów, więc zazwyczaj przestanie istnieć.
free_provider oznacza, że adres należy do konsumenckiego dostawcy poczty, takiego jak Gmail czy Outlook.com. To normalne w przypadku poczty konsumenckiej i stanowi sygnał tylko wtedy, gdy spodziewasz się adresu firmowego.
Spróbuj ponownie bez podwójnej opłaty
Każdy oceniony adres jest rozliczany, w tym undeliverable, ponieważ to odpowiedź, za którą zapłaciłeś, i odbicie, którego uniknąłeś. Wyślij Idempotency-Key, aby ponowna próba odtworzyła zapisany werdykt zamiast kupować kolejny. Zobacz Idempotentność.
Forma GET, która umieszcza adres w URL, nie może przenosić klucza idempotentności. W przypadku automatyzacji używaj formy POST.
Błędy
| Kod | Co się stało |
|---|---|
| E22003 | Sprawdzanie pojedynczego adresu otrzymało nieprawidłowy adres e-mail. Nic nie zostało naliczone. Sprawdzanie partii ocenia zniekształcone ciągi znaków indywidualnie i nalicza opłatę za te oceny. |
| E22001 | Portfel organizacji nie pokrywa kosztu sprawdzenia. Doładuj go i spróbuj ponownie. Nic nie zostało naliczone. |
| E22002 | Sprawdzanie jest tymczasowo niedostępne. Spróbuj ponownie ze wstecznym wycofaniem. Nic nie zostało naliczone. |
Następne kroki
- Sprawdź numer telefonu to druga połowa usługi Lookup.
- Supresje zapobiegają ponownym wysyłkom na adresy, które już odbiły, bez dodatkowych kosztów.
- Dokumentacja referencyjna Lookup API opisuje każde pole.
- Weryfikacja adresu e-mail: czy ten adres rzeczywiście przyjmie wiadomość to film pokazujący sprawdzanie adresu funkcyjnego, literówki i darmowego dostawcy.
Powiązane zasoby
Przejdź do dokumentacji, przewodników i przykładów dotyczących tego tematu.