API Dokümantasyonu
API Referansı
MailAudit servislerini kendi uygulamanıza entegre edin. MX kaydı ve kara liste kontrolleri için ücretsiz API erişimi.
API anahtarı yok
Hemen kullanıma hazır, kayıt gerekmez
Oran sınırı
Dakikada 60 istek / IP adresi
Temel URL
https://api.mailaudit.io
Endpoint’ler
MX kayıt kontrolü
GET
/tools/mx-checkBir alan adının MX kayıtlarını, ayrıca SPF ve DMARC ayarlarını sorgulayın.
Parametreler
domainstringzorunluÖrnek istek
bash
curl "https://api.mailaudit.io/tools/mx-check?domain=gmail.com"Örnek cevap
json
1{
2 "domain": "gmail.com",
3 "hasMx": true,
4 "records": [
5 {
6 "exchange": "gmail-smtp-in.l.google.com",
7 "priority": 5,
8 "ip": ["142.250.150.27"]
9 },
10 {
11 "exchange": "alt1.gmail-smtp-in.l.google.com",
12 "priority": 10,
13 "ip": ["142.250.141.26"]
14 }
15 ],
16 "hasSpf": true,
17 "spfRecord": "v=spf1 redirect=_spf.google.com",
18 "hasDmarc": true,
19 "dmarcRecord": "v=DMARC1; p=none; sp=quarantine; rua=mailto:..."
20}Kara liste kontrolü
GET
/tools/blacklist-checkBir IP adresi veya alan adının büyük spam engel listelerinde (23+ DNSBL) yer alıp almadığını kontrol edin.
Parametreler
querystringzorunluÖrnek istek
bash
curl "https://api.mailaudit.io/tools/blacklist-check?query=8.8.8.8"Örnek cevap
json
1{
2 "query": "8.8.8.8",
3 "queryType": "ip",
4 "totalChecked": 23,
5 "totalListed": 0,
6 "results": [
7 {
8 "name": "Spamhaus ZEN",
9 "zone": "zen.spamhaus.org",
10 "listed": false,
11 "responseTime": 45
12 },
13 {
14 "name": "Barracuda",
15 "zone": "b.barracudacentral.org",
16 "listed": false,
17 "responseTime": 32
18 }
19 // ...
20 ]
21}Alan adı itibarı kontrolü
GET
/tools/reputationKapsamlı alan adı itibar puanı hesaplaması. SPF, DKIM, DMARC, MX kayıtları, kara liste durumu, STARTTLS desteği, alan adı yaşı ve ters DNS’i kontrol eder.
Parametreler
domainstringzorunluÖrnek istek
bash
curl "https://api.mailaudit.io/tools/reputation?domain=gmail.com"Puanlama Ölçeği
90-100 = A+
80-89 = A
70-79 = B
60-69 = C
50-59 = D
0-49 = F
Örnek cevap
json
1{
2 "domain": "gmail.com",
3 "ip": "142.250.150.27",
4 "score": 100,
5 "grade": "A+",
6 "factors": [
7 { "name": "SPF", "status": "pass", "detail": "Policy: present", "impact": 15 },
8 { "name": "DKIM", "status": "warn", "detail": "Not found", "impact": 0 },
9 { "name": "DMARC", "status": "warn", "detail": "Policy: none", "impact": 5 },
10 { "name": "MX Records", "status": "pass", "detail": "5 record(s)", "impact": 10 },
11 { "name": "Blacklists", "status": "pass", "detail": "Clean (10 checked)", "impact": 20 },
12 { "name": "STARTTLS", "status": "pass", "detail": "Supported", "impact": 10 },
13 { "name": "Domain Age", "status": "pass", "detail": "30.3 years", "impact": 10 },
14 { "name": "Reverse DNS", "status": "pass", "detail": "wa-in-f27.1e100.net", "impact": 5 }
15 ],
16 "details": {
17 "mx": { "valid": true, "count": 5, "primary": "gmail-smtp-in.l.google.com" },
18 "spf": { "valid": true, "record": "v=spf1 redirect=_spf.google.com" },
19 "dkim": { "valid": false, "selectors": [] },
20 "dmarc": { "valid": true, "policy": "none", "rua": ["mailto:..."] },
21 "blacklists": { "checked": 10, "listed": 0, "clean": true },
22 "tls": { "valid": true, "starttls": true },
23 "domainAge": { "valid": true, "years": 30.3, "registrationDate": "1995-08-13" },
24 "rdns": { "valid": true, "hostname": "wa-in-f27.1e100.net" }
25 },
26 "checkedAt": "2025-12-03T07:05:46.232Z",
27 "cached": false
28}HTTP Durum Kodları
| Kod | Durum | Açıklama |
|---|---|---|
| 200 | OK | İstek başarılı |
| 400 | Bad Request | Eksik veya geçersiz parametre |
| 429 | Too Many Requests | Oran sınırı aşıldı (60/dakika) |
| 500 | Internal Server Error | Sunucu tarafı hata |
Hata Cevapları
Hata durumunda cevapta hata açıklamasını içeren bir error alanı bulunur:
json
{
"error": "Domain is required"
}Kod Örnekleri
JavaScript / Node.js
javascript
1// MX kayıtlarını sorgula
2const response = await fetch(
3 'https://api.mailaudit.io/tools/mx-check?domain=example.com'
4);
5const data = await response.json();
6
7if (data.hasMx) {
8 console.log('MX kayıtları:', data.records);
9 console.log('SPF:', data.hasSpf ? data.spfRecord : 'Yok');
10 console.log('DMARC:', data.hasDmarc ? data.dmarcRecord : 'Yok');
11}Python
python
1import requests
2
3# Kara liste kontrolü
4response = requests.get(
5 'https://api.mailaudit.io/tools/blacklist-check',
6 params={'query': '192.168.1.1'}
7)
8data = response.json()
9
10print(f"Kontrol edilen: {data['totalChecked']} liste")
11print(f"Listede: {data['totalListed']} adet")
12
13for result in data['results']:
14 if result['listed']:
15 print(f"⚠️ {result['name']}: LİSTEDE")Python - Reputation Check
python
1import requests
2
3# Alan adı itibarı kontrolü
4response = requests.get(
5 'https://api.mailaudit.io/tools/reputation',
6 params={'domain': 'example.com'}
7)
8data = response.json()
9
10print(f"Score: {data['score']}/100 ({data['grade']})")
11print("\nFaktörler:")
12for factor in data['factors']:
13 icon = "✅" if factor['status'] == 'pass' else "⚠️" if factor['status'] == 'warn' else "❌"
14 print(f" {icon} {factor['name']}: {factor['detail']} ({factor['impact']:+d})")PHP
php
1<?php
2// MX kontrolü
3$domain = 'example.com';
4$url = "https://api.mailaudit.io/tools/mx-check?domain=" . urlencode($domain);
5
6$response = file_get_contents($url);
7$data = json_decode($response, true);
8
9if ($data['hasMx']) {
10 foreach ($data['records'] as $mx) {
11 echo "MX: {$mx['exchange']} (öncelik: {$mx['priority']})\n";
12 }
13}
14?>API’yi denemek ister misiniz?
Araçlarımızı web arayüzünden deneyin veya API ile geliştirmeye başlayın.