Geliştirici Referansı
E-posta kara listesi
E-posta kara listesi API belgelerini, istek parametrelerini, yanıt alanlarını, kod örneklerini ve DomScan entegrasyonları için hata işlemeyi inceleyin.
E-posta kara listesi
Jetable/geçici e-posta adreslerini, rol tabanlı adresleri, ücretsiz sağlayıcıları algılamak ve alan adı itibarını kontrol etmek için kapsamlı e-posta doğrulaması API. Veritabanımız 80.000+ jetable e-posta alanı içerir ve yüksek/orta/düşük güven puanlaması vardır. İşaret dolandırıcılığını önlemek ve potansiyel müşteri kalitesini filtrelemek için gereklidir.
GET
/v1/email/check
Sorgu Parametreleri
| Parametre | Tür | Açıklama |
|---|---|---|
| email gerekli | string | Email address to check (e.g., "[email protected]") |
| checks isteğe bağlı | string | Çalıştırmak için virgülle ayrılmış kontroller: disposable, role, free, mx, dnsbl. Varsayılan: tümü |
Kullanılabilir kontroller
| Kontrol Et | Açıklama | Risk puanları |
|---|---|---|
disposable | 80 binin üzerinde tek kullanımlık alan adı veritabanına karşı kontrol eder | +80 |
role | Role dayalı adresleri tespit eder (admin@, support@ vb.) | +20 |
free | Ücretsiz e-posta sağlayıcılarını belirler (gmail, yahoo vb.) | +10 |
mx | Alan adı için MX kayıtlarının mevcut olduğunu doğrular | +50 (yoksa) |
dnsbl | Alan adını DNS kara listelerine karşı kontrol eder (Spamhaus vb.) | +15-60 |
Risk seviyeleri
- Düşük (0-39):: Kabul edilmesi güvenli
- Orta (40-69):: İnceleme önerilir
- Yüksek (70-100):: Muhtemelen sahte veya geçici
Örnek İstek
# Full check (all validations)
curl -H "X-API-Key: your-api-key" "https://domscan.net/v1/email/[email protected]"
# Quick disposable check only
curl -H "X-API-Key: your-api-key" "https://domscan.net/v1/email/[email protected]&checks=disposable"
import requests
domscan = requests.Session()
domscan.headers.update({"X-API-Key": "your-api-key"})
response = domscan.get(
"https://domscan.net/v1/email/check",
params={"email": "[email protected]"}
)
data = response.json()
if data['risk_level'] == 'high':
print(f"Reject: {data['flags']}")
elif data['checks']['disposable']['is_disposable']:
print("Disposable email detected")
Örnek Yanıt
{
"email": "[email protected]",
"domain": "tempmail.com",
"local_part": "user",
"valid_syntax": true,
"checks": {
"disposable": {
"is_disposable": true,
"confidence": "high"
},
"role": {
"is_role": false,
"role_type": null
},
"free": {
"is_free": false,
"provider": null
},
"mx": {
"has_mx": true,
"records": ["mx.tempmail.com"]
},
"dnsbl": {
"listed": false,
"threat_level": "none"
}
},
"risk_score": 80,
"risk_level": "high",
"flags": ["DISPOSABLE_DOMAIN"],
"checked_at": "2025-01-15T12:00:00Z"
}
Yanıt Alanları
| Alan | Tür |
|---|---|
email |
string |
domain |
string |
local_part |
string |
valid_syntax |
boolean |
checks |
object |
checks.disposable |
object |
checks.disposable.is_disposable |
boolean |
checks.disposable.confidence |
string | null |
checks.role |
object |
checks.role.is_role |
boolean |
checks.role.role_type |
string | null |
checks.free |
object |
checks.free.is_free |
boolean |
checks.free.provider |
string | null |
checks.mx |
object |
checks.mx.has_mx |
boolean |
checks.mx.records[] |
string[] |
checks.dnsbl |
object |
checks.dnsbl.listed |
boolean |
checks.dnsbl.threat_level |
string |
risk_score |
integer |
risk_level |
string |
flags[] |
string[] |
checked_at |
string |
POST
/v1/email/check/bulk
İstek Gövdesi
| Parametre | Tür | Açıklama |
|---|---|---|
| emails gerekli | string[] | Kontrol edilecek e-posta adresleri dizisi (istek başına en fazla 100) |
| checks isteğe bağlı | string[] | Çalıştırılacak kontroller: ["disposable", "role", "free", "mx", "dnsbl"] |
Kullanım Alanları
- Pazarlama kampanyalarından önce e-posta listelerini temizleyin
- Kullanıcı kayıtlarını gerçek zamanlı doğrulayın
- Potansiyel müşterileri e-posta kalitesine göre puanlayın
- Kayıt dolandırıcılığı kalıplarını tespit edin
Örnek İstek
curl -H "X-API-Key: your-api-key" -X POST "https://domscan.net/v1/email/check/bulk" \
-H "Content-Type: application/json" \
-d '{
"emails": [
"[email protected]",
"[email protected]",
"[email protected]"
],
"checks": ["disposable", "role"]
}'
Örnek Yanıt
{
"results": [
{
"email": "[email protected]",
"risk_level": "low",
"risk_score": 10,
"flags": ["FREE_PROVIDER"]
},
{
"email": "[email protected]",
"risk_level": "high",
"risk_score": 80,
"flags": ["DISPOSABLE_DOMAIN"]
},
{
"email": "[email protected]",
"risk_level": "medium",
"risk_score": 20,
"flags": ["ROLE_ADDRESS"]
}
],
"summary": {
"total": 3,
"disposable": 1,
"role_based": 1,
"free_provider": 1,
"high_risk": 1,
"medium_risk": 1,
"low_risk": 1
},
"checked_at": "2025-01-15T12:00:00Z"
}
Yanıt Alanları
| Alan | Tür |
|---|---|
results[] |
object[] |
results[] |
object |
summary |
object |
summary.total |
integer |
summary.disposable |
integer |
summary.role_based |
integer |
summary.free_provider |
integer |
summary.no_mx |
integer |
summary.dnsbl_listed |
integer |
summary.high_risk |
integer |
summary.medium_risk |
integer |
summary.low_risk |
integer |
checked_at |
string |
GET
/v1/email/blacklist
Sorgu Parametreleri
| Parametre | Tür | Açıklama |
|---|---|---|
| limit isteğe bağlı | number | Döndürülecek alan adı sayısı (varsayılan: 1000, en fazla: 10000) |
| offset isteğe bağlı | number | Sayfalandırma konumu (varsayılan: 0) |
| format isteğe bağlı | string | Düz metin listesi için json (varsayılan) veya txt |
Açıklama
Tek kullanımlık e-posta alan adı kara listemizi indirin. Tüm kullanıcılar için ücretsizdir. Tam listeyi indirilebilir dosya olarak almak için /v1/email/blacklist/download kullanın.
Örnek İstek
# Get first 1000 domains as JSON
curl -H "X-API-Key: your-api-key" "https://domscan.net/v1/email/blacklist"
# Get as plain text for firewall rules
curl -H "X-API-Key: your-api-key" "https://domscan.net/v1/email/blacklist?format=txt&limit=5000"
# Download complete blacklist
curl -H "X-API-Key: your-api-key" "https://domscan.net/v1/email/blacklist/download" -o disposable.json
Örnek Yanıt
{
"domains": [
"tempmail.com",
"guerrillamail.com",
"10minutemail.com",
"mailinator.com",
"..."
],
"total": 85432,
"offset": 0,
"limit": 1000,
"metadata": {
"last_updated": "2025-01-15T00:00:00Z",
"total_domains": 85432,
"high_confidence_count": 12500,
"wildcard_count": 234,
"sources": [
"disposable-email-domains",
"ivolo/disposable-email-domains"
]
}
}
Yanıt Alanları
| Alan | Tür |
|---|---|
domains[] |
string[] |
total |
integer |
offset |
integer |
limit |
integer |
metadata |
object |
metadata.last_updated |
string |
metadata.total_domains |
integer |
metadata.high_confidence_count |
integer |
metadata.wildcard_count |
integer |
metadata.sources[] |
string[] |
metadata.source_count |
integer |
metadata.successful_source_count |
integer |
metadata.failed_source_count |
integer |
metadata.refresh_cadence_hours |
integer |
metadata.refresh_status |
string |
metadata.next_refresh_due |
string |
metadata.dataset_status |
string |
metadata.quality_policy_version |
integer | null |
metadata.quarantined_domain_count |
integer |
metadata.rejected_domain_count |
integer |
GET
/v1/email/blacklist/download
Sorgu Parametreleri
| Parametre | Tür | gerekli |
|---|---|---|
| format |
string
İzin verilen değerler
jsontxt
Varsayılan
json
|
isteğe bağlı |
Yanıt Alanları
| Alan | Tür |
|---|---|
domains[] |
string[] |
wildcards[] |
string[] |
metadata |
object |
Örnek İstek
curl -H "X-API-Key: $DOMSCAN_API_KEY" "https://domscan.net/v1/email/blacklist/download?format=example.com"
Örnek Yanıt
{
"domains": [
"example.com"
],
"wildcards": [
"string"
],
"metadata": {}
}