Memeriksa alamat email
Satu panggilan memberi tahu Anda apakah suatu alamat akan menerima email. Gunakan saat pendaftaran, atau sebelum menindaklanjuti prospek, agar alamat yang akan memantul tidak masuk ke pengiriman Anda sejak awal. Semua yang ada di sini memerlukan kunci API dengan cakupan lookup.
Memeriksa alamat
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"
}'Lookup batch
Gunakan POST /v1/lookup/email/batch untuk menilai hingga 1.000 alamat dalam satu permintaan:
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"]}'Array data dalam respons berisi satu penilaian per input, sesuai urutan pengiriman. Alamat yang formatnya salah tetap mendapat penilaian individual. Alamat duplikat tetap menjadi entri terpisah dan setiap entri yang dijawab dikenakan biaya. Spasi di sekitar alamat dihapus dan huruf besar-kecil dipertahankan.
Batasi setiap permintaan dalam 128 KiB. Pecah daftar yang lebih besar menjadi batch terpisah. Jika Anda mengaktifkan coba lagi secara idempoten, gunakan kunci yang berbeda untuk setiap batch. Respons hingga 256 KiB dapat disimpan untuk diputar ulang; respons yang lebih besar dikembalikan tanpa perlindungan putar ulang, sehingga mencoba lagi dapat menjalankan dan menagih batch baru. Lihat referensi batch API.
Cara menulis alamat
Kirim alamat polos, persis seperti yang Anda simpan. Lookup alamat tunggal menolak format display-name seperti Aisha <aisha@example.com> alih-alih mengekstraknya. Lookup batch mengembalikan penilaian untuk setiap string yang dikirimkan.
Bagian sebelum @ diteruskan apa adanya tanpa diubah ke huruf kecil, dan field email mempertahankan huruf besar-kecil tersebut. Respons batch menghapus spasi di sekitar alamat; cocokkan setiap hasil dengan input pada posisi yang sama. Kirim alamat dalam huruf besar-kecil yang Anda simpan alih-alih menormalisasinya terlebih dahulu: result umumnya sama dalam kedua bentuk, tetapi delivery_confidence tidak selalu identik, sehingga mengubah huruf besar-kecil dapat mengubah jawaban yang Anda terima.
Lima verdict
result adalah field untuk mengambil keputusan.
valid: alamat ada dan menerima email. Kirim.
neutral: tidak dapat dikonfirmasi ke salah satu arah, biasanya karena domain penerima menjawab setiap penerima dengan cara yang sama. Mengirim tetap wajar; alamat netral bukan alamat buruk, melainkan alamat yang tidak dapat dijawab.
risky: kemungkinan besar menerima email tetapi lebih mungkin bounce atau menghasilkan keluhan dibanding alamat lain. Alamat peran, alamat sekali pakai, dan alamat bereputasi rendah masuk di sini. Apakah Anda mengirim atau tidak adalah keputusan berdasarkan toleransi Anda sendiri terhadap keluhan, dan flags memberi tahu jenis risikonya.
undeliverable: alamat tidak menerima email. Jangan kirim. reason menjelaskan alasannya: invalid_syntax untuk alamat yang formatnya salah, invalid_domain ketika domain tidak menerima email sama sekali, invalid_recipient ketika domain menerima email tetapi kotak surat ini tidak ada.
typo: alamat tampak salah ketik, dan did_you_mean berisi koreksinya. Tawarkan koreksi kepada orang yang mengetik alamat asli alih-alih langsung mengirim ke sana: ini adalah tebakan, dan alamat yang mereka maksud mungkin bukan keduanya.
result adalah kosakata terbuka, sehingga nilai yang tidak Anda kenali adalah verdict masa depan, bukan kesalahan. Buat cabang berdasarkan nilai yang Anda ketahui dan gunakan delivery_confidence sebagai fallback, yang selalu ada dan selalu dapat dibandingkan.
Baca confidence bersama verdict, bukan sebagai penggantinya
delivery_confidence berkisar dari 0 (pasti tidak terkirim) hingga 100 (pasti terkirim). Skor yang sama dapat berada di bawah neutral atau risky untuk alasan berbeda, sehingga ini adalah pendapat kedua, bukan pengganti result. Gunakan field ini ketika Anda menginginkan satu ambang batas untuk semua verdict, termasuk verdict yang ditambahkan di kemudian hari.
valid berisi penilaian validitas dari penyedia. Penerima yang tidak valid dapat memiliki valid: false meskipun domainnya menerima email. Gunakan result dan delivery_confidence bersama-sama saat memutuskan apakah akan mengirim; valid: true tidak menjamin pengiriman.
Flag menjelaskan jenis alamat
flags kosong jika tidak ada yang perlu dicatat. Tiga nilai didefinisikan saat ini, dan ini adalah daftar terbuka.
role berarti alamat tersebut menamai fungsi, bukan orang, seperti support@ atau info@. Balasan dan persetujuan bersifat ambigu, dan keluhan lebih mungkin terjadi.
disposable berarti alamat tersebut milik penyedia alamat sekali pakai, sehingga biasanya akan berhenti ada.
free_provider berarti alamat tersebut milik penyedia kotak surat konsumen seperti Gmail atau Outlook.com. Ini normal untuk email konsumen, dan hanya menjadi sinyal jika Anda mengharapkan alamat bisnis.
Coba lagi tanpa membayar dua kali
Setiap alamat yang dijawab dikenakan biaya, termasuk undeliverable, karena itulah jawaban yang Anda bayar dan bounce yang Anda hindari. Kirim Idempotency-Key agar percobaan ulang memutar ulang verdict tersimpan alih-alih membeli yang kedua. Lihat Idempotensi.
Form GET, yang menempatkan alamat di URL, tidak dapat membawa kunci idempotensi. Gunakan form POST untuk apa pun yang diotomatisasi.
Error
| Kode | Apa yang terjadi |
|---|---|
E22003 | Lookup alamat tunggal menerima alamat email yang tidak valid. Tidak ada biaya yang dikenakan. Lookup batch menilai string yang formatnya salah secara individual dan mengenakan biaya untuk penilaian tersebut. |
E22001 | Dompet organisasi tidak cukup untuk menutup biaya lookup. Isi ulang dan coba lagi. Tidak ada biaya yang dikenakan. |
E22002 | Lookup tidak tersedia untuk sementara. Coba lagi dengan backoff. Tidak ada biaya yang dikenakan. |
Langkah selanjutnya
- Lookup nomor telepon adalah sisi lain dari Lookup.
- Suppressions mencegah pengiriman ulang ke alamat yang sudah bounce, tanpa biaya.
- Referensi API Lookup mendokumentasikan setiap field.
- Pencarian email: apakah alamat tersebut benar-benar menerima email adalah video yang menjalankan lookup terhadap alamat peran, salah ketik, dan penyedia gratis.
Sumber daya terkait
Lanjutkan dengan dokumentasi, panduan, dan contoh untuk topik ini.