Analyze Drift
pro/v1/reports/analyze-driftCompares a domain's current posture against a prior-run snapshot (POST body) and reports score deltas, resolved findings, new findings, and severity escalations. Classifies the drift as improving, stable, regressing, or mixed.
What It Does
Runs the current scan (SPF, DMARC, DKIM, MTA-STS, DNSSEC). Diffs category-level scores and grades against the prior snapshot. Matches findings by category + title to identify resolved (was present, now gone), new (now present, was not before), and escalated (severity increased). Classifies the overall drift direction based on score delta and net new-critical findings.
Why It's Useful
Posture changes silently — a vendor rotates a DKIM key and coverage drops, a DNS migration drops DNSSEC, a registrar sets clientHold. Drift analysis catches these regressions.
Use Cases
Weekly Posture Monitoring
Store a weekly snapshot per domain; run drift analysis to flag regressions for triage.
Catch silent regressions before they become findings in an external scan.
Change-Management Sign-Off
After a DNS migration, run drift against the pre-migration snapshot to verify nothing regressed.
Evidence-backed migration sign-off.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
domain | string | Required | The domain to scan. The prior snapshot is provided as JSON in the POST body.Example: example.com |
Response Fields
| Field | Type | Description |
|---|---|---|
domain | string | The evaluated domain |
direction | string | improving | stable | regressing | mixed |
score_delta | number | Overall score change (positive = improved) |
resolved | array | Findings present in baseline that are no longer present |
new | array | Findings present now that were not in baseline |
escalated | array | Findings whose severity increased |
category_deltas | array | Per-category score changes |
Code Examples
curl "https://api.edgedns.dev/v1/reports/analyze-drift" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d "domain=example.com"const response = await fetch(
'https://api.edgedns.dev/v1/reports/analyze-drift?domain=example.com',
{
headers: {
'Authorization': 'Bearer YOUR_API_KEY'
}
}
);
const data = await response.json();
console.log(data);import requests
response = requests.get(
'https://api.edgedns.dev/v1/reports/analyze-drift',
headers={'Authorization': 'Bearer YOUR_API_KEY'},
params={
'domain': 'example.com'
}
)
data = response.json()
print(data)Read the full Analyze Drift guide
Why it matters, real-world use cases, parameters, response fields, and how to call it from Claude, ChatGPT, or Gemini via MCP.
Read the guide →Related Endpoints
External References
Learn more about the standards and protocols behind this endpoint.
Try This Endpoint
Test the Analyze Drift endpoint live in the playground.