Watch-IP

Tek kullanımlık, yanlış yazılmış ve posta sunucusu olmayan kayıt e-postalarını yakalayın

Kayıt formunuza her adres için erken bir kontrol kazandırın: sözdizimi, bilinen tek kullanımlık/geçici alan adları, alan adının bir posta sunucusu olup olmadığı, olası yazım hataları ve rol adresleri — gerekçeleriyle birlikte accept, review veya reject kararı olarak döner. POST /v1/email/validate uç noktasını formunuzun kendi JavaScript'inden çağırın ya da listeleri arka ucunuzdan veya kontrol panelinden toplu olarak kontrol edin.

İstek ve kimlik doğrulama

X-Api-Key başlığında origin'e kilitli yayınlanabilir bir anahtarla POST /v1/email/validate uç noktasına { "email": "user@example.com" } biçiminde bir JSON gövdesi gönderin — GET /v1/geo ile aynı anahtar türü ve izin verilen origin modeli; bu sayede ziyaretçi yazarken veya formu gönderirken doğrudan kayıt formundan güvenle çağrılabilir. Sunucu tarafında gizli anahtarınız POST /v1/email/batch'i (istek başına en fazla 100 adres), 100.000 adrese kadar eşzamansız liste işlerini (API veya kontrol panelindeki Email lists sayfası; CSV girişi ve CSV çıkışı) ve e-posta kontrolünü kaydolan IP'nin ağ göstergeleriyle tek bir puanda birleştiren POST /v1/signup/check'i kullanılabilir kılar.

Önce kararı, sonra gerekçeleri okuyun

verdict en ağır sonuçtur: geçersiz sözdizimi, var olmayan bir alan adı, posta sunucusu olmayan bir alan adı veya tek kullanımlık bir alan adı için reject; şüpheli bir yazım hatası, info@ gibi bir rol adresi, yalnızca örtük posta sunucusu olan bir alan adı veya tamamlanamayan bir DNS sorgusu için review; aksi halde accept. reasons karşılanan her koşulu listeler, böylece formunuz belirli bir mesaj gösterebilir — didYouMean doluysa hata yerine düzeltmeyi önerin.

Ne zaman çağrılmalı

Her tuş vuruşunda değil, alandan çıkıldığında veya gönderimde çağırın — henüz tamamlanmamış bir adresi her karakterde kontrol etmek, yararlı bir sinyal eklemeden istek sayısını artırır ve ziyaretçi hâlâ yazarken bir hata mesajının yanıp sönmesine yol açabilir. Her çağrı bir istek sayılır.

İstek başarısız olursa

Açık başarısızlık ilkesini uygulayın: ağ isteği hata verirse veya zaman aşımına uğrarsa, istemci tarafındaki bir kesinti yüzünden her ziyaretçiyi engellemek yerine kaydın devam etmesine izin verin. Sunucu tarafında başarısız bir DNS sorgusu asla hata veya reject olarak değil, dns_unavailable gerekçesiyle (review kararı) raporlanır. Başarısız bir kontrolün ziyaretçiye girdisini kaybettirmemesi için yazdıklarını koruyun.

Tek kullanımlık alan adları nasıl tespit edilir

Bilinen tek kullanımlık/geçici alan adları, topluluk tarafından sürdürülen üç açık kaynaklı listeden (veri kaynaklarına bakın) birleştirilir, birkaç saatte bir yenilenir ve hatalı bir kaynak girdisinin büyük bir sağlayıcıyı asla işaretleyememesi için bir izin listesiyle desteklenir. Listelenen bir alan adının alt alan adları da eşleşir. Henüz hiçbir listede yer almayan yeni tek kullanımlık alan adları çoğunlukla posta sunucuları üzerinden yakalanır: tek kullanımlık hizmetler birçok alan adını aynı birkaç posta ana makinesine yönlendirir ve posta sunucusunun listelenen alan adlarına hizmet verdiği bilinen bir alan adı disposableSource: mx_host ile işaretlenir. Yeni bir posta sunucusundaki çok yeni bir sağlayıcı yine de işaretlenmeyebilir.

Kullanım ve kota

Kontrol edilen her adres, planınızın paylaşılan aylık kotasından bir istek olarak düşülür — tekli kontrol, toplu istekteki her adres, liste işindeki farklı her adres — diğer trafiğinizle birlikte ve aynı dakika başına hız sınırıyla. Ayrı bir e-posta planı veya fiyatı yoktur. Dakika başına hız sınırı öğeleri değil HTTP çağrılarını sayar: en fazla 100 IP veya e-posta adresi içeren bir toplu istek tek bir istek sayılır; her öğe ise aylık istek kotasına yine ayrı ayrı sayılır.

Bunun doğrulamadığı şeyler

