Public API

Programmatic access to your data and security insights. Full interactive docs (with in-browser request testing) are always available at Integrations → API Access → API Documentation.

Authentication

Every request needs a Bearer API key:

Authorization: Bearer <your-api-key>

Generate one from Integrations → API Access → Manage Keys:

  1. Enter a Key Name.
  2. Choose an Access Scope: Full Access, or SIEM Read-Only (can only call the SIEM event feed, nothing else).
  3. Click Generate. The raw key is shown once, in a copy-to-clipboard banner, so store it now: DMARCS never shows it again (only a hash is kept).
  4. Existing keys can be renamed at a glance in the list (name, scope, creation date) and Revoked at any time.

Rate limits

300 requests per minute per key. Going over returns HTTP 429 with a Retry-After header. Every API call is scoped to your organization; a key can never see another organization's data, and a domain-scoped call is rejected if your org doesn't own/monitor that domain.

What you can do

CategoryWhat it returns
Domain inventoryYour primary and monitored domains
DMARC reportingRaw aggregate report rows (source IP, disposition, SPF/DKIM results, counts) for a domain, or all domains, up to 1000 rows per call
PDF reportsGenerate/download an Executive or Technical report for a date range
Domain securityA live SPF/DMARC check plus a 0–100 security score for a domain you own
Vendor riskRisk/threat scores, DMARC policy, and SPF status for each known sending vendor
Brand protectionLookalike/typosquat domain risk data
Audit logsYour organization's audit trail (up to 100 rows per call)
SIEM feedA cursor-paginated event feed for piping into a SIEM (e.g. FortiSIEM); requires an SIEM-scoped key
Every data export through the API is itself logged to your Audit Logs, recording which API key was used, so pulling data via the API is just as traceable as doing it through the UI.