Tekli E-posta Dogrulama
Sozdizimi, alan adi ve SMTP kontrolleriyle tek tek e-posta adreslerini gercek zamanli olarak dogrulayin
Gondermeden once bir e-posta adresini gercek zamanli olarak dogrulayin. MailLand 5 katmanli bir dogrulama hatti calistirir: sozdizimi kontrolu, yazim hatasi tespiti, tek kullanimlik alan adi tespiti, rol hesabi tespiti ve SMTP dogrulamasi.
Kimlik Dogrulama
API anahtarinizi X-API-Key basligina ekleyin:
X-API-Key: ml_pv_Ab3Kx9mN2pQ7rT4wL8yD...Kimlik bilgisi, Api kanali etkinlestirilmis bir Validation urun kimlik bilgisi olmalidir.
Bir E-posta Dogrulama
POST https://api.mail.land/v1/validation/email{
"email": "[email protected]",
"verify_smtp": true
}| Alan | Tip | Varsayilan | Aciklama |
|---|---|---|---|
email | string | - | Dogrulanacak e-posta adresi (zorunlu) |
verify_smtp | bool | true | SMTP posta kutusu dogrulamasi yap |
curl -X POST https://api.mail.land/v1/validation/email \
-H "X-API-Key: ml_pv_Ab3Kx9mN2pQ7rT4wL8yD..." \
-H "Content-Type: application/json" \
-d '{ "email": "[email protected]", "verify_smtp": true }'Yanit
{
"email": "[email protected]",
"result": "Deliverable",
"score": 95,
"syntax": {
"is_valid": true,
"suggestion": null,
"domain": "example.com",
"local_part": "user",
"has_typo": false,
"typo_type": null,
"typo_confidence": null
},
"disposable": {
"is_disposable": false
},
"role": {
"is_role_account": false
},
"mx": {
"has_mx": true,
"records": ["mx1.example.com", "mx2.example.com"],
"accepts_mail": true
},
"smtp": {
"can_connect": true,
"is_deliverable": true,
"is_catch_all": false,
"has_full_inbox": false,
"is_disabled": false,
"reachability": "safe",
"error_type": null,
"error_message": null
},
"provider": {
"name": "Unknown",
"type": "unknown"
},
"cached": false,
"verified_at": "2026-02-17T12:34:56Z"
}Sonuc Tipleri
| Sonuc | Puan Araligi | Aciklama |
|---|---|---|
Deliverable | 80–95 | Gecerli adres, SMTP ile teslim edilebilirligi onaylandi |
Risky | 45–70 | Teslim edilebilir olabilir ancak risk faktorleri mevcut (catch-all, rol hesabi, dolu kutu) |
Unknown | 30–50 | Belirlenemiyor (SMTP zaman asimi, baglanti hatasi) |
Undeliverable | 0–25 | Teslim edilemez (tek kullanimlik, MX kaydi yok, devre disi posta kutusu; gecersiz sozdizimi = 0) |
Invalid | 5 (sabit) | Yuksek guvenilirlikli alan adi yazim hatasi (guven >=90%), bkz. syntax.suggestion |
Puan Ayarlamalari
Temel puan, risk faktorlerine gore ayarlanir:
| Faktor | Ayarlama |
|---|---|
| Rol hesabi (info@, admin@, vb.) | -10 |
| Catch-all sunucu | -5 |
Dogrulama Hatti
MailLand her e-postayi 5 katmandan gecirir:
Sozdizimi dogrulamasi
RFC 5322 uyumlulugunu kontrol eder: gecerli format, yerel kisim (maksimum 64 karakter), alan adi (maksimum 255 karakter), toplam uzunluk (maksimum 320 karakter). Ayrica yaygin alan adi yazim hatalarini tespit eder.
Tek kullanimlik alan adi kontrolu
Alan adini bilinen gecici/tek kullanimlik e-posta saglayicilarinin veritabaniyla karsilastirir. Tek kullanimlik adresler dogrudan Undeliverable olarak isaretlenir.
Rol hesabi kontrolu
info@, admin@, support@, postmaster@ gibi rol tabanli adresleri tespit eder. Rol hesaplari teslim edilemez olarak isaretlenmez ancak guven puanini dusurur.
MX kaydi dogrulamasi
Alan adi icin MX kayitlarini arar. MX kaydi ve A kaydi yoksa e-posta Undeliverable olarak isaretlenir.
SMTP dogrulamasi
Posta sunucusuna baglanir ve posta kutusunun var olup olmadigini kontrol eder. verify_smtp degeri false ise bu adim atlanir.
Yazim Hatasi Tespiti
MailLand yaygin alan adi hatalari icin 3 katmanli yazim hatasi tespiti kullanir:
| Katman | Yontem | Ornek |
|---|---|---|
| Tam esleme | Bilinen yazim hatalarinin veritabani | gmial.com → gmail.com |
| TLD duzeltme | Ust duzey alan adi varyantlari | gmail.co → gmail.com |
| Levenshtein mesafesi | Bulanik esleme (maksimum mesafe: 2) | gmal.com → gmail.com |
Bir yazim hatasi tespit edildiginde, syntax.suggestion alani duzeltilmis adresi icerir:
{
"email": "[email protected]",
"result": "Invalid",
"score": 5,
"syntax": {
"is_valid": true,
"suggestion": "[email protected]",
"domain": "gmial.com",
"local_part": "user",
"has_typo": true,
"typo_type": "levenshtein",
"typo_confidence": 95
}
}Yuksek guvenilirlikli yazim hatalari (%90+ guven) hatta erken asamada kisa devre yapilir: SMTP kontrolu yapilmaz ve kredi tuketilmez.
Saglayici Tespiti
MailLand, alan adlari ve MX kayitlarindan e-posta saglayicisini tanir:
| Saglayici | Tip | Tespit |
|---|---|---|
| Gmail | consumer | Alan adi eslesmesi |
| Outlook / Hotmail / Live | consumer | Alan adi eslesmesi |
| Yahoo | consumer | Alan adi eslesmesi |
| iCloud | consumer | Alan adi eslesmesi |
| ProtonMail | consumer | Alan adi eslesmesi |
| Google Workspace | business | MX kayitlari (aspmx) |
| Microsoft 365 | business | MX kayitlari (outlook.com) |
| Zoho | business | MX kayitlari |
| Mimecast | business | MX kayitlari |
| Proofpoint | business | MX kayitlari |
SMTP Kontrol Detaylari
smtp nesnesi detayli SMTP dogrulama sonuclarini icerir:
| Alan | Tip | Aciklama |
|---|---|---|
can_connect | bool | SMTP sunucusuna basariyla baglandi |
is_deliverable | bool | Posta kutusu mevcut gorunuyor |
is_catch_all | bool | Sunucu tum adresleri kabul ediyor (guveni azaltir) |
has_full_inbox | bool | Posta kutusu dolu (sonuc: Risky) |
is_disabled | bool | Posta kutusu devre disi (sonuc: Undeliverable) |
reachability | string | Karar: safe, risky, invalid veya unknown |
error_type | string | SMTP kontrolu basarisiz olursa hata tipi |
error_message | string | Detayli hata mesaji |
SMTP Hata Tipleri
| Hata Tipi | Aciklama |
|---|---|
Timeout | SMTP baglantisi zaman asimina ugradi |
ConnectionFailed | Sunucuya baglanilamadi |
Blacklisted | Dogrulama IP'si sunucu tarafindan engellendi |
Socks5 | Proxy hatasi |
AsyncSmtpError | SMTP protokol hatasi |
Cancelled | Istek iptal edildi |
UnexpectedError | Beklenmeyen hata |
Krediler
Her dogrulama, aylik kotanizdan bir kredi tuketir. Belirli dogrulamalar ucretsizdir (kredi tuketilmez):
| Kosul | Ucretsiz |
|---|---|
| Tek kullanimlik e-posta alan adlari | Evet |
| Yuksek guvenilirlikli alan adi yazim hatalari (%90+) | Evet |
| SMTP hatalari (zaman asimi, baglanti hatasi, engellenmis) | Evet |
| SMTP baglanti kurulamadi, sonuc bilinmiyor | Evet |
| Onbellekteki sonuclar | Hayir (kredi ilk kontrolde tuketildi) |
Kredi bakiyenizi kontrol edin:
GET https://api.mail.land/v1/validation/credits{
"monthly_quota": 1000,
"used": 450,
"remaining": 550,
"resets_at": "2026-03-01T00:00:00Z"
}Krediler her ayin ilk gunu (UTC) otomatik olarak sifirlanir.
Onbellekleme
Dogrulama sonuclari gereksiz kontrolleri onlemek icin Redis'te onbelleklenir:
| Sonuc Tipi | Onbellek Suresi |
|---|---|
| Deliverable | 48 saat |
| Risky | 24 saat |
| Undeliverable | 24 saat |
| Unknown | 6 saat |
Onbellekteki yanitlarda cached: true degeri bulunur. Orijinal kredi, sonuc ilk hesaplandiginda tuketilmistir.
Hata Yanitlari
| Durum | Kod | Aciklama |
|---|---|---|
400 | INVALID_REQUEST | Eksik veya gecersiz istek govdesi |
400 | INVALID_EMAIL_FORMAT | E-posta adresi gereklidir |
402 | INSUFFICIENT_CREDITS | Aylik dogrulama kotasi asildi |
Sonraki Adimlar
- Toplu Dogrulama: e-posta listelerini toplu olarak dogrulayin
- Bastirilmislar: bastirma listelerini yonetin
- REST API: dogrulanmis adreslere e-posta gonderin