Her kontrol alan adı veya adres düzeyindedir. Watch-IP alıcının posta sunucusuyla asla iletişim kurmaz, bu nedenle bir sonuç posta kutusunun var olduğunu, postanın oraya ulaşacağını veya kaydolan kişiye ait olduğunu kanıtlamaz. accept kararı, çalıştığı doğrulanmış bir adres değil, “sorun bulunamadı” anlamına gelir — bunun için bir onay e-postası kullanın.

Yanıt alanları

syntaxValid
Adresin sözdizimi açısından geçerli olup olmadığı.
isDisposable
Alan adının bilinen bir tek kullanımlık/geçici sağlayıcıyla doğrudan, bir üst alan adı üzerinden veya posta sunucusu üzerinden eşleşip eşleşmediği. syntaxValid false olduğunda her zaman false.
disposableSource
list, parent_domain veya mx_host — isDisposable'ın neden true olduğu; aksi halde null.
mx
Alan adının posta sunucusu durumu (found, implicit, none, null_mx, no_domain veya unknown) ve birincil MX ana makinesi.
didYouMean
gmial.com → gmail.com gibi olası bir yazım hatası düzeltmesi veya null.
isRoleAccount / isFreeProvider
Rol adresi (admin@, info@, noreply@…) ve bireysel posta kutusu sağlayıcısı işaretleri. Ücretsiz sağlayıcı yalnızca bilgi amaçlıdır.
normalizedEmail / canonicalEmail
Küçük harfe çevrilmiş adres ve yinelenen hesapları fark etmek için +etiketler (ve Gmail noktaları) çıkarılmış hâli.
verdict / reasons
accept, review veya reject ile karşılanan her gerekçe kodu — tam liste için referansa bakın.

Karara göre hareket edin

Kayıt formu JavaScript

async function checkEmail(email) {
  const response = await fetch('https://api.watch-ip.com/v1/email/validate', {
    method: 'POST',
    headers: { 'X-Api-Key': 'YOUR_PUBLISHABLE_KEY', 'Content-Type': 'application/json' },
    body: JSON.stringify({ email }),
  });
  if (!response.ok) return { state: 'unknown' }; // açık başarısızlık — ağ hatası yüzünden kaydı engellemeyin

  const result = await response.json();
  if (result.didYouMean) return { state: 'suggest', suggestion: result.didYouMean };
  if (result.verdict === 'reject') return { state: 'reject', reasons: result.reasons };
  return { state: 'ok' }; // accept veya review: kaydı geçirin ve arka ucunuzda işaretleyin
}

Her gerekçe için ayrı bir mesaj gösterin — invalid_syntax, disposable_domain ve no_mail_server ziyaretçiden farklı düzeltici işlemler gerektirir — ve didYouMean'i tek tıklamalı düzeltme olarak sunun.

Sık sorulan sorular

Posta kutusunun var olduğunu doğruluyor mu?

Hayır. Sözdizimini, alan adının listelerini ve DNS posta sunucusu kayıtlarını ve adresin yapısını kontrol eder. Posta sunucusuyla asla iletişim kurmaz veya tek tek posta kutusunun gerçek olduğunu doğrulamaz — no_mail_server nedeniyle verilen reject kararı alan adının tamamıyla ilgilidir.

accept, e-postanın çalıştığının kanıtı mıdır?

Hayır. accept, kontrollerin hiçbirinin sorun bulmadığı anlamına gelir; adresin kesinlikle posta alacağı veya kaydolan kişiye ait olduğu anlamına gelmez. Buna ihtiyacınız olduğunda bir onay e-postası kullanın.

Kullanıcılar tarayıcı doğrulamasını atlayabilir mi?

Evet. Bu dahil, tarayıcı tarafındaki her kontrol JavaScript devre dışı bırakılarak veya kayıt uç noktanız doğrudan çağrılarak atlatılabilir. Önemli olan her kararı arka ucunuzda uygulayın — POST /v1/signup/check tam da bunun için tasarlandı.

Mevcut bir listeyi temizleyebilir miyim?

Evet. Kontrol panelindeki Email lists sayfasına bir CSV yükleyin veya gizli anahtarınızla POST /v1/email/jobs uç noktasına 100.000'e kadar adres gönderin, ardından her satır için karar ve gerekçeleri içeren bir sonuç CSV'si indirin. Yinelenen adresler bir kez ücretlendirilir; yüklemeler ve sonuçlar 7 gün sonra silinir.

İstekler nasıl sayılır?

Kontrol edilen adres başına bir istek; planınızın paylaşılan aylık kotasından düşülür. Bir liste işindeki yinelenen adresler bir kez sayılır; bir kayıt kontrolü bir istek sayılır.

İlgili sayfalar