Documentație API

Referință API

Integrează serviciile MailAudit în propria aplicație. Acces API gratuit pentru verificări MX și blacklist.

Fără cheie API

Poți folosi direct, fără înregistrare

Limită de request-uri

60 de request-uri / minut / adresă IP

URL de bază

https://api.mailaudit.io

Endpoint-uri

Verificare înregistrări MX

GET/tools/mx-check

Interoghează înregistrările MX ale unui domeniu, precum și setările SPF și DMARC.

Parametri

domainstringobligatoriu
Numele domeniului de verificat (ex. example.com)

Exemplu de request

bash
curl "https://api.mailaudit.io/tools/mx-check?domain=gmail.com"

Exemplu de răspuns

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}

Verificare blacklist

GET/tools/blacklist-check

Verifică dacă o adresă IP sau un domeniu este în principalele liste de blocare pentru spam (23+ DNSBL).

Parametri

querystringobligatoriu
Adresă IP (ex. 192.168.1.1) sau nume de domeniu

Exemplu de request

bash
curl "https://api.mailaudit.io/tools/blacklist-check?query=8.8.8.8"

Exemplu de răspuns

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}

Verificare reputație domeniu

GET/tools/reputation

Calcul complet al scorului de reputație al domeniului. Verifică SPF, DKIM, DMARC, înregistrări MX, stare blacklist, suport STARTTLS, vechimea domeniului și reverse DNS.

Parametri

domainstringobligatoriu
Numele domeniului de verificat (ex. gmail.com)

Exemplu de request

bash
curl "https://api.mailaudit.io/tools/reputation?domain=gmail.com"
Scală de notare
90-100 = A+
80-89 = A
70-79 = B
60-69 = C
50-59 = D
0-49 = F

Exemplu de răspuns

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}

Coduri de stare HTTP

CodStareDescriere
200OKRequest reușit
400Bad RequestParametru lipsă sau invalid
429Too Many RequestsLimită de request-uri depășită (60/minut)
500Internal Server ErrorEroare de server

Răspunsuri de eroare

În caz de eroare, răspunsul conține un câmp error cu descrierea erorii:

json
{
  "error": "Domain is required"
}

Exemple de cod

JavaScript / Node.js

javascript
1// Interogare înregistrări MX
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('Înregistrări MX:', data.records);
9  console.log('SPF:', data.hasSpf ? data.spfRecord : 'Niciuna');
10  console.log('DMARC:', data.hasDmarc ? data.dmarcRecord : 'Niciuna');
11}

Python

python
1import requests
2
3# Verificare blacklist
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"Verificate: {data['totalChecked']} liste")
11print(f"Listat în: {data['totalListed']} locuri")
12
13for result in data['results']:
14    if result['listed']:
15        print(f"⚠️  {result['name']}: LISTAT")

Python - Reputation Check

python
1import requests
2
3# Verificare reputație domeniu
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("\nFactori:")
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// Verificare MX
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']} (prioritate: {$mx['priority']})\n";
12    }
13}
14?>

Vrei să încerci API-ul?

Testează instrumentele noastre din interfața web sau începe direct dezvoltarea cu API-ul.