DMARC Management API
DMARC-Domains per API hinzufügen, verifizieren und verwalten. Aggregate-Reports und Statistiken programmatisch abrufen.
Überblick
Die DMARC Management API bietet volle programmatische Kontrolle über Ihr DMARC-Monitoring.
| Methode | Endpunkt | Beschreibung |
|---|---|---|
GET | /api/v1/dmarc/domains | Alle Domains listen |
POST | /api/v1/dmarc/domains | Neue Domain hinzufügen |
GET | /api/v1/dmarc/domains/{id} | Domain-Details abrufen |
DELETE | /api/v1/dmarc/domains/{id} | Domain + alle Reports löschen |
POST | /api/v1/dmarc/domains/{id}/verify | Domain-Inhaberschaft verifizieren (DNS) |
GET | /api/v1/dmarc/domains/{id}/reports | Aggregate-Reports abrufen (paginiert) |
GET | /api/v1/dmarc/domains/{id}/tls-reports | TLS-RPT Reports abrufen (TLS-Fehler) |
GET | /api/v1/dmarc/domains/{id}/stats | Pass-Raten & Top-Absender |
Setup-Workflow
POST /api/v1/dmarc/domains— Domain hinzufügen, DNS-Anleitung erhalten- TXT-Records im DNS anlegen (Verifizierung + DMARC)
POST /api/v1/dmarc/domains/{id}/verify— Inhaberschaft verifizieren- 24-72h warten bis erste Reports eingehen
GET /api/v1/dmarc/domains/{id}/reports— Reports abrufenGET /api/v1/dmarc/domains/{id}/stats— Statistiken abrufen
Endpunkt-Details
Domain hinzufügen
POST /api/v1/dmarc/domains
Authorization: Bearer IHR_TOKEN
Content-Type: application/json
{ "domain": "example.com" }
Antwort:
{
"success": true,
"data": {
"id": "abc-123",
"domain": "example.com",
"verified": false,
"reportEmail": "d-xxx@dmarc.provider.tools",
"dmarcRecord": "v=DMARC1; p=none; rua=mailto:...; ruf=mailto:...",
"setup": {
"step1": { "host": "_provider-tools.example.com", "type": "TXT", "value": "provider-tools-verify=..." },
"step2": { "host": "_dmarc.example.com", "type": "TXT", "value": "v=DMARC1; ..." },
"step3": { "method": "POST", "url": "/api/v1/dmarc/domains/abc-123/verify" }
}
}
}
Domain verifizieren
POST /api/v1/dmarc/domains/{domainId}/verify
Authorization: Bearer IHR_TOKEN
// Erfolgreich:
{ "success": true, "verified": true, "message": "Domain verified successfully!" }
// Noch nicht verifiziert:
{ "success": true, "verified": false, "expected": { "host": "...", "value": "..." }, "found": [] }
Statistiken abrufen
GET /api/v1/dmarc/domains/{domainId}/stats?days=30
Authorization: Bearer IHR_TOKEN
Antwort:
{
"data": {
"totalMessages": 52340,
"dkimPassRate": 97,
"spfPassRate": 95,
"topSenders": [
{ "organization": "google.com", "messages": 30000, "dkimPassRate": 99, "spfPassRate": 98 }
]
}
}
TLS-RPT Reports abrufen
GET /api/v1/dmarc/domains/{domainId}/tls-reports?days=30
Authorization: Bearer IHR_TOKEN
Antwort:
{
"data": {
"domain": "example.com",
"tlsRptRecord": "v=TLSRPTv1; rua=mailto:t-xxx@dmarc.provider.tools",
"summary": {
"totalReports": 12,
"totalSuccessfulSessions": 45230,
"totalFailedSessions": 3,
"failureRate": 0,
"topReporters": [{"organization": "google.com", "success": 30000, "fail": 1}]
}
}
}
TLS-RPT DNS-Record: _smtp._tls.example.com TXT "v=TLSRPTv1; rua=mailto:t-xxx@dmarc.provider.tools"
Domain löschen
DELETE /api/v1/dmarc/domains/{domainId}
Authorization: Bearer IHR_TOKEN
// ACHTUNG: Löscht Domain und ALLE Reports dauerhaft!
{ "success": true, "message": "Domain example.com removed" }