Reference For The Full Audit Workflow

This is the complete contract for the Email Domain Trust Auditor API: scored single-domain audits, bulk portfolio checks, same-domain compare, remediation planning, provider discovery, finding catalog access, and report rendering. Use it when you want exact request and response models, not just conceptual docs.

What You Can Inspect Here

Every endpoint, schema, example payload, response header, and validation shape exposed by the public API contract.

Best Used For

SDK generation, backend integrations, workflow automation, and checking exactly how audit, compare, and report calls are modeled.

What Makes This API Different

It is built around public DNS posture, score interpretation, selector-aware DKIM coverage, provider-aware hints, and remediation/report workflows rather than generic DNS lookup output.

POST /trust/v1/free/audits/domain

Audit a domain — BASIC

Audit one domain and return its score, grade, risk level, and top prioritized findings. The BASIC response intentionally favors high-signal issues and may omit low-priority informational items on otherwise strong domains. Upgrade to a paid plan for the complete findings list, bulk audits, compare, fix-plan, and richer reporting.

BASIC 0 paid audit units free_post_domain_audit

Request Body

Required
Body AuditRequest object

Body of ``POST /v1/free/audits/domain`` and ``POST /v1/pro/audits/domain``.

domain string Required

Email domain to audit (e.g. 'example.com').

Domain string

Email domain to audit (e.g. 'example.com').

dkim_selectors array

Exact DKIM selectors to check. Use selector names copied from the sending platform when possible because catalog examples are not authoritative for every domain. If omitted, the API may conservatively test common selectors only when a single stable provider match exists; exact provider-issued selectors still produce the most authoritative result.

Dkim Selectors array

Exact DKIM selectors to check. Use selector names copied from the sending platform when possible because catalog examples are not authoritative for every domain. If omitted, the API may conservatively test common selectors only when a single stable provider match exists; exact provider-issued selectors still produce the most authoritative result.

Item object object
check_mta_sts_policy boolean

Whether to fetch and validate the MTA-STS policy file over HTTPS.

Check Mta Sts Policy boolean

Whether to fetch and validate the MTA-STS policy file over HTTPS.

check_bimi boolean

Whether to check for a BIMI DNS record. This is syntax-only validation; it does not verify logo hosting, SVG profile compliance, trademark eligibility, or VMC/CMC certificate trust.

Check Bimi boolean

Whether to check for a BIMI DNS record. This is syntax-only validation; it does not verify logo hosting, SVG profile compliance, trademark eligibility, or VMC/CMC certificate trust.

provider_context object Nullable
ProviderContext ProviderContext object
Nullable value
provider string Required

Declared mail provider/profile. Accepted canonical ids include: amazon_ses, google_workspace, klaviyo, mailchimp, microsoft_365, sendgrid. Aliases from `/v1/pro/providers` are also accepted and normalized.

Provider string

Declared mail provider/profile. Accepted canonical ids include: amazon_ses, google_workspace, klaviyo, mailchimp, microsoft_365, sendgrid. Aliases from `/v1/pro/providers` are also accepted and normalized.

Array Items
Item object object
Array Items
Item object object
cURL POST
curl -H 'content-type: application/json' \
  -H 'X-RapidAPI-Key: YOUR_RAPIDAPI_KEY' \
  -H 'X-RapidAPI-Host: email-domain-trust-auditor.p.rapidapi.com' \
  -X POST 'https://email-domain-trust-auditor.p.rapidapi.com/trust/v1/free/audits/domain' \
  -d '{
  "check_bimi": true,
  "check_mta_sts_policy": true,
  "dkim_selectors": [
    "provider-issued-selector-1"
  ],
  "domain": "google.com",
  "provider_context": {
    "provider": "google_workspace"
  }
}'
Example Request application/json
{
  "check_bimi": true,
  "check_mta_sts_policy": true,
  "dkim_selectors": [
    "provider-issued-selector-1"
  ],
  "domain": "google.com",
  "provider_context": {
    "provider": "google_workspace"
  }
}
200 Successful Response
Example
{
  "assessment_confidence": "high",
  "audit_id": "eba3de04-9956-4b62-bcb8-23b82eabba1d",
  "coverage_summary": "The apex appears intentionally configured as a non-mail domain (null MX + SPF -all). Interpret the score as protective DNS posture, not active sender-program readiness.",
  "domain": "example.com",
  "enforcement_status": "partial",
  "grade": "A+",
  "mail_flow_note": "The apex publishes null MX and SPF -all. Treat the score as protective DNS posture for a non-mail apex, not active sender-program readiness.",
  "mail_flow_profile": "apex_non_mail_protected",
  "risk_level": "low",
  "score": 95,
  "top_findings": [
    {
      "check": "dmarc",
      "evidence": "Record: v=DMARC1;p=reject;sp=reject;adkim=s;aspf=s | Issues: No 'rua' tag \u2014 aggregate reports will not be received.",
      "fix": "Add rua=mailto:<monitored-dmarc-report-mailbox> to receive aggregate reports.",
      "id": "dmarc.missing_rua",
      "severity": "medium",
      "status": "warn",
      "title": "DMARC Missing Aggregate Reporting URI"
    }
  ],
  "top_recommendations": [
    "Add rua=mailto:<monitored-dmarc-report-mailbox> to receive aggregate reports."
  ],
  "upgrade_note": "Upgrade to Pro for full findings, bulk audits, compare, and fix-plan endpoints."
}
Response schema FreeAuditResponse object

Trimmed response for the free-tier single-domain audit endpoint. Contains the score, grade, risk level, and a prioritized subset of findings. Upgrade to Pro for the full findings list, score breakdown, provider analysis, bulk audits, compare, and remediation fix-plans.

audit_id string Required

Unique identifier for this audit run (UUID-4).

Audit Id string

Unique identifier for this audit run (UUID-4).

domain string Required

Original domain as submitted.

Domain string

Original domain as submitted.

score integer Required

Overall trust score (0-100). Read alongside risk level, assessment confidence, and coverage summary; provisional DKIM coverage or critical anti-spoofing gaps can cap the top-line result.

Score integer

Overall trust score (0-100). Read alongside risk level, assessment confidence, and coverage summary; provisional DKIM coverage or critical anti-spoofing gaps can cap the top-line result.

grade string Required

Letter grade: A+ / A / B / C / D / F. Interpret alongside risk level, assessment confidence, and coverage summary rather than as a standalone safety verdict.

Grade string

Letter grade: A+ / A / B / C / D / F. Interpret alongside risk level, assessment confidence, and coverage summary rather than as a standalone safety verdict.

risk_level string Required

Aggregate risk level: critical | high | medium | low.

Risk Level string

Aggregate risk level: critical | high | medium | low.

enforcement_status string Required

Email authentication enforcement posture: none | partial | full.

Enforcement Status string

Email authentication enforcement posture: none | partial | full.

mail_flow_profile string

Visible mail-role classification for the audited apex domain.

Mail Flow Profile string

Visible mail-role classification for the audited apex domain.

mail_flow_note string Nullable
Nested schema string Nullable
assessment_confidence string

How complete the evidence was for this assessment: high | medium | low.

Assessment Confidence string

How complete the evidence was for this assessment: high | medium | low.

coverage_summary string

What was directly evaluated versus left partially covered or provisional.

Coverage Summary string

What was directly evaluated versus left partially covered or provisional.

top_findings array Required

Up to 5 prioritized findings. The response prefers critical/high actionable issues, then backfills medium-severity gaps when needed. Low-priority informational findings may be omitted on otherwise strong domains. Upgrade to Pro for the complete findings list.

Top Findings array

Up to 5 prioritized findings. The response prefers critical/high actionable issues, then backfills medium-severity gaps when needed. Low-priority informational findings may be omitted on otherwise strong domains. Upgrade to Pro for the complete findings list.

Item object object
top_recommendations array Required

Up to 3 highest-priority recommendations. Upgrade to Pro for the full prioritized list and a step-by-step fix plan.

Top Recommendations array

Up to 3 highest-priority recommendations. Upgrade to Pro for the full prioritized list and a step-by-step fix plan.

Item object object
upgrade_note string

Description of additional capabilities available in the Pro tier.

Upgrade Note string

Description of additional capabilities available in the Pro tier.

Array Items
Item object object
403 In protected production deployments, direct origin calls without RapidAPI forwarding are rejected. RapidAPI marketplace consumers authenticate through RapidAPI and should not be shown or asked to send X-RapidAPI-Proxy-Secret themselves.
Example
{
  "detail": "Forbidden: invalid or missing proxy secret."
}
No schema details were provided for response schema.
422 Validation Error
Response schema HTTPValidationError object
detail array
Detail array
Item object object
Array Items
Item object object
POST /trust/v1/pro/audits/domain

Audit a domain — Paid

Full audit: score, grade, all findings, risk summary, score breakdown, provider analysis, assessment confidence, coverage summary, and recommendations.

PRO / ULTRA / MEGA 1 audit pro_post_domain_audit

Request Body

Required
Body AuditRequest object

Body of ``POST /v1/free/audits/domain`` and ``POST /v1/pro/audits/domain``.

domain string Required

Email domain to audit (e.g. 'example.com').

Domain string

Email domain to audit (e.g. 'example.com').

dkim_selectors array

Exact DKIM selectors to check. Use selector names copied from the sending platform when possible because catalog examples are not authoritative for every domain. If omitted, the API may conservatively test common selectors only when a single stable provider match exists; exact provider-issued selectors still produce the most authoritative result.

Dkim Selectors array

Exact DKIM selectors to check. Use selector names copied from the sending platform when possible because catalog examples are not authoritative for every domain. If omitted, the API may conservatively test common selectors only when a single stable provider match exists; exact provider-issued selectors still produce the most authoritative result.

Item object object
check_mta_sts_policy boolean

Whether to fetch and validate the MTA-STS policy file over HTTPS.

Check Mta Sts Policy boolean

Whether to fetch and validate the MTA-STS policy file over HTTPS.

check_bimi boolean

Whether to check for a BIMI DNS record. This is syntax-only validation; it does not verify logo hosting, SVG profile compliance, trademark eligibility, or VMC/CMC certificate trust.

Check Bimi boolean

Whether to check for a BIMI DNS record. This is syntax-only validation; it does not verify logo hosting, SVG profile compliance, trademark eligibility, or VMC/CMC certificate trust.

provider_context object Nullable
ProviderContext ProviderContext object
Nullable value
provider string Required

Declared mail provider/profile. Accepted canonical ids include: amazon_ses, google_workspace, klaviyo, mailchimp, microsoft_365, sendgrid. Aliases from `/v1/pro/providers` are also accepted and normalized.

Provider string

Declared mail provider/profile. Accepted canonical ids include: amazon_ses, google_workspace, klaviyo, mailchimp, microsoft_365, sendgrid. Aliases from `/v1/pro/providers` are also accepted and normalized.

Array Items
Item object object
Array Items
Item object object
cURL POST
curl -H 'content-type: application/json' \
  -H 'X-RapidAPI-Key: YOUR_RAPIDAPI_KEY' \
  -H 'X-RapidAPI-Host: email-domain-trust-auditor.p.rapidapi.com' \
  -X POST 'https://email-domain-trust-auditor.p.rapidapi.com/trust/v1/pro/audits/domain' \
  -d '{
  "check_bimi": true,
  "check_mta_sts_policy": true,
  "dkim_selectors": [
    "provider-issued-selector-1"
  ],
  "domain": "google.com",
  "provider_context": {
    "provider": "google_workspace"
  }
}'
Example Request application/json
{
  "check_bimi": true,
  "check_mta_sts_policy": true,
  "dkim_selectors": [
    "provider-issued-selector-1"
  ],
  "domain": "google.com",
  "provider_context": {
    "provider": "google_workspace"
  }
}
200 Successful Response
Example
{
  "audit_id": "f554d658-3b8b-4fd3-96d1-d9a8157d291b",
  "audited_at": "2026-04-13T05:21:12.534282Z",
  "domain": "example.com",
  "findings": [
    {
      "check": "mx",
      "evidence": "MX record is explicitly set to '.' (null MX), indicating the domain does not accept inbound email.",
      "id": "mx.null_mx",
      "severity": "low",
      "status": "not_applicable",
      "title": "Null MX Published (No Inbound Mail)"
    },
    {
      "check": "spf",
      "evidence": "SPF record found with '-all' (hard-fail). Record: v=spf1 -all",
      "id": "spf.pass",
      "severity": "low",
      "status": "pass",
      "title": "SPF Valid"
    },
    {
      "check": "dmarc",
      "evidence": "Record: v=DMARC1;p=reject;sp=reject;adkim=s;aspf=s | Issues: No 'rua' tag \u2014 aggregate reports will not be received.",
      "fix": "Add rua=mailto:<monitored-dmarc-report-mailbox> to receive aggregate reports.",
      "id": "dmarc.missing_rua",
      "severity": "medium",
      "status": "warn",
      "title": "DMARC Missing Aggregate Reporting URI"
    }
  ],
  "grade": "A+",
  "mail_flow_note": "The apex publishes null MX and SPF -all. Treat the score as protective DNS posture for a non-mail apex, not active sender-program readiness.",
  "mail_flow_profile": "apex_non_mail_protected",
  "normalized_domain": "example.com",
  "raw": {
    "_meta": {
      "dkim_selectors_supplied": [],
      "request_flags": {
        "check_bimi": true,
        "check_mta_sts_policy": true
      }
    },
    "dmarc": {
      "records": [
        "v=DMARC1;p=reject;sp=reject;adkim=s;aspf=s"
      ],
      "tags": {
        "adkim": "s",
        "aspf": "s",
        "p": "reject",
        "sp": "reject",
        "v": "DMARC1"
      }
    },
    "mx": {
      "null_mx": true,
      "records": [
        ""
      ]
    },
    "spf": {
      "records": [
        "v=spf1 -all"
      ]
    }
  },
  "recommendations": [
    "Add rua=mailto:<monitored-dmarc-report-mailbox> to receive aggregate reports."
  ],
  "risk": {
    "assessment_confidence": "high",
    "coverage_summary": "The apex appears intentionally configured as a non-mail domain (null MX + SPF -all). Interpret the score as protective DNS posture, not active sender-program readiness.",
    "deliverability_risk": "Low \u2014 the domain publishes a null MX, so inbound delivery is intentionally disabled at the apex.",
    "enforcement_status": "partial",
    "executive_summary": "The domain received a score of 95/100 (grade A+). The apex appears intentionally configured as a protected non-mail domain; remaining findings are monitoring or coverage gaps, not evidence that an active sender program is only partially enforced.",
    "risk_level": "low",
    "spoofing_risk": "Low \u2014 the apex publishes null MX and SPF -all, so it appears intentionally configured not to receive or send mail from the apex.",
    "top_3_actions": [
      "Add rua=mailto:<monitored-dmarc-report-mailbox> to receive aggregate reports."
    ]
  },
  "scope": {
    "entity_type": "root_domain",
    "evaluated_entity": "example.com",
    "scope_note": "This audit evaluates the domain's publicly visible email trust posture based on DNS records and, where applicable, the MTA-STS policy file. Some production sending infrastructure may live on subdomains or use provider-managed selectors not fully visible from this scope. DKIM evaluation requires explicit selectors. BIMI validation is syntax-only (VMC certificate verification is not performed)."
  },
  "score": 95,
  "score_breakdown": {
    "dkim": {
      "earned": 0.0,
      "note": "Not applicable to this domain, so it is excluded from the normalized 0-100 breakdown.",
      "possible": 0.0,
      "status": "not_applicable"
    },
    "dmarc": {
      "earned": 45.0,
      "possible": 50.0,
      "status": "warn"
    },
    "mx": {
      "earned": 0.0,
      "note": "Not applicable to this domain, so it is excluded from the normalized 0-100 breakdown.",
      "possible": 0.0,
      "status": "not_applicable"
    },
    "spf": {
      "earned": 50.0,
      "possible": 50.0,
      "status": "pass"
    }
  },
  "score_version": "11"
}
Response schema AuditResponse object
audit_id string

Unique identifier for this audit run (UUID-4).

Audit Id string

Unique identifier for this audit run (UUID-4).

audited_at string

UTC timestamp when the audit was executed (ISO-8601).

Audited At string

UTC timestamp when the audit was executed (ISO-8601).

domain string Required

Original domain as submitted.

Domain string

Original domain as submitted.

normalized_domain string Required

Domain after normalization (punycode).

Normalized Domain string

Domain after normalization (punycode).

scope object Required
Scope Scope object
evaluated_entity string Required

The exact domain string that was audited.

Evaluated Entity string

The exact domain string that was audited.

entity_type string

Type of entity evaluated: root_domain | subdomain.

Entity Type string

Type of entity evaluated: root_domain | subdomain.

scope_note string Required

Human-readable disclaimer about what this audit covers and what it does not.

Scope Note string

Human-readable disclaimer about what this audit covers and what it does not.

Array Items
Item object object
mail_flow_profile string

How to interpret the apex domain's visible mail role: active_mail_domain, apex_non_mail_protected, apex_inbound_disabled, apex_outbound_or_subdomain_mail_possible, or mail_role_unknown.

Mail Flow Profile string

How to interpret the apex domain's visible mail role: active_mail_domain, apex_non_mail_protected, apex_inbound_disabled, apex_outbound_or_subdomain_mail_possible, or mail_role_unknown.

mail_flow_note string Nullable
Nested schema string Nullable
score integer Required

Overall trust score (0-100). Read alongside risk, assessment confidence, and coverage notes; critical anti-spoofing gaps or provisional DKIM coverage can cap the top-line result.

Score integer

Overall trust score (0-100). Read alongside risk, assessment confidence, and coverage notes; critical anti-spoofing gaps or provisional DKIM coverage can cap the top-line result.

score_version string Required

Scoring model version (for reproducibility).

Score Version string

Scoring model version (for reproducibility).

score_breakdown object Required

Per-check score breakdown showing earned vs possible normalised points. Included checks sum to roughly 100 possible points; excluded checks show 0 possible with an explanatory note.

Score Breakdown Score Breakdown object

Per-check score breakdown showing earned vs possible normalised points. Included checks sum to roughly 100 possible points; excluded checks show 0 possible with an explanatory note.

Dictionary Values
Dictionary value ScoreBreakdownEntry object
earned number Required

Normalised points earned for this check.

Earned number

Normalised points earned for this check.

possible number Required

Maximum normalised points available for this check within the current 0-100 scoring basis. Checks excluded from scoring report 0.0 here and explain why in `note`.

Possible number

Maximum normalised points available for this check within the current 0-100 scoring basis. Checks excluded from scoring report 0.0 here and explain why in `note`.

status string Required

Finding status used for scoring.

Status string

Finding status used for scoring.

note string Nullable
Nested schema string Nullable
Array Items
Item object object
Array Items
Item object object
grade string Required

Letter grade: A+ / A / B / C / D / F. Interpret alongside risk, assessment confidence, and coverage summary rather than as a standalone safety verdict.

Grade string

Letter grade: A+ / A / B / C / D / F. Interpret alongside risk, assessment confidence, and coverage summary rather than as a standalone safety verdict.

risk object Required
RiskSummary RiskSummary object
executive_summary string Required

One-paragraph human-readable overview of the domain's email trust posture.

Executive Summary string

One-paragraph human-readable overview of the domain's email trust posture.

risk_level string Required

critical | high | medium | low

Risk Level string

critical | high | medium | low

spoofing_risk string Required

How exposed the domain is to email spoofing.

Spoofing Risk string

How exposed the domain is to email spoofing.

deliverability_risk string Required

How likely legitimate email is to be rejected or junked.

Deliverability Risk string

How likely legitimate email is to be rejected or junked.

enforcement_status string Required

none | partial | full

Enforcement Status string

none | partial | full

assessment_confidence string

How complete the evidence was for this assessment: high | medium | low.

Assessment Confidence string

How complete the evidence was for this assessment: high | medium | low.

coverage_summary string

What was directly evaluated versus left partially covered or provisional.

Coverage Summary string

What was directly evaluated versus left partially covered or provisional.

top_3_actions array Required

The three highest-priority actions the domain owner should take.

Top 3 Actions array

The three highest-priority actions the domain owner should take.

Item object object
Array Items
Item object object
findings array Required
Findings array
Item object object
recommendations array Required

Prioritised list of actionable recommendations.

Recommendations array

Prioritised list of actionable recommendations.

Item object object
raw object Required

Raw data from each check, keyed by check category.

Raw Raw object

Raw data from each check, keyed by check category.

Additional object keys are allowed with arbitrary JSON values.

Array Items
Item object object
provider_analysis object Nullable
ProviderAnalysis ProviderAnalysis object
Nullable value
provider string Required

Primary provider/profile selected by declared context or DNS heuristics. For inferred analysis this is not a complete account inventory; inspect `matched_providers`, `secondary_providers`, warnings, and verification steps.

Provider string

Primary provider/profile selected by declared context or DNS heuristics. For inferred analysis this is not a complete account inventory; inspect `matched_providers`, `secondary_providers`, warnings, and verification steps.

supported boolean Required
Supported boolean
source string

How the provider was identified: declared | inferred.

Source string

How the provider was identified: declared | inferred.

warnings array
Warnings array
Item object object
evidence_matches array
Evidence Matches array
Item object object
evidence_mismatches array
Evidence Mismatches array
Item object object
matched_providers array

All provider profiles whose SPF evidence matched this domain. Useful when multiple sending platforms appear in the same SPF record.

Matched Providers array

All provider profiles whose SPF evidence matched this domain. Useful when multiple sending platforms appear in the same SPF record.

Item object object
secondary_providers array

Additional matched providers beyond the primary `provider` field.

Secondary Providers array

Additional matched providers beyond the primary `provider` field.

Item object object
inference_confidence string

Confidence in the inferred provider heuristic: high | medium | low.

Inference Confidence string

Confidence in the inferred provider heuristic: high | medium | low.

expected_dkim_selectors array

Common selector names or patterns associated with this provider. Treat them as discovery hints to verify, not authoritative selector inventories.

Expected Dkim Selectors array

Common selector names or patterns associated with this provider. Treat them as discovery hints to verify, not authoritative selector inventories.

Item object object
notes array
Notes array
Item object object
mismatch_level string

none | low | medium | high

Mismatch Level string

none | low | medium | high

verification_steps array
Verification Steps array
Item object object
Array Items
Item object object
Array Items
Item object object
403 In protected production deployments, direct origin calls without RapidAPI forwarding are rejected. RapidAPI marketplace consumers authenticate through RapidAPI and should not be shown or asked to send X-RapidAPI-Proxy-Secret themselves.
Example
{
  "detail": "Forbidden: invalid or missing proxy secret."
}
No schema details were provided for response schema.
422 Validation Error
Response schema HTTPValidationError object
detail array
Detail array
Item object object
Array Items
Item object object
GET /trust/v1/pro/audits/domain/{domain}

Audit a domain — Paid (GET)

Full findings, score breakdown, and provider analysis. Pass DKIM selectors as repeated ?dkim_selectors= params.

PRO / ULTRA / MEGA 1 audit pro_get_domain_audit

Parameters

domain path string Required
dkim_selectors query array

DKIM selectors to check (repeat for multiple).

check_mta_sts_policy query boolean
check_bimi query boolean
cURL GET
curl -H 'X-RapidAPI-Key: YOUR_RAPIDAPI_KEY' \
  -H 'X-RapidAPI-Host: email-domain-trust-auditor.p.rapidapi.com' \
  'https://email-domain-trust-auditor.p.rapidapi.com/trust/v1/pro/audits/domain/{domain}'
200 Successful Response
Example
{
  "audit_id": "f554d658-3b8b-4fd3-96d1-d9a8157d291b",
  "audited_at": "2026-04-13T05:21:12.534282Z",
  "domain": "example.com",
  "findings": [
    {
      "check": "mx",
      "evidence": "MX record is explicitly set to '.' (null MX), indicating the domain does not accept inbound email.",
      "id": "mx.null_mx",
      "severity": "low",
      "status": "not_applicable",
      "title": "Null MX Published (No Inbound Mail)"
    },
    {
      "check": "spf",
      "evidence": "SPF record found with '-all' (hard-fail). Record: v=spf1 -all",
      "id": "spf.pass",
      "severity": "low",
      "status": "pass",
      "title": "SPF Valid"
    },
    {
      "check": "dmarc",
      "evidence": "Record: v=DMARC1;p=reject;sp=reject;adkim=s;aspf=s | Issues: No 'rua' tag \u2014 aggregate reports will not be received.",
      "fix": "Add rua=mailto:<monitored-dmarc-report-mailbox> to receive aggregate reports.",
      "id": "dmarc.missing_rua",
      "severity": "medium",
      "status": "warn",
      "title": "DMARC Missing Aggregate Reporting URI"
    }
  ],
  "grade": "A+",
  "mail_flow_note": "The apex publishes null MX and SPF -all. Treat the score as protective DNS posture for a non-mail apex, not active sender-program readiness.",
  "mail_flow_profile": "apex_non_mail_protected",
  "normalized_domain": "example.com",
  "raw": {
    "_meta": {
      "dkim_selectors_supplied": [],
      "request_flags": {
        "check_bimi": true,
        "check_mta_sts_policy": true
      }
    },
    "dmarc": {
      "records": [
        "v=DMARC1;p=reject;sp=reject;adkim=s;aspf=s"
      ],
      "tags": {
        "adkim": "s",
        "aspf": "s",
        "p": "reject",
        "sp": "reject",
        "v": "DMARC1"
      }
    },
    "mx": {
      "null_mx": true,
      "records": [
        ""
      ]
    },
    "spf": {
      "records": [
        "v=spf1 -all"
      ]
    }
  },
  "recommendations": [
    "Add rua=mailto:<monitored-dmarc-report-mailbox> to receive aggregate reports."
  ],
  "risk": {
    "assessment_confidence": "high",
    "coverage_summary": "The apex appears intentionally configured as a non-mail domain (null MX + SPF -all). Interpret the score as protective DNS posture, not active sender-program readiness.",
    "deliverability_risk": "Low \u2014 the domain publishes a null MX, so inbound delivery is intentionally disabled at the apex.",
    "enforcement_status": "partial",
    "executive_summary": "The domain received a score of 95/100 (grade A+). The apex appears intentionally configured as a protected non-mail domain; remaining findings are monitoring or coverage gaps, not evidence that an active sender program is only partially enforced.",
    "risk_level": "low",
    "spoofing_risk": "Low \u2014 the apex publishes null MX and SPF -all, so it appears intentionally configured not to receive or send mail from the apex.",
    "top_3_actions": [
      "Add rua=mailto:<monitored-dmarc-report-mailbox> to receive aggregate reports."
    ]
  },
  "scope": {
    "entity_type": "root_domain",
    "evaluated_entity": "example.com",
    "scope_note": "This audit evaluates the domain's publicly visible email trust posture based on DNS records and, where applicable, the MTA-STS policy file. Some production sending infrastructure may live on subdomains or use provider-managed selectors not fully visible from this scope. DKIM evaluation requires explicit selectors. BIMI validation is syntax-only (VMC certificate verification is not performed)."
  },
  "score": 95,
  "score_breakdown": {
    "dkim": {
      "earned": 0.0,
      "note": "Not applicable to this domain, so it is excluded from the normalized 0-100 breakdown.",
      "possible": 0.0,
      "status": "not_applicable"
    },
    "dmarc": {
      "earned": 45.0,
      "possible": 50.0,
      "status": "warn"
    },
    "mx": {
      "earned": 0.0,
      "note": "Not applicable to this domain, so it is excluded from the normalized 0-100 breakdown.",
      "possible": 0.0,
      "status": "not_applicable"
    },
    "spf": {
      "earned": 50.0,
      "possible": 50.0,
      "status": "pass"
    }
  },
  "score_version": "11"
}
Response schema AuditResponse object
audit_id string

Unique identifier for this audit run (UUID-4).

Audit Id string

Unique identifier for this audit run (UUID-4).

audited_at string

UTC timestamp when the audit was executed (ISO-8601).

Audited At string

UTC timestamp when the audit was executed (ISO-8601).

domain string Required

Original domain as submitted.

Domain string

Original domain as submitted.

normalized_domain string Required

Domain after normalization (punycode).

Normalized Domain string

Domain after normalization (punycode).

scope object Required
Scope Scope object
evaluated_entity string Required

The exact domain string that was audited.

Evaluated Entity string

The exact domain string that was audited.

entity_type string

Type of entity evaluated: root_domain | subdomain.

Entity Type string

Type of entity evaluated: root_domain | subdomain.

scope_note string Required

Human-readable disclaimer about what this audit covers and what it does not.

Scope Note string

Human-readable disclaimer about what this audit covers and what it does not.

Array Items
Item object object
mail_flow_profile string

How to interpret the apex domain's visible mail role: active_mail_domain, apex_non_mail_protected, apex_inbound_disabled, apex_outbound_or_subdomain_mail_possible, or mail_role_unknown.

Mail Flow Profile string

How to interpret the apex domain's visible mail role: active_mail_domain, apex_non_mail_protected, apex_inbound_disabled, apex_outbound_or_subdomain_mail_possible, or mail_role_unknown.

mail_flow_note string Nullable
Nested schema string Nullable
score integer Required

Overall trust score (0-100). Read alongside risk, assessment confidence, and coverage notes; critical anti-spoofing gaps or provisional DKIM coverage can cap the top-line result.

Score integer

Overall trust score (0-100). Read alongside risk, assessment confidence, and coverage notes; critical anti-spoofing gaps or provisional DKIM coverage can cap the top-line result.

score_version string Required

Scoring model version (for reproducibility).

Score Version string

Scoring model version (for reproducibility).

score_breakdown object Required

Per-check score breakdown showing earned vs possible normalised points. Included checks sum to roughly 100 possible points; excluded checks show 0 possible with an explanatory note.

Score Breakdown Score Breakdown object

Per-check score breakdown showing earned vs possible normalised points. Included checks sum to roughly 100 possible points; excluded checks show 0 possible with an explanatory note.

Dictionary Values
Dictionary value ScoreBreakdownEntry object
earned number Required

Normalised points earned for this check.

Earned number

Normalised points earned for this check.

possible number Required

Maximum normalised points available for this check within the current 0-100 scoring basis. Checks excluded from scoring report 0.0 here and explain why in `note`.

Possible number

Maximum normalised points available for this check within the current 0-100 scoring basis. Checks excluded from scoring report 0.0 here and explain why in `note`.

status string Required

Finding status used for scoring.

Status string

Finding status used for scoring.

note string Nullable
Nested schema string Nullable
Array Items
Item object object
Array Items
Item object object
grade string Required

Letter grade: A+ / A / B / C / D / F. Interpret alongside risk, assessment confidence, and coverage summary rather than as a standalone safety verdict.

Grade string

Letter grade: A+ / A / B / C / D / F. Interpret alongside risk, assessment confidence, and coverage summary rather than as a standalone safety verdict.

risk object Required
RiskSummary RiskSummary object
executive_summary string Required

One-paragraph human-readable overview of the domain's email trust posture.

Executive Summary string

One-paragraph human-readable overview of the domain's email trust posture.

risk_level string Required

critical | high | medium | low

Risk Level string

critical | high | medium | low

spoofing_risk string Required

How exposed the domain is to email spoofing.

Spoofing Risk string

How exposed the domain is to email spoofing.

deliverability_risk string Required

How likely legitimate email is to be rejected or junked.

Deliverability Risk string

How likely legitimate email is to be rejected or junked.

enforcement_status string Required

none | partial | full

Enforcement Status string

none | partial | full

assessment_confidence string

How complete the evidence was for this assessment: high | medium | low.

Assessment Confidence string

How complete the evidence was for this assessment: high | medium | low.

coverage_summary string

What was directly evaluated versus left partially covered or provisional.

Coverage Summary string

What was directly evaluated versus left partially covered or provisional.

top_3_actions array Required

The three highest-priority actions the domain owner should take.

Top 3 Actions array

The three highest-priority actions the domain owner should take.

Item object object
Array Items
Item object object
findings array Required
Findings array
Item object object
recommendations array Required

Prioritised list of actionable recommendations.

Recommendations array

Prioritised list of actionable recommendations.

Item object object
raw object Required

Raw data from each check, keyed by check category.

Raw Raw object

Raw data from each check, keyed by check category.

Additional object keys are allowed with arbitrary JSON values.

Array Items
Item object object
provider_analysis object Nullable
ProviderAnalysis ProviderAnalysis object
Nullable value
provider string Required

Primary provider/profile selected by declared context or DNS heuristics. For inferred analysis this is not a complete account inventory; inspect `matched_providers`, `secondary_providers`, warnings, and verification steps.

Provider string

Primary provider/profile selected by declared context or DNS heuristics. For inferred analysis this is not a complete account inventory; inspect `matched_providers`, `secondary_providers`, warnings, and verification steps.

supported boolean Required
Supported boolean
source string

How the provider was identified: declared | inferred.

Source string

How the provider was identified: declared | inferred.

warnings array
Warnings array
Item object object
evidence_matches array
Evidence Matches array
Item object object
evidence_mismatches array
Evidence Mismatches array
Item object object
matched_providers array

All provider profiles whose SPF evidence matched this domain. Useful when multiple sending platforms appear in the same SPF record.

Matched Providers array

All provider profiles whose SPF evidence matched this domain. Useful when multiple sending platforms appear in the same SPF record.

Item object object
secondary_providers array

Additional matched providers beyond the primary `provider` field.

Secondary Providers array

Additional matched providers beyond the primary `provider` field.

Item object object
inference_confidence string

Confidence in the inferred provider heuristic: high | medium | low.

Inference Confidence string

Confidence in the inferred provider heuristic: high | medium | low.

expected_dkim_selectors array

Common selector names or patterns associated with this provider. Treat them as discovery hints to verify, not authoritative selector inventories.

Expected Dkim Selectors array

Common selector names or patterns associated with this provider. Treat them as discovery hints to verify, not authoritative selector inventories.

Item object object
notes array
Notes array
Item object object
mismatch_level string

none | low | medium | high

Mismatch Level string

none | low | medium | high

verification_steps array
Verification Steps array
Item object object
Array Items
Item object object
Array Items
Item object object
403 In protected production deployments, direct origin calls without RapidAPI forwarding are rejected. RapidAPI marketplace consumers authenticate through RapidAPI and should not be shown or asked to send X-RapidAPI-Proxy-Secret themselves.
Example
{
  "detail": "Forbidden: invalid or missing proxy secret."
}
No schema details were provided for response schema.
422 Validation Error
Response schema HTTPValidationError object
detail array
Detail array
Item object object
Array Items
Item object object
POST /trust/v1/pro/audits/domains

Audit multiple domains — bulk

Audit up to 50 domains in one request. Set include_reports=false when you only need top-line per-domain previews plus the aggregate summary, not nested full reports. X-Audit-Units-Consumed reports the exact charge.

ULTRA / MEGA N audits pro_bulk_domain_audit

Request Body

Required
Body BulkAuditRequest object
domains array Required
Domains array
Item object object
default_dkim_selectors array
Default Dkim Selectors array
Item object object
check_mta_sts_policy boolean
Check Mta Sts Policy boolean
check_bimi boolean
Check Bimi boolean
include_reports boolean

When false, omit nested full audit reports and return per-domain previews only to reduce payload size.

Include Reports boolean

When false, omit nested full audit reports and return per-domain previews only to reduce payload size.

provider_context object Nullable
ProviderContext ProviderContext object
Nullable value
provider string Required

Declared mail provider/profile. Accepted canonical ids include: amazon_ses, google_workspace, klaviyo, mailchimp, microsoft_365, sendgrid. Aliases from `/v1/pro/providers` are also accepted and normalized.

Provider string

Declared mail provider/profile. Accepted canonical ids include: amazon_ses, google_workspace, klaviyo, mailchimp, microsoft_365, sendgrid. Aliases from `/v1/pro/providers` are also accepted and normalized.

Array Items
Item object object
Array Items
Item object object
cURL POST
curl -H 'content-type: application/json' \
  -H 'X-RapidAPI-Key: YOUR_RAPIDAPI_KEY' \
  -H 'X-RapidAPI-Host: email-domain-trust-auditor.p.rapidapi.com' \
  -X POST 'https://email-domain-trust-auditor.p.rapidapi.com/trust/v1/pro/audits/domains' \
  -d '{
  "check_bimi": true,
  "check_mta_sts_policy": true,
  "default_dkim_selectors": [
    "provider-issued-selector-1",
    "provider-issued-selector-2"
  ],
  "domains": [
    {
      "dkim_selectors": [
        "provider-issued-selector-1"
      ],
      "domain": "example.com"
    },
    {
      "domain": "example.org"
    }
  ],
  "include_reports": false,
  "provider_context": {
    "provider": "microsoft_365"
  }
}'
Example Request application/json
{
  "check_bimi": true,
  "check_mta_sts_policy": true,
  "default_dkim_selectors": [
    "provider-issued-selector-1",
    "provider-issued-selector-2"
  ],
  "domains": [
    {
      "dkim_selectors": [
        "provider-issued-selector-1"
      ],
      "domain": "example.com"
    },
    {
      "domain": "example.org"
    }
  ],
  "include_reports": false,
  "provider_context": {
    "provider": "microsoft_365"
  }
}
200 Successful Response
Example
{
  "results": [
    {
      "assessment_confidence": "high",
      "audit_id": "baacf6a8-062c-4d4f-b8ef-0abb5f1a7a3e",
      "coverage_summary": "The apex appears intentionally configured as a non-mail domain (null MX + SPF -all). Interpret the score as protective DNS posture, not active sender-program readiness.",
      "domain": "example.com",
      "grade": "A+",
      "mail_flow_note": "The apex publishes null MX and SPF -all. Treat the score as protective DNS posture for a non-mail apex, not active sender-program readiness.",
      "mail_flow_profile": "apex_non_mail_protected",
      "risk_level": "low",
      "score": 95,
      "success": true
    }
  ],
  "summary": {
    "common_blocker_categories": {
      "dmarc": 1
    },
    "critical_failure_domains": [],
    "domains_dkim_not_evaluated": [],
    "domains_missing_dmarc": [],
    "domains_missing_or_invalid_dmarc": [],
    "domains_with_invalid_dmarc": [],
    "domains_with_weak_spf": [],
    "enforcement_ready_domains": [],
    "failure_count": 0,
    "finding_counts": {
      "dmarc.missing_rua": 1,
      "mx.null_mx": 1,
      "spf.pass": 1
    },
    "grade_counts": {
      "A+": 1
    },
    "highest_deliverability_risk_domains": [],
    "highest_spoofing_risk_domains": [],
    "prioritized_next_actions": [
      "Address recurring blocker category: dmarc:1"
    ],
    "provider_mismatch_domains": [],
    "score_band_counts": {
      "90-100": 1
    },
    "strongest_domains": [
      "example.com"
    ],
    "success_count": 1,
    "top_recommendations": [
      "example.com: Add rua=mailto:<monitored-dmarc-report-mailbox> to receive aggregate reports."
    ],
    "total_domains": 1,
    "weakest_domains": []
  }
}
Response schema BulkAuditResponse object
results array Required
Results array
Item object object
summary object Required
BulkSummary BulkSummary object
total_domains integer Required
Total Domains integer
success_count integer Required
Success Count integer
failure_count integer Required
Failure Count integer
grade_counts object Required
Grade Counts Grade Counts object
Dictionary Values
Dictionary value integer
Array Items
Item object object
score_band_counts object Required
Score Band Counts Score Band Counts object
Dictionary Values
Dictionary value integer
Array Items
Item object object
finding_counts object Required
Finding Counts Finding Counts object
Dictionary Values
Dictionary value integer
Array Items
Item object object
critical_failure_domains array Required
Critical Failure Domains array
Item object object
domains_missing_dmarc array

Domains with no DMARC record at `_dmarc.`.

Domains Missing Dmarc array

Domains with no DMARC record at `_dmarc.`.

Item object object
domains_with_invalid_dmarc array

Domains where `_dmarc.` exists but does not contain a valid DMARC record.

Domains With Invalid Dmarc array

Domains where `_dmarc.` exists but does not contain a valid DMARC record.

Item object object
domains_missing_or_invalid_dmarc array

Combined list of domains with missing or invalid DMARC posture.

Domains Missing Or Invalid Dmarc array

Combined list of domains with missing or invalid DMARC posture.

Item object object
domains_with_weak_spf array Required
Domains With Weak Spf array
Item object object
domains_dkim_not_evaluated array Required
Domains Dkim Not Evaluated array
Item object object
strongest_domains array Required
Strongest Domains array
Item object object
weakest_domains array Required
Weakest Domains array
Item object object
top_recommendations array Required
Top Recommendations array
Item object object
prioritized_next_actions array Required
Prioritized Next Actions array
Item object object
highest_spoofing_risk_domains array
Highest Spoofing Risk Domains array
Item object object
highest_deliverability_risk_domains array
Highest Deliverability Risk Domains array
Item object object
enforcement_ready_domains array
Enforcement Ready Domains array
Item object object
common_blocker_categories object
Common Blocker Categories Common Blocker Categories object
Dictionary Values
Dictionary value integer
Array Items
Item object object
provider_mismatch_domains array
Provider Mismatch Domains array
Item object object
Array Items
Item object object
Array Items
Item object object
403 In protected production deployments, direct origin calls without RapidAPI forwarding are rejected. RapidAPI marketplace consumers authenticate through RapidAPI and should not be shown or asked to send X-RapidAPI-Proxy-Secret themselves.
Example
{
  "detail": "Forbidden: invalid or missing proxy secret."
}
No schema details were provided for response schema.
422 Validation Error
Response schema HTTPValidationError object
detail array
Detail array
Item object object
Array Items
Item object object
POST /trust/v1/pro/audits/compare

Compare two audit reports

Diff two audit results and surface improvements, regressions, and unchanged findings. Both sides must represent the same normalized domain. If DKIM selector methodology, optional check coverage, or provider-analysis context change between runs, the response includes comparability warnings and neutral coverage deltas so you can distinguish methodology drift from real posture change. Costs 0 if both sides supply a pre-existing report, 1 per side that triggers a fresh audit. X-Audit-Units-Consumed reports the actual charge.

PRO / ULTRA / MEGA 0–2 audits pro_compare_audits

Request Body

Required
Body AuditCompareRequest object
previous object Required
CompareInput CompareInput object
One Of
Option 1 object object
Array Items
Item object object
Option 2 object object
Array Items
Item object object
report object Nullable
AuditResponse AuditResponse object
Nullable value
audit_id string

Unique identifier for this audit run (UUID-4).

Audit Id string

Unique identifier for this audit run (UUID-4).

audited_at string

UTC timestamp when the audit was executed (ISO-8601).

Audited At string

UTC timestamp when the audit was executed (ISO-8601).

domain string Required

Original domain as submitted.

Domain string

Original domain as submitted.

normalized_domain string Required

Domain after normalization (punycode).

Normalized Domain string

Domain after normalization (punycode).

scope object Required
Scope Scope object
evaluated_entity string Required

The exact domain string that was audited.

Evaluated Entity string

The exact domain string that was audited.

entity_type string

Type of entity evaluated: root_domain | subdomain.

Entity Type string

Type of entity evaluated: root_domain | subdomain.

scope_note string Required

Human-readable disclaimer about what this audit covers and what it does not.

Scope Note string

Human-readable disclaimer about what this audit covers and what it does not.

Array Items
Item object object
mail_flow_profile string

How to interpret the apex domain's visible mail role: active_mail_domain, apex_non_mail_protected, apex_inbound_disabled, apex_outbound_or_subdomain_mail_possible, or mail_role_unknown.

Mail Flow Profile string

How to interpret the apex domain's visible mail role: active_mail_domain, apex_non_mail_protected, apex_inbound_disabled, apex_outbound_or_subdomain_mail_possible, or mail_role_unknown.

mail_flow_note string Nullable
Nested schema string Nullable
score integer Required

Overall trust score (0-100). Read alongside risk, assessment confidence, and coverage notes; critical anti-spoofing gaps or provisional DKIM coverage can cap the top-line result.

Score integer

Overall trust score (0-100). Read alongside risk, assessment confidence, and coverage notes; critical anti-spoofing gaps or provisional DKIM coverage can cap the top-line result.

score_version string Required

Scoring model version (for reproducibility).

Score Version string

Scoring model version (for reproducibility).

score_breakdown object Required

Per-check score breakdown showing earned vs possible normalised points. Included checks sum to roughly 100 possible points; excluded checks show 0 possible with an explanatory note.

Score Breakdown Score Breakdown object

Per-check score breakdown showing earned vs possible normalised points. Included checks sum to roughly 100 possible points; excluded checks show 0 possible with an explanatory note.

Dictionary Values
Dictionary value ScoreBreakdownEntry object
earned number Required

Normalised points earned for this check.

Earned number

Normalised points earned for this check.

possible number Required

Maximum normalised points available for this check within the current 0-100 scoring basis. Checks excluded from scoring report 0.0 here and explain why in `note`.

Possible number

Maximum normalised points available for this check within the current 0-100 scoring basis. Checks excluded from scoring report 0.0 here and explain why in `note`.

status string Required

Finding status used for scoring.

Status string

Finding status used for scoring.

note string Nullable
Nested schema string Nullable
Array Items
Item object object
Array Items
Item object object
grade string Required

Letter grade: A+ / A / B / C / D / F. Interpret alongside risk, assessment confidence, and coverage summary rather than as a standalone safety verdict.

Grade string

Letter grade: A+ / A / B / C / D / F. Interpret alongside risk, assessment confidence, and coverage summary rather than as a standalone safety verdict.

risk object Required
RiskSummary RiskSummary object
executive_summary string Required

One-paragraph human-readable overview of the domain's email trust posture.

Executive Summary string

One-paragraph human-readable overview of the domain's email trust posture.

risk_level string Required

critical | high | medium | low

Risk Level string

critical | high | medium | low

spoofing_risk string Required

How exposed the domain is to email spoofing.

Spoofing Risk string

How exposed the domain is to email spoofing.

deliverability_risk string Required

How likely legitimate email is to be rejected or junked.

Deliverability Risk string

How likely legitimate email is to be rejected or junked.

enforcement_status string Required

none | partial | full

Enforcement Status string

none | partial | full

assessment_confidence string

How complete the evidence was for this assessment: high | medium | low.

Assessment Confidence string

How complete the evidence was for this assessment: high | medium | low.

coverage_summary string

What was directly evaluated versus left partially covered or provisional.

Coverage Summary string

What was directly evaluated versus left partially covered or provisional.

top_3_actions array Required

The three highest-priority actions the domain owner should take.

Top 3 Actions array

The three highest-priority actions the domain owner should take.

Item object object
Array Items
Item object object
findings array Required
Findings array
Item object object
recommendations array Required

Prioritised list of actionable recommendations.

Recommendations array

Prioritised list of actionable recommendations.

Item object object
raw object Required

Raw data from each check, keyed by check category.

Raw Raw object

Raw data from each check, keyed by check category.

Additional object keys are allowed with arbitrary JSON values.

Array Items
Item object object
provider_analysis object Nullable
ProviderAnalysis ProviderAnalysis object
Nullable value
provider string Required

Primary provider/profile selected by declared context or DNS heuristics. For inferred analysis this is not a complete account inventory; inspect `matched_providers`, `secondary_providers`, warnings, and verification steps.

Provider string

Primary provider/profile selected by declared context or DNS heuristics. For inferred analysis this is not a complete account inventory; inspect `matched_providers`, `secondary_providers`, warnings, and verification steps.

supported boolean Required
Supported boolean
source string

How the provider was identified: declared | inferred.

Source string

How the provider was identified: declared | inferred.

warnings array
Warnings array
Item object object
evidence_matches array
Evidence Matches array
Item object object
evidence_mismatches array
Evidence Mismatches array
Item object object
matched_providers array

All provider profiles whose SPF evidence matched this domain. Useful when multiple sending platforms appear in the same SPF record.

Matched Providers array

All provider profiles whose SPF evidence matched this domain. Useful when multiple sending platforms appear in the same SPF record.

Item object object
secondary_providers array

Additional matched providers beyond the primary `provider` field.

Secondary Providers array

Additional matched providers beyond the primary `provider` field.

Item object object
inference_confidence string

Confidence in the inferred provider heuristic: high | medium | low.

Inference Confidence string

Confidence in the inferred provider heuristic: high | medium | low.

expected_dkim_selectors array

Common selector names or patterns associated with this provider. Treat them as discovery hints to verify, not authoritative selector inventories.

Expected Dkim Selectors array

Common selector names or patterns associated with this provider. Treat them as discovery hints to verify, not authoritative selector inventories.

Item object object
notes array
Notes array
Item object object
mismatch_level string

none | low | medium | high

Mismatch Level string

none | low | medium | high

verification_steps array
Verification Steps array
Item object object
Array Items
Item object object
Array Items
Item object object
request object Nullable

Body of ``POST /v1/free/audits/domain`` and ``POST /v1/pro/audits/domain``.

AuditRequest AuditRequest object

Body of ``POST /v1/free/audits/domain`` and ``POST /v1/pro/audits/domain``.

Nullable value
domain string Required

Email domain to audit (e.g. 'example.com').

Domain string

Email domain to audit (e.g. 'example.com').

dkim_selectors array

Exact DKIM selectors to check. Use selector names copied from the sending platform when possible because catalog examples are not authoritative for every domain. If omitted, the API may conservatively test common selectors only when a single stable provider match exists; exact provider-issued selectors still produce the most authoritative result.

Dkim Selectors array

Exact DKIM selectors to check. Use selector names copied from the sending platform when possible because catalog examples are not authoritative for every domain. If omitted, the API may conservatively test common selectors only when a single stable provider match exists; exact provider-issued selectors still produce the most authoritative result.

Item object object
check_mta_sts_policy boolean

Whether to fetch and validate the MTA-STS policy file over HTTPS.

Check Mta Sts Policy boolean

Whether to fetch and validate the MTA-STS policy file over HTTPS.

check_bimi boolean

Whether to check for a BIMI DNS record. This is syntax-only validation; it does not verify logo hosting, SVG profile compliance, trademark eligibility, or VMC/CMC certificate trust.

Check Bimi boolean

Whether to check for a BIMI DNS record. This is syntax-only validation; it does not verify logo hosting, SVG profile compliance, trademark eligibility, or VMC/CMC certificate trust.

provider_context object Nullable
ProviderContext ProviderContext object
Nullable value
provider string Required

Declared mail provider/profile. Accepted canonical ids include: amazon_ses, google_workspace, klaviyo, mailchimp, microsoft_365, sendgrid. Aliases from `/v1/pro/providers` are also accepted and normalized.

Provider string

Declared mail provider/profile. Accepted canonical ids include: amazon_ses, google_workspace, klaviyo, mailchimp, microsoft_365, sendgrid. Aliases from `/v1/pro/providers` are also accepted and normalized.

Array Items
Item object object
Array Items
Item object object
Array Items
Item object object
current object Required
CompareInput CompareInput object
One Of
Option 1 object object
Array Items
Item object object
Option 2 object object
Array Items
Item object object
report object Nullable
AuditResponse AuditResponse object
Nullable value
audit_id string

Unique identifier for this audit run (UUID-4).

Audit Id string

Unique identifier for this audit run (UUID-4).

audited_at string

UTC timestamp when the audit was executed (ISO-8601).

Audited At string

UTC timestamp when the audit was executed (ISO-8601).

domain string Required

Original domain as submitted.

Domain string

Original domain as submitted.

normalized_domain string Required

Domain after normalization (punycode).

Normalized Domain string

Domain after normalization (punycode).

scope object Required
Scope Scope object
evaluated_entity string Required

The exact domain string that was audited.

Evaluated Entity string

The exact domain string that was audited.

entity_type string

Type of entity evaluated: root_domain | subdomain.

Entity Type string

Type of entity evaluated: root_domain | subdomain.

scope_note string Required

Human-readable disclaimer about what this audit covers and what it does not.

Scope Note string

Human-readable disclaimer about what this audit covers and what it does not.

Array Items
Item object object
mail_flow_profile string

How to interpret the apex domain's visible mail role: active_mail_domain, apex_non_mail_protected, apex_inbound_disabled, apex_outbound_or_subdomain_mail_possible, or mail_role_unknown.

Mail Flow Profile string

How to interpret the apex domain's visible mail role: active_mail_domain, apex_non_mail_protected, apex_inbound_disabled, apex_outbound_or_subdomain_mail_possible, or mail_role_unknown.

mail_flow_note string Nullable
Nested schema string Nullable
score integer Required

Overall trust score (0-100). Read alongside risk, assessment confidence, and coverage notes; critical anti-spoofing gaps or provisional DKIM coverage can cap the top-line result.

Score integer

Overall trust score (0-100). Read alongside risk, assessment confidence, and coverage notes; critical anti-spoofing gaps or provisional DKIM coverage can cap the top-line result.

score_version string Required

Scoring model version (for reproducibility).

Score Version string

Scoring model version (for reproducibility).

score_breakdown object Required

Per-check score breakdown showing earned vs possible normalised points. Included checks sum to roughly 100 possible points; excluded checks show 0 possible with an explanatory note.

Score Breakdown Score Breakdown object

Per-check score breakdown showing earned vs possible normalised points. Included checks sum to roughly 100 possible points; excluded checks show 0 possible with an explanatory note.

Dictionary Values
Dictionary value ScoreBreakdownEntry object
earned number Required

Normalised points earned for this check.

Earned number

Normalised points earned for this check.

possible number Required

Maximum normalised points available for this check within the current 0-100 scoring basis. Checks excluded from scoring report 0.0 here and explain why in `note`.

Possible number

Maximum normalised points available for this check within the current 0-100 scoring basis. Checks excluded from scoring report 0.0 here and explain why in `note`.

status string Required

Finding status used for scoring.

Status string

Finding status used for scoring.

note string Nullable
Nested schema string Nullable
Array Items
Item object object
Array Items
Item object object
grade string Required

Letter grade: A+ / A / B / C / D / F. Interpret alongside risk, assessment confidence, and coverage summary rather than as a standalone safety verdict.

Grade string

Letter grade: A+ / A / B / C / D / F. Interpret alongside risk, assessment confidence, and coverage summary rather than as a standalone safety verdict.

risk object Required
RiskSummary RiskSummary object
executive_summary string Required

One-paragraph human-readable overview of the domain's email trust posture.

Executive Summary string

One-paragraph human-readable overview of the domain's email trust posture.

risk_level string Required

critical | high | medium | low

Risk Level string

critical | high | medium | low

spoofing_risk string Required

How exposed the domain is to email spoofing.

Spoofing Risk string

How exposed the domain is to email spoofing.

deliverability_risk string Required

How likely legitimate email is to be rejected or junked.

Deliverability Risk string

How likely legitimate email is to be rejected or junked.

enforcement_status string Required

none | partial | full

Enforcement Status string

none | partial | full

assessment_confidence string

How complete the evidence was for this assessment: high | medium | low.

Assessment Confidence string

How complete the evidence was for this assessment: high | medium | low.

coverage_summary string

What was directly evaluated versus left partially covered or provisional.

Coverage Summary string

What was directly evaluated versus left partially covered or provisional.

top_3_actions array Required

The three highest-priority actions the domain owner should take.

Top 3 Actions array

The three highest-priority actions the domain owner should take.

Item object object
Array Items
Item object object
findings array Required
Findings array
Item object object
recommendations array Required

Prioritised list of actionable recommendations.

Recommendations array

Prioritised list of actionable recommendations.

Item object object
raw object Required

Raw data from each check, keyed by check category.

Raw Raw object

Raw data from each check, keyed by check category.

Additional object keys are allowed with arbitrary JSON values.

Array Items
Item object object
provider_analysis object Nullable
ProviderAnalysis ProviderAnalysis object
Nullable value
provider string Required

Primary provider/profile selected by declared context or DNS heuristics. For inferred analysis this is not a complete account inventory; inspect `matched_providers`, `secondary_providers`, warnings, and verification steps.

Provider string

Primary provider/profile selected by declared context or DNS heuristics. For inferred analysis this is not a complete account inventory; inspect `matched_providers`, `secondary_providers`, warnings, and verification steps.

supported boolean Required
Supported boolean
source string

How the provider was identified: declared | inferred.

Source string

How the provider was identified: declared | inferred.

warnings array
Warnings array
Item object object
evidence_matches array
Evidence Matches array
Item object object
evidence_mismatches array
Evidence Mismatches array
Item object object
matched_providers array

All provider profiles whose SPF evidence matched this domain. Useful when multiple sending platforms appear in the same SPF record.

Matched Providers array

All provider profiles whose SPF evidence matched this domain. Useful when multiple sending platforms appear in the same SPF record.

Item object object
secondary_providers array

Additional matched providers beyond the primary `provider` field.

Secondary Providers array

Additional matched providers beyond the primary `provider` field.

Item object object
inference_confidence string

Confidence in the inferred provider heuristic: high | medium | low.

Inference Confidence string

Confidence in the inferred provider heuristic: high | medium | low.

expected_dkim_selectors array

Common selector names or patterns associated with this provider. Treat them as discovery hints to verify, not authoritative selector inventories.

Expected Dkim Selectors array

Common selector names or patterns associated with this provider. Treat them as discovery hints to verify, not authoritative selector inventories.

Item object object
notes array
Notes array
Item object object
mismatch_level string

none | low | medium | high

Mismatch Level string

none | low | medium | high

verification_steps array
Verification Steps array
Item object object
Array Items
Item object object
Array Items
Item object object
request object Nullable

Body of ``POST /v1/free/audits/domain`` and ``POST /v1/pro/audits/domain``.

AuditRequest AuditRequest object

Body of ``POST /v1/free/audits/domain`` and ``POST /v1/pro/audits/domain``.

Nullable value
domain string Required

Email domain to audit (e.g. 'example.com').

Domain string

Email domain to audit (e.g. 'example.com').

dkim_selectors array

Exact DKIM selectors to check. Use selector names copied from the sending platform when possible because catalog examples are not authoritative for every domain. If omitted, the API may conservatively test common selectors only when a single stable provider match exists; exact provider-issued selectors still produce the most authoritative result.

Dkim Selectors array

Exact DKIM selectors to check. Use selector names copied from the sending platform when possible because catalog examples are not authoritative for every domain. If omitted, the API may conservatively test common selectors only when a single stable provider match exists; exact provider-issued selectors still produce the most authoritative result.

Item object object
check_mta_sts_policy boolean

Whether to fetch and validate the MTA-STS policy file over HTTPS.

Check Mta Sts Policy boolean

Whether to fetch and validate the MTA-STS policy file over HTTPS.

check_bimi boolean

Whether to check for a BIMI DNS record. This is syntax-only validation; it does not verify logo hosting, SVG profile compliance, trademark eligibility, or VMC/CMC certificate trust.

Check Bimi boolean

Whether to check for a BIMI DNS record. This is syntax-only validation; it does not verify logo hosting, SVG profile compliance, trademark eligibility, or VMC/CMC certificate trust.

provider_context object Nullable
ProviderContext ProviderContext object
Nullable value
provider string Required

Declared mail provider/profile. Accepted canonical ids include: amazon_ses, google_workspace, klaviyo, mailchimp, microsoft_365, sendgrid. Aliases from `/v1/pro/providers` are also accepted and normalized.

Provider string

Declared mail provider/profile. Accepted canonical ids include: amazon_ses, google_workspace, klaviyo, mailchimp, microsoft_365, sendgrid. Aliases from `/v1/pro/providers` are also accepted and normalized.

Array Items
Item object object
Array Items
Item object object
Array Items
Item object object
Array Items
Item object object
cURL POST
curl -H 'content-type: application/json' \
  -H 'X-RapidAPI-Key: YOUR_RAPIDAPI_KEY' \
  -H 'X-RapidAPI-Host: email-domain-trust-auditor.p.rapidapi.com' \
  -X POST 'https://email-domain-trust-auditor.p.rapidapi.com/trust/v1/pro/audits/compare' \
  -d '{
  "current": {
    "request": {
      "dkim_selectors": [
        "provider-issued-selector-1"
      ],
      "domain": "example.com"
    }
  },
  "previous": {
    "request": {
      "domain": "example.com"
    }
  }
}'
Example Request application/json
{
  "current": {
    "request": {
      "dkim_selectors": [
        "provider-issued-selector-1"
      ],
      "domain": "example.com"
    }
  },
  "previous": {
    "request": {
      "domain": "example.com"
    }
  }
}
200 Successful Response
Example
{
  "added_findings": [
    {
      "check": "dkim",
      "current_status": "not_applicable",
      "id": "dkim.none_valid"
    }
  ],
  "check_deltas": [
    {
      "check": "dmarc",
      "current_status": "warn",
      "impact": "unchanged",
      "previous_status": "warn"
    }
  ],
  "comparability_warnings": [
    "DKIM selector inputs changed between reports (previous: not_provided [none]; current: provided [provider-issued-selector-1]). Score differences may reflect evaluation coverage rather than a real posture change."
  ],
  "compared_domain": "example.com",
  "current_grade": "A+",
  "current_score": 95,
  "grade_changed": false,
  "improved_findings": [],
  "operator_summary": [
    "Comparison includes methodology changes; interpret score deltas cautiously.",
    "Raw score was unchanged across non-equivalent inputs (A+ -> A+)."
  ],
  "previous_grade": "A+",
  "previous_score": 95,
  "recommendation_delta": {
    "added": [],
    "resolved": [],
    "unchanged": [
      "Add rua=mailto:<monitored-dmarc-report-mailbox> to receive aggregate reports."
    ]
  },
  "resolved_findings": [
    {
      "check": "dkim",
      "id": "dkim.not_evaluated",
      "previous_status": "not_applicable"
    }
  ],
  "score_delta": 0,
  "summary": "Comparison includes methodology changes; interpret score deltas cautiously. Raw score moved by +0 (A+ -> A+).",
  "top_improvements": [],
  "top_regressions": [],
  "unchanged_findings": [
    {
      "check": "dmarc",
      "current_status": "warn",
      "id": "dmarc.missing_rua",
      "previous_status": "warn"
    }
  ],
  "worsened_findings": []
}
Response schema AuditComparisonResponse object
compared_domain string Required

Normalized domain shared by both compared reports.

Compared Domain string

Normalized domain shared by both compared reports.

previous_score integer Required
Previous Score integer
current_score integer Required
Current Score integer
score_delta integer Required
Score Delta integer
previous_grade string Required
Previous Grade string
current_grade string Required
Current Grade string
grade_changed boolean Required
Grade Changed boolean
added_findings array Required
Added Findings array
Item object object
resolved_findings array Required
Resolved Findings array
Item object object
worsened_findings array Required
Worsened Findings array
Item object object
improved_findings array Required
Improved Findings array
Item object object
unchanged_findings array Required
Unchanged Findings array
Item object object
recommendation_delta object Required
Recommendation Delta Recommendation Delta object
Dictionary Values
Dictionary value array
Item object object
Array Items
Item object object
comparability_warnings array

Warnings about changed methodology or context that can make score deltas less trustworthy.

Comparability Warnings array

Warnings about changed methodology or context that can make score deltas less trustworthy.

Item object object
summary string Required
Summary string
operator_summary array
Operator Summary array
Item object object
check_deltas array
Check Deltas array
Item object object
top_regressions array

Highest-impact comparable posture regressions. Coverage-only changes stay in `comparability_warnings` and `check_deltas`.

Top Regressions array

Highest-impact comparable posture regressions. Coverage-only changes stay in `comparability_warnings` and `check_deltas`.

Item object object
top_improvements array

Highest-impact comparable posture improvements. Coverage-only changes stay in `comparability_warnings` and `check_deltas`.

Top Improvements array

Highest-impact comparable posture improvements. Coverage-only changes stay in `comparability_warnings` and `check_deltas`.

Item object object
Array Items
Item object object
403 In protected production deployments, direct origin calls without RapidAPI forwarding are rejected. RapidAPI marketplace consumers authenticate through RapidAPI and should not be shown or asked to send X-RapidAPI-Proxy-Secret themselves.
Example
{
  "detail": "Forbidden: invalid or missing proxy secret."
}
No schema details were provided for response schema.
422 Validation Error
Response schema HTTPValidationError object
detail array
Detail array
Item object object
Array Items
Item object object
POST /trust/v1/pro/audits/fix-plan

Get a remediation plan

Generate a prioritized, step-by-step remediation plan. Costs 0 if you supply a pre-existing report; costs 1 if you supply a request (triggering a fresh audit). X-Audit-Units-Consumed reports the actual charge.

PRO / ULTRA / MEGA 0–1 audits pro_get_fix_plan

Request Body

Required
Body FixPlanRequest object
One Of
Option 1 object object
Array Items
Item object object
Option 2 object object
Array Items
Item object object
report object Nullable
AuditResponse AuditResponse object
Nullable value
audit_id string

Unique identifier for this audit run (UUID-4).

Audit Id string

Unique identifier for this audit run (UUID-4).

audited_at string

UTC timestamp when the audit was executed (ISO-8601).

Audited At string

UTC timestamp when the audit was executed (ISO-8601).

domain string Required

Original domain as submitted.

Domain string

Original domain as submitted.

normalized_domain string Required

Domain after normalization (punycode).

Normalized Domain string

Domain after normalization (punycode).

scope object Required
Scope Scope object
evaluated_entity string Required

The exact domain string that was audited.

Evaluated Entity string

The exact domain string that was audited.

entity_type string

Type of entity evaluated: root_domain | subdomain.

Entity Type string

Type of entity evaluated: root_domain | subdomain.

scope_note string Required

Human-readable disclaimer about what this audit covers and what it does not.

Scope Note string

Human-readable disclaimer about what this audit covers and what it does not.

Array Items
Item object object
mail_flow_profile string

How to interpret the apex domain's visible mail role: active_mail_domain, apex_non_mail_protected, apex_inbound_disabled, apex_outbound_or_subdomain_mail_possible, or mail_role_unknown.

Mail Flow Profile string

How to interpret the apex domain's visible mail role: active_mail_domain, apex_non_mail_protected, apex_inbound_disabled, apex_outbound_or_subdomain_mail_possible, or mail_role_unknown.

mail_flow_note string Nullable
Nested schema string Nullable
score integer Required

Overall trust score (0-100). Read alongside risk, assessment confidence, and coverage notes; critical anti-spoofing gaps or provisional DKIM coverage can cap the top-line result.

Score integer

Overall trust score (0-100). Read alongside risk, assessment confidence, and coverage notes; critical anti-spoofing gaps or provisional DKIM coverage can cap the top-line result.

score_version string Required

Scoring model version (for reproducibility).

Score Version string

Scoring model version (for reproducibility).

score_breakdown object Required

Per-check score breakdown showing earned vs possible normalised points. Included checks sum to roughly 100 possible points; excluded checks show 0 possible with an explanatory note.

Score Breakdown Score Breakdown object

Per-check score breakdown showing earned vs possible normalised points. Included checks sum to roughly 100 possible points; excluded checks show 0 possible with an explanatory note.

Dictionary Values
Dictionary value ScoreBreakdownEntry object
earned number Required

Normalised points earned for this check.

Earned number

Normalised points earned for this check.

possible number Required

Maximum normalised points available for this check within the current 0-100 scoring basis. Checks excluded from scoring report 0.0 here and explain why in `note`.

Possible number

Maximum normalised points available for this check within the current 0-100 scoring basis. Checks excluded from scoring report 0.0 here and explain why in `note`.

status string Required

Finding status used for scoring.

Status string

Finding status used for scoring.

note string Nullable
Nested schema string Nullable
Array Items
Item object object
Array Items
Item object object
grade string Required

Letter grade: A+ / A / B / C / D / F. Interpret alongside risk, assessment confidence, and coverage summary rather than as a standalone safety verdict.

Grade string

Letter grade: A+ / A / B / C / D / F. Interpret alongside risk, assessment confidence, and coverage summary rather than as a standalone safety verdict.

risk object Required
RiskSummary RiskSummary object
executive_summary string Required

One-paragraph human-readable overview of the domain's email trust posture.

Executive Summary string

One-paragraph human-readable overview of the domain's email trust posture.

risk_level string Required

critical | high | medium | low

Risk Level string

critical | high | medium | low

spoofing_risk string Required

How exposed the domain is to email spoofing.

Spoofing Risk string

How exposed the domain is to email spoofing.

deliverability_risk string Required

How likely legitimate email is to be rejected or junked.

Deliverability Risk string

How likely legitimate email is to be rejected or junked.

enforcement_status string Required

none | partial | full

Enforcement Status string

none | partial | full

assessment_confidence string

How complete the evidence was for this assessment: high | medium | low.

Assessment Confidence string

How complete the evidence was for this assessment: high | medium | low.

coverage_summary string

What was directly evaluated versus left partially covered or provisional.

Coverage Summary string

What was directly evaluated versus left partially covered or provisional.

top_3_actions array Required

The three highest-priority actions the domain owner should take.

Top 3 Actions array

The three highest-priority actions the domain owner should take.

Item object object
Array Items
Item object object
findings array Required
Findings array
Item object object
recommendations array Required

Prioritised list of actionable recommendations.

Recommendations array

Prioritised list of actionable recommendations.

Item object object
raw object Required

Raw data from each check, keyed by check category.

Raw Raw object

Raw data from each check, keyed by check category.

Additional object keys are allowed with arbitrary JSON values.

Array Items
Item object object
provider_analysis object Nullable
ProviderAnalysis ProviderAnalysis object
Nullable value
provider string Required

Primary provider/profile selected by declared context or DNS heuristics. For inferred analysis this is not a complete account inventory; inspect `matched_providers`, `secondary_providers`, warnings, and verification steps.

Provider string

Primary provider/profile selected by declared context or DNS heuristics. For inferred analysis this is not a complete account inventory; inspect `matched_providers`, `secondary_providers`, warnings, and verification steps.

supported boolean Required
Supported boolean
source string

How the provider was identified: declared | inferred.

Source string

How the provider was identified: declared | inferred.

warnings array
Warnings array
Item object object
evidence_matches array
Evidence Matches array
Item object object
evidence_mismatches array
Evidence Mismatches array
Item object object
matched_providers array

All provider profiles whose SPF evidence matched this domain. Useful when multiple sending platforms appear in the same SPF record.

Matched Providers array

All provider profiles whose SPF evidence matched this domain. Useful when multiple sending platforms appear in the same SPF record.

Item object object
secondary_providers array

Additional matched providers beyond the primary `provider` field.

Secondary Providers array

Additional matched providers beyond the primary `provider` field.

Item object object
inference_confidence string

Confidence in the inferred provider heuristic: high | medium | low.

Inference Confidence string

Confidence in the inferred provider heuristic: high | medium | low.

expected_dkim_selectors array

Common selector names or patterns associated with this provider. Treat them as discovery hints to verify, not authoritative selector inventories.

Expected Dkim Selectors array

Common selector names or patterns associated with this provider. Treat them as discovery hints to verify, not authoritative selector inventories.

Item object object
notes array
Notes array
Item object object
mismatch_level string

none | low | medium | high

Mismatch Level string

none | low | medium | high

verification_steps array
Verification Steps array
Item object object
Array Items
Item object object
Array Items
Item object object
request object Nullable

Body of ``POST /v1/free/audits/domain`` and ``POST /v1/pro/audits/domain``.

AuditRequest AuditRequest object

Body of ``POST /v1/free/audits/domain`` and ``POST /v1/pro/audits/domain``.

Nullable value
domain string Required

Email domain to audit (e.g. 'example.com').

Domain string

Email domain to audit (e.g. 'example.com').

dkim_selectors array

Exact DKIM selectors to check. Use selector names copied from the sending platform when possible because catalog examples are not authoritative for every domain. If omitted, the API may conservatively test common selectors only when a single stable provider match exists; exact provider-issued selectors still produce the most authoritative result.

Dkim Selectors array

Exact DKIM selectors to check. Use selector names copied from the sending platform when possible because catalog examples are not authoritative for every domain. If omitted, the API may conservatively test common selectors only when a single stable provider match exists; exact provider-issued selectors still produce the most authoritative result.

Item object object
check_mta_sts_policy boolean

Whether to fetch and validate the MTA-STS policy file over HTTPS.

Check Mta Sts Policy boolean

Whether to fetch and validate the MTA-STS policy file over HTTPS.

check_bimi boolean

Whether to check for a BIMI DNS record. This is syntax-only validation; it does not verify logo hosting, SVG profile compliance, trademark eligibility, or VMC/CMC certificate trust.

Check Bimi boolean

Whether to check for a BIMI DNS record. This is syntax-only validation; it does not verify logo hosting, SVG profile compliance, trademark eligibility, or VMC/CMC certificate trust.

provider_context object Nullable
ProviderContext ProviderContext object
Nullable value
provider string Required

Declared mail provider/profile. Accepted canonical ids include: amazon_ses, google_workspace, klaviyo, mailchimp, microsoft_365, sendgrid. Aliases from `/v1/pro/providers` are also accepted and normalized.

Provider string

Declared mail provider/profile. Accepted canonical ids include: amazon_ses, google_workspace, klaviyo, mailchimp, microsoft_365, sendgrid. Aliases from `/v1/pro/providers` are also accepted and normalized.

Array Items
Item object object
Array Items
Item object object
Array Items
Item object object
cURL POST
curl -H 'content-type: application/json' \
  -H 'X-RapidAPI-Key: YOUR_RAPIDAPI_KEY' \
  -H 'X-RapidAPI-Host: email-domain-trust-auditor.p.rapidapi.com' \
  -X POST 'https://email-domain-trust-auditor.p.rapidapi.com/trust/v1/pro/audits/fix-plan' \
  -d '{
  "request": {
    "domain": "example.com",
    "provider_context": {
      "provider": "amazon_ses"
    }
  }
}'
Example Request application/json
{
  "request": {
    "domain": "example.com",
    "provider_context": {
      "provider": "amazon_ses"
    }
  }
}
200 Successful Response
Example
{
  "domain": "example.com",
  "exact_remediations": [],
  "manual_review_needed": [],
  "priority_summary": [
    "P1: dmarc.missing_rua (safe_now, low risk)"
  ],
  "template_remediations": [
    {
      "actionability": "template",
      "application_risk": "low",
      "confidence_level": "medium",
      "confidence_note": "Built from the observed DMARC tags, but the aggregate-reporting mailbox must be chosen and monitored by the operator.",
      "dependency_notes": [
        "Preserve the existing DMARC policy tags while adding rua."
      ],
      "dns_name": "_dmarc.example.com",
      "evidence_basis": [
        "finding:dmarc.missing_rua"
      ],
      "issue_id": "dmarc.missing_rua",
      "operation": "replace",
      "preconditions": [
        "Choose and monitor the aggregate-reporting mailbox before publishing the updated DMARC record."
      ],
      "priority": "p1",
      "proposed_value_template": "v=DMARC1; p=reject; sp=reject; rua=mailto:<monitored-dmarc-report-mailbox>; adkim=s; aspf=s",
      "rationale": "Aggregate reports help validate ongoing DMARC enforcement and spot alignment drift.",
      "record_type": "TXT",
      "rollout_strategy": "safe_now",
      "verify_after_change": [
        "dig +short TXT _dmarc.example.com",
        "Confirm aggregate DMARC reports begin arriving at the configured mailbox."
      ],
      "why_it_matters": "DMARC reporting visibility is missing even though policy enforcement exists."
    }
  ]
}
Response schema RemediationPlan object
domain string Required
Domain string
exact_remediations array Required
Exact Remediations array
Item object object
template_remediations array Required
Template Remediations array
Item object object
manual_review_needed array Required
Manual Review Needed array
Item object object
priority_summary array Required
Priority Summary array
Item object object
Array Items
Item object object
403 In protected production deployments, direct origin calls without RapidAPI forwarding are rejected. RapidAPI marketplace consumers authenticate through RapidAPI and should not be shown or asked to send X-RapidAPI-Proxy-Secret themselves.
Example
{
  "detail": "Forbidden: invalid or missing proxy secret."
}
No schema details were provided for response schema.
422 Validation Error
Response schema HTTPValidationError object
detail array
Detail array
Item object object
Array Items
Item object object
GET /trust/v1/pro/providers

List supported email providers

Returns curated provider profiles the engine knows about. Use the id as provider_context.provider in audit requests. Any DKIM selector examples are discovery hints only, not authoritative inventories.

PRO / ULTRA / MEGA 0 audits pro_list_providers
cURL GET
curl -H 'X-RapidAPI-Key: YOUR_RAPIDAPI_KEY' \
  -H 'X-RapidAPI-Host: email-domain-trust-auditor.p.rapidapi.com' \
  'https://email-domain-trust-auditor.p.rapidapi.com/trust/v1/pro/providers'
200 Successful Response
Response schema ProviderListResponse object

Response from ``GET /v1/pro/providers``.

count integer Required
Count integer
providers array Required
Providers array
Item object object
Array Items
Item object object
403 In protected production deployments, direct origin calls without RapidAPI forwarding are rejected. RapidAPI marketplace consumers authenticate through RapidAPI and should not be shown or asked to send X-RapidAPI-Proxy-Secret themselves.
Example
{
  "detail": "Forbidden: invalid or missing proxy secret."
}
No schema details were provided for response schema.
GET /trust/v1/pro/findings/catalog

List all finding definitions

PRO / ULTRA / MEGA 0 audits pro_get_findings_catalog
cURL GET
curl -H 'X-RapidAPI-Key: YOUR_RAPIDAPI_KEY' \
  -H 'X-RapidAPI-Host: email-domain-trust-auditor.p.rapidapi.com' \
  'https://email-domain-trust-auditor.p.rapidapi.com/trust/v1/pro/findings/catalog'
200 Successful Response
Response schema FindingCatalogResponse object

Response from ``GET /v1/pro/findings/catalog``.

count integer Required
Count integer
findings array Required
Findings array
Item object object
Array Items
Item object object
403 In protected production deployments, direct origin calls without RapidAPI forwarding are rejected. RapidAPI marketplace consumers authenticate through RapidAPI and should not be shown or asked to send X-RapidAPI-Proxy-Secret themselves.
Example
{
  "detail": "Forbidden: invalid or missing proxy secret."
}
No schema details were provided for response schema.
POST /trust/v1/pro/reports/domain

Render an audit report

Render an audit as HTML or structured JSON with executive summary, findings, score breakdown, assessment confidence, and coverage notes. format="html" returns JSON with the HTML string in content; it does not change the HTTP response media type to text/html. Supply either: - request: {"domain": "example.com"} — triggers a fresh audit (costs 1 audit) - report: a pre-existing AuditResponse object — renders immediately (costs 0 audits) X-Audit-Units-Consumed reports the actual charge.

PRO / ULTRA / MEGA 0–1 audits pro_render_domain_report

Request Body

Required
Body ReportRequest object

Body of ``POST /v1/pro/reports/domain``. Supply **either** ``report`` (a pre-existing ``AuditResponse``, costs 0 audits) **or** ``request`` (an ``AuditRequest`` triggering a fresh audit, costs 1 audit).

One Of
Option 1 object object
Array Items
Item object object
Option 2 object object
Array Items
Item object object
report object Nullable
AuditResponse AuditResponse object
Nullable value
audit_id string

Unique identifier for this audit run (UUID-4).

Audit Id string

Unique identifier for this audit run (UUID-4).

audited_at string

UTC timestamp when the audit was executed (ISO-8601).

Audited At string

UTC timestamp when the audit was executed (ISO-8601).

domain string Required

Original domain as submitted.

Domain string

Original domain as submitted.

normalized_domain string Required

Domain after normalization (punycode).

Normalized Domain string

Domain after normalization (punycode).

scope object Required
Scope Scope object
evaluated_entity string Required

The exact domain string that was audited.

Evaluated Entity string

The exact domain string that was audited.

entity_type string

Type of entity evaluated: root_domain | subdomain.

Entity Type string

Type of entity evaluated: root_domain | subdomain.

scope_note string Required

Human-readable disclaimer about what this audit covers and what it does not.

Scope Note string

Human-readable disclaimer about what this audit covers and what it does not.

Array Items
Item object object
mail_flow_profile string

How to interpret the apex domain's visible mail role: active_mail_domain, apex_non_mail_protected, apex_inbound_disabled, apex_outbound_or_subdomain_mail_possible, or mail_role_unknown.

Mail Flow Profile string

How to interpret the apex domain's visible mail role: active_mail_domain, apex_non_mail_protected, apex_inbound_disabled, apex_outbound_or_subdomain_mail_possible, or mail_role_unknown.

mail_flow_note string Nullable
Nested schema string Nullable
score integer Required

Overall trust score (0-100). Read alongside risk, assessment confidence, and coverage notes; critical anti-spoofing gaps or provisional DKIM coverage can cap the top-line result.

Score integer

Overall trust score (0-100). Read alongside risk, assessment confidence, and coverage notes; critical anti-spoofing gaps or provisional DKIM coverage can cap the top-line result.

score_version string Required

Scoring model version (for reproducibility).

Score Version string

Scoring model version (for reproducibility).

score_breakdown object Required

Per-check score breakdown showing earned vs possible normalised points. Included checks sum to roughly 100 possible points; excluded checks show 0 possible with an explanatory note.

Score Breakdown Score Breakdown object

Per-check score breakdown showing earned vs possible normalised points. Included checks sum to roughly 100 possible points; excluded checks show 0 possible with an explanatory note.

Dictionary Values
Dictionary value ScoreBreakdownEntry object
earned number Required

Normalised points earned for this check.

Earned number

Normalised points earned for this check.

possible number Required

Maximum normalised points available for this check within the current 0-100 scoring basis. Checks excluded from scoring report 0.0 here and explain why in `note`.

Possible number

Maximum normalised points available for this check within the current 0-100 scoring basis. Checks excluded from scoring report 0.0 here and explain why in `note`.

status string Required

Finding status used for scoring.

Status string

Finding status used for scoring.

note string Nullable
Nested schema string Nullable
Array Items
Item object object
Array Items
Item object object
grade string Required

Letter grade: A+ / A / B / C / D / F. Interpret alongside risk, assessment confidence, and coverage summary rather than as a standalone safety verdict.

Grade string

Letter grade: A+ / A / B / C / D / F. Interpret alongside risk, assessment confidence, and coverage summary rather than as a standalone safety verdict.

risk object Required
RiskSummary RiskSummary object
executive_summary string Required

One-paragraph human-readable overview of the domain's email trust posture.

Executive Summary string

One-paragraph human-readable overview of the domain's email trust posture.

risk_level string Required

critical | high | medium | low

Risk Level string

critical | high | medium | low

spoofing_risk string Required

How exposed the domain is to email spoofing.

Spoofing Risk string

How exposed the domain is to email spoofing.

deliverability_risk string Required

How likely legitimate email is to be rejected or junked.

Deliverability Risk string

How likely legitimate email is to be rejected or junked.

enforcement_status string Required

none | partial | full

Enforcement Status string

none | partial | full

assessment_confidence string

How complete the evidence was for this assessment: high | medium | low.

Assessment Confidence string

How complete the evidence was for this assessment: high | medium | low.

coverage_summary string

What was directly evaluated versus left partially covered or provisional.

Coverage Summary string

What was directly evaluated versus left partially covered or provisional.

top_3_actions array Required

The three highest-priority actions the domain owner should take.

Top 3 Actions array

The three highest-priority actions the domain owner should take.

Item object object
Array Items
Item object object
findings array Required
Findings array
Item object object
recommendations array Required

Prioritised list of actionable recommendations.

Recommendations array

Prioritised list of actionable recommendations.

Item object object
raw object Required

Raw data from each check, keyed by check category.

Raw Raw object

Raw data from each check, keyed by check category.

Additional object keys are allowed with arbitrary JSON values.

Array Items
Item object object
provider_analysis object Nullable
ProviderAnalysis ProviderAnalysis object
Nullable value
provider string Required

Primary provider/profile selected by declared context or DNS heuristics. For inferred analysis this is not a complete account inventory; inspect `matched_providers`, `secondary_providers`, warnings, and verification steps.

Provider string

Primary provider/profile selected by declared context or DNS heuristics. For inferred analysis this is not a complete account inventory; inspect `matched_providers`, `secondary_providers`, warnings, and verification steps.

supported boolean Required
Supported boolean
source string

How the provider was identified: declared | inferred.

Source string

How the provider was identified: declared | inferred.

warnings array
Warnings array
Item object object
evidence_matches array
Evidence Matches array
Item object object
evidence_mismatches array
Evidence Mismatches array
Item object object
matched_providers array

All provider profiles whose SPF evidence matched this domain. Useful when multiple sending platforms appear in the same SPF record.

Matched Providers array

All provider profiles whose SPF evidence matched this domain. Useful when multiple sending platforms appear in the same SPF record.

Item object object
secondary_providers array

Additional matched providers beyond the primary `provider` field.

Secondary Providers array

Additional matched providers beyond the primary `provider` field.

Item object object
inference_confidence string

Confidence in the inferred provider heuristic: high | medium | low.

Inference Confidence string

Confidence in the inferred provider heuristic: high | medium | low.

expected_dkim_selectors array

Common selector names or patterns associated with this provider. Treat them as discovery hints to verify, not authoritative selector inventories.

Expected Dkim Selectors array

Common selector names or patterns associated with this provider. Treat them as discovery hints to verify, not authoritative selector inventories.

Item object object
notes array
Notes array
Item object object
mismatch_level string

none | low | medium | high

Mismatch Level string

none | low | medium | high

verification_steps array
Verification Steps array
Item object object
Array Items
Item object object
Array Items
Item object object
request object Nullable

Body of ``POST /v1/free/audits/domain`` and ``POST /v1/pro/audits/domain``.

AuditRequest AuditRequest object

Body of ``POST /v1/free/audits/domain`` and ``POST /v1/pro/audits/domain``.

Nullable value
domain string Required

Email domain to audit (e.g. 'example.com').

Domain string

Email domain to audit (e.g. 'example.com').

dkim_selectors array

Exact DKIM selectors to check. Use selector names copied from the sending platform when possible because catalog examples are not authoritative for every domain. If omitted, the API may conservatively test common selectors only when a single stable provider match exists; exact provider-issued selectors still produce the most authoritative result.

Dkim Selectors array

Exact DKIM selectors to check. Use selector names copied from the sending platform when possible because catalog examples are not authoritative for every domain. If omitted, the API may conservatively test common selectors only when a single stable provider match exists; exact provider-issued selectors still produce the most authoritative result.

Item object object
check_mta_sts_policy boolean

Whether to fetch and validate the MTA-STS policy file over HTTPS.

Check Mta Sts Policy boolean

Whether to fetch and validate the MTA-STS policy file over HTTPS.

check_bimi boolean

Whether to check for a BIMI DNS record. This is syntax-only validation; it does not verify logo hosting, SVG profile compliance, trademark eligibility, or VMC/CMC certificate trust.

Check Bimi boolean

Whether to check for a BIMI DNS record. This is syntax-only validation; it does not verify logo hosting, SVG profile compliance, trademark eligibility, or VMC/CMC certificate trust.

provider_context object Nullable
ProviderContext ProviderContext object
Nullable value
provider string Required

Declared mail provider/profile. Accepted canonical ids include: amazon_ses, google_workspace, klaviyo, mailchimp, microsoft_365, sendgrid. Aliases from `/v1/pro/providers` are also accepted and normalized.

Provider string

Declared mail provider/profile. Accepted canonical ids include: amazon_ses, google_workspace, klaviyo, mailchimp, microsoft_365, sendgrid. Aliases from `/v1/pro/providers` are also accepted and normalized.

Array Items
Item object object
Array Items
Item object object
format string

Output format: 'html' returns a complete HTML document as a string in the JSON `content` field; 'structured' returns a dict in `content`.

html structured
Format string

Output format: 'html' returns a complete HTML document as a string in the JSON `content` field; 'structured' returns a dict in `content`.

html structured
Array Items
Item object object
cURL POST
curl -H 'content-type: application/json' \
  -H 'X-RapidAPI-Key: YOUR_RAPIDAPI_KEY' \
  -H 'X-RapidAPI-Host: email-domain-trust-auditor.p.rapidapi.com' \
  -X POST 'https://email-domain-trust-auditor.p.rapidapi.com/trust/v1/pro/reports/domain' \
  -d '{
  "format": "html",
  "request": {
    "domain": "example.com"
  }
}'
Example Request application/json
{
  "format": "html",
  "request": {
    "domain": "example.com"
  }
}
200 Successful Response
Example
{
  "content": {
    "assessment_confidence": "high",
    "coverage_summary": "The apex appears intentionally configured as a non-mail domain (null MX + SPF -all).",
    "domain": "example.com",
    "executive_summary": "The apex appears intentionally configured as a protected non-mail domain; remaining findings are monitoring or coverage gaps.",
    "findings": [
      {
        "check": "dmarc",
        "evidence": "Record: v=DMARC1;p=reject;sp=reject;adkim=s;aspf=s | Issues: No 'rua' tag \u2014 aggregate reports will not be received.",
        "fix": "Add rua=mailto:<monitored-dmarc-report-mailbox> to receive aggregate reports.",
        "id": "dmarc.missing_rua",
        "severity": "medium",
        "status": "warn",
        "title": "DMARC Missing Aggregate Reporting URI"
      }
    ],
    "grade": "A+",
    "header": {
      "assessment_confidence": "high",
      "domain": "example.com",
      "grade": "A+",
      "mail_flow_profile": "apex_non_mail_protected",
      "risk_level": "low",
      "score": 95
    },
    "mail_flow_profile": "apex_non_mail_protected",
    "recommendations": [
      "Add rua=mailto:<monitored-dmarc-report-mailbox> to receive aggregate reports."
    ],
    "risk_level": "low",
    "score": 95,
    "score_breakdown": {
      "dmarc": {
        "earned": 45.0,
        "possible": 50.0,
        "status": "warn"
      },
      "spf": {
        "earned": 50.0,
        "possible": 50.0,
        "status": "pass"
      }
    },
    "title": "Email Domain Trust Report: example.com"
  },
  "format": "structured"
}
Response schema ReportResponse object

Response from ``POST /v1/pro/reports/domain``.

format string Required

The format that was rendered ('html' or 'structured').

Format string

The format that was rendered ('html' or 'structured').

content Content Required

Rendered report content. HTML format is returned as a string inside this JSON field.

Content Content object

Rendered report content. HTML format is returned as a string inside this JSON field.

Array Items
Item object object
Array Items
Item object object
403 In protected production deployments, direct origin calls without RapidAPI forwarding are rejected. RapidAPI marketplace consumers authenticate through RapidAPI and should not be shown or asked to send X-RapidAPI-Proxy-Secret themselves.
Example
{
  "detail": "Forbidden: invalid or missing proxy secret."
}
No schema details were provided for response schema.
422 Validation Error
Response schema HTTPValidationError object
detail array
Detail array
Item object object
Array Items
Item object object
GET /health

Health check

Operational readiness endpoint.

health_health_get
cURL GET
curl -H 'X-RapidAPI-Key: YOUR_RAPIDAPI_KEY' \
  -H 'X-RapidAPI-Host: email-domain-trust-auditor.p.rapidapi.com' \
  'https://email-domain-trust-auditor.p.rapidapi.com/health'
200 Successful Response
Response schema Response Health Health Get object
Dictionary Values
Dictionary value string
Array Items
Item object object
GET /v1/provider-presets

Provider presets

Return provider-aware DNS hints, common MX patterns, SPF includes, and common DKIM selector presets.

provider_presets_v1_provider_presets_get
cURL GET
curl -H 'X-RapidAPI-Key: YOUR_RAPIDAPI_KEY' \
  -H 'X-RapidAPI-Host: email-domain-trust-auditor.p.rapidapi.com' \
  'https://email-domain-trust-auditor.p.rapidapi.com/v1/provider-presets'
200 Successful Response
No schema details were provided for response schema.
GET /v1/findings-catalog

Findings catalog

Return the catalog of stable finding IDs used across audit responses.

findings_catalog_v1_findings_catalog_get
cURL GET
curl -H 'X-RapidAPI-Key: YOUR_RAPIDAPI_KEY' \
  -H 'X-RapidAPI-Host: email-domain-trust-auditor.p.rapidapi.com' \
  'https://email-domain-trust-auditor.p.rapidapi.com/v1/findings-catalog'
200 Successful Response
No schema details were provided for response schema.
GET /v1/dmarc-lookup/{domain}

DMARC lookup

Lookup and parse the DMARC TXT record for a domain.

dmarc_lookup_v1_dmarc_lookup__domain__get

Parameters

domain path string Required
cURL GET
curl -H 'X-RapidAPI-Key: YOUR_RAPIDAPI_KEY' \
  -H 'X-RapidAPI-Host: email-domain-trust-auditor.p.rapidapi.com' \
  'https://email-domain-trust-auditor.p.rapidapi.com/v1/dmarc-lookup/{domain}'
200 Successful Response
No schema details were provided for response schema.
422 Validation Error
Response schema HTTPValidationError object
detail array
Detail array
Item object object
Array Items
Item object object
GET /v1/spf-lookup/{domain}

SPF lookup

Lookup and parse the SPF TXT record for a domain, including best-effort DNS lookup counting.

spf_lookup_v1_spf_lookup__domain__get

Parameters

domain path string Required
cURL GET
curl -H 'X-RapidAPI-Key: YOUR_RAPIDAPI_KEY' \
  -H 'X-RapidAPI-Host: email-domain-trust-auditor.p.rapidapi.com' \
  'https://email-domain-trust-auditor.p.rapidapi.com/v1/spf-lookup/{domain}'
200 Successful Response
No schema details were provided for response schema.
422 Validation Error
Response schema HTTPValidationError object
detail array
Detail array
Item object object
Array Items
Item object object
POST /v1/dkim-check

DKIM check

Check exact or provider-preset DKIM selectors for a domain.

dkim_check_v1_dkim_check_post

Request Body

Required
Body DKIMCheckRequest object
domain string Required

Domain to check.

Domain string

Domain to check.

selectors array

Exact or likely DKIM selectors to test.

Selectors array

Exact or likely DKIM selectors to test.

Item object object
provider_hint string Nullable
Nested schema string Nullable
Array Items
Item object object
cURL POST
curl -H 'content-type: application/json' \
  -H 'X-RapidAPI-Key: YOUR_RAPIDAPI_KEY' \
  -H 'X-RapidAPI-Host: email-domain-trust-auditor.p.rapidapi.com' \
  -X POST 'https://email-domain-trust-auditor.p.rapidapi.com/v1/dkim-check' \
  -d '{
  "domain": "example.com",
  "provider_hint": "google_workspace",
  "selectors": [
    "google",
    "selector1",
    "selector2",
    "default",
    "mail",
    "k1"
  ]
}'
Example Request application/json
{
  "domain": "example.com",
  "provider_hint": "google_workspace",
  "selectors": [
    "google",
    "selector1",
    "selector2",
    "default",
    "mail",
    "k1"
  ]
}
200 Successful Response
No schema details were provided for response schema.
422 Validation Error
Response schema HTTPValidationError object
detail array
Detail array
Item object object
Array Items
Item object object
GET /v1/mx-lookup/{domain}

MX lookup

Lookup MX records and guess the likely provider based on MX and SPF signals.

mx_lookup_v1_mx_lookup__domain__get

Parameters

domain path string Required
cURL GET
curl -H 'X-RapidAPI-Key: YOUR_RAPIDAPI_KEY' \
  -H 'X-RapidAPI-Host: email-domain-trust-auditor.p.rapidapi.com' \
  'https://email-domain-trust-auditor.p.rapidapi.com/v1/mx-lookup/{domain}'
200 Successful Response
No schema details were provided for response schema.
422 Validation Error
Response schema HTTPValidationError object
detail array
Detail array
Item object object
Array Items
Item object object
GET /v1/email-auth-audit/{domain}

Email authentication audit

Main RapidAPI-friendly audit endpoint. Enter a domain and click Run.

email_auth_audit_v1_email_auth_audit__domain__get

Parameters

domain path string Required
include_raw query boolean
include_fix_plan query boolean
dkim_selectors query string | null

Comma-separated selector list.

provider_hint query string | null
cURL GET
curl -H 'X-RapidAPI-Key: YOUR_RAPIDAPI_KEY' \
  -H 'X-RapidAPI-Host: email-domain-trust-auditor.p.rapidapi.com' \
  'https://email-domain-trust-auditor.p.rapidapi.com/v1/email-auth-audit/{domain}'
200 Successful Response
No schema details were provided for response schema.
422 Validation Error
Response schema HTTPValidationError object
detail array
Detail array
Item object object
Array Items
Item object object
POST /v1/bulk/email-auth-audit

Bulk email authentication audit

Audit multiple domains in one synchronous request. Continues processing when one domain fails.

bulk_email_auth_audit_v1_bulk_email_auth_audit_post

Request Body

Required
Body BulkAuditRequest object
domains array Required

List of domains to audit.

Domains array

List of domains to audit.

Item object object
include_raw boolean

Include raw DNS evidence in nested audit results where available.

Include Raw boolean

Include raw DNS evidence in nested audit results where available.

include_fix_plan boolean

Include staged fix plans for each domain when supported.

Include Fix Plan boolean

Include staged fix plans for each domain when supported.

provider_hints object Nullable
Nested schema object object
Nullable value
Dictionary Values
Dictionary value string
Array Items
Item object object
webhook_url string Nullable
Nested schema string Nullable
Array Items
Item object object
cURL POST
curl -H 'content-type: application/json' \
  -H 'X-RapidAPI-Key: YOUR_RAPIDAPI_KEY' \
  -H 'X-RapidAPI-Host: email-domain-trust-auditor.p.rapidapi.com' \
  -X POST 'https://email-domain-trust-auditor.p.rapidapi.com/v1/bulk/email-auth-audit' \
  -d '{
  "domains": [
    "example.com",
    "clientdomain.com",
    "startup.io"
  ],
  "include_fix_plan": false,
  "include_raw": false,
  "provider_hints": {
    "clientdomain.com": "microsoft_365",
    "example.com": "google_workspace"
  },
  "webhook_url": "https://hooks.example.com/audit-results"
}'
Example Request application/json
{
  "domains": [
    "example.com",
    "clientdomain.com",
    "startup.io"
  ],
  "include_fix_plan": false,
  "include_raw": false,
  "provider_hints": {
    "clientdomain.com": "microsoft_365",
    "example.com": "google_workspace"
  },
  "webhook_url": "https://hooks.example.com/audit-results"
}
200 Successful Response
No schema details were provided for response schema.
422 Validation Error
Response schema HTTPValidationError object
detail array
Detail array
Item object object
Array Items
Item object object
POST /v1/fix-plan

Fix plan

Generate a provider-aware staged fix plan from an audit status summary.

fix_plan_v1_fix_plan_post

Request Body

Required
Body FixPlanRequest object
domain string Required

Domain the plan applies to.

Domain string

Domain the plan applies to.

provider_hint string Nullable
Nested schema string Nullable
audit object Required

Compact top-line audit statuses.

Audit Audit object

Compact top-line audit statuses.

Dictionary Values
Dictionary value string
Array Items
Item object object
goal string
safe_monitoring safe_enforcement maximum_protection non_sending_domain agency_report
Goal string
safe_monitoring safe_enforcement maximum_protection non_sending_domain agency_report
Array Items
Item object object
cURL POST
curl -H 'content-type: application/json' \
  -H 'X-RapidAPI-Key: YOUR_RAPIDAPI_KEY' \
  -H 'X-RapidAPI-Host: email-domain-trust-auditor.p.rapidapi.com' \
  -X POST 'https://email-domain-trust-auditor.p.rapidapi.com/v1/fix-plan' \
  -d '{
  "audit": {
    "bimi": "missing",
    "dkim": "unknown",
    "dmarc": "warning",
    "mta_sts": "missing",
    "mx": "pass",
    "spf": "pass",
    "tls_rpt": "missing"
  },
  "domain": "example.com",
  "goal": "safe_enforcement",
  "provider_hint": "google_workspace"
}'
Example Request application/json
{
  "audit": {
    "bimi": "missing",
    "dkim": "unknown",
    "dmarc": "warning",
    "mta_sts": "missing",
    "mx": "pass",
    "spf": "pass",
    "tls_rpt": "missing"
  },
  "domain": "example.com",
  "goal": "safe_enforcement",
  "provider_hint": "google_workspace"
}
200 Successful Response
No schema details were provided for response schema.
422 Validation Error
Response schema HTTPValidationError object
detail array
Detail array
Item object object
Array Items
Item object object
GET /v1/bulk/jobs/{job_id}

Bulk job status

Return the status of an asynchronous bulk audit job.

bulk_job_status_v1_bulk_jobs__job_id__get

Parameters

job_id path string Required
cURL GET
curl -H 'X-RapidAPI-Key: YOUR_RAPIDAPI_KEY' \
  -H 'X-RapidAPI-Host: email-domain-trust-auditor.p.rapidapi.com' \
  'https://email-domain-trust-auditor.p.rapidapi.com/v1/bulk/jobs/{job_id}'
200 Successful Response
No schema details were provided for response schema.
422 Validation Error
Response schema HTTPValidationError object
detail array
Detail array
Item object object
Array Items
Item object object
GET /v1/dns-records/{domain}

DNS records snapshot

Return TXT and MX records for a domain.

dns_records_v1_dns_records__domain__get

Parameters

domain path string Required
cURL GET
curl -H 'X-RapidAPI-Key: YOUR_RAPIDAPI_KEY' \
  -H 'X-RapidAPI-Host: email-domain-trust-auditor.p.rapidapi.com' \
  'https://email-domain-trust-auditor.p.rapidapi.com/v1/dns-records/{domain}'
200 Successful Response
No schema details were provided for response schema.
422 Validation Error
Response schema HTTPValidationError object
detail array
Detail array
Item object object
Array Items
Item object object
GET /v1/mta-sts-check/{domain}

MTA-STS check

Check for an MTA-STS DNS record and optional hosted policy file.

mta_sts_check_v1_mta_sts_check__domain__get

Parameters

domain path string Required
cURL GET
curl -H 'X-RapidAPI-Key: YOUR_RAPIDAPI_KEY' \
  -H 'X-RapidAPI-Host: email-domain-trust-auditor.p.rapidapi.com' \
  'https://email-domain-trust-auditor.p.rapidapi.com/v1/mta-sts-check/{domain}'
200 Successful Response
No schema details were provided for response schema.
422 Validation Error
Response schema HTTPValidationError object
detail array
Detail array
Item object object
Array Items
Item object object
GET /v1/tls-rpt-check/{domain}

TLS-RPT check

Check for a TLS-RPT record at _smtp._tls..

tls_rpt_check_v1_tls_rpt_check__domain__get

Parameters

domain path string Required
cURL GET
curl -H 'X-RapidAPI-Key: YOUR_RAPIDAPI_KEY' \
  -H 'X-RapidAPI-Host: email-domain-trust-auditor.p.rapidapi.com' \
  'https://email-domain-trust-auditor.p.rapidapi.com/v1/tls-rpt-check/{domain}'
200 Successful Response
No schema details were provided for response schema.
422 Validation Error
Response schema HTTPValidationError object
detail array
Detail array
Item object object
Array Items
Item object object
GET /v1/bimi-check/{domain}

BIMI check

Check for a BIMI TXT record at default._bimi..

bimi_check_v1_bimi_check__domain__get

Parameters

domain path string Required
cURL GET
curl -H 'X-RapidAPI-Key: YOUR_RAPIDAPI_KEY' \
  -H 'X-RapidAPI-Host: email-domain-trust-auditor.p.rapidapi.com' \
  'https://email-domain-trust-auditor.p.rapidapi.com/v1/bimi-check/{domain}'
200 Successful Response
No schema details were provided for response schema.
422 Validation Error
Response schema HTTPValidationError object
detail array
Detail array
Item object object
Array Items
Item object object
POST /v1/compare-audits

Compare audits

Run two audits and compare top-line score and grade.

compare_audits_v1_compare_audits_post

Request Body

Required
Body CompareAuditsRequest object
previous_domain string Required
Previous Domain string
current_domain string Required
Current Domain string
Array Items
Item object object
cURL POST
curl -H 'content-type: application/json' \
  -H 'X-RapidAPI-Key: YOUR_RAPIDAPI_KEY' \
  -H 'X-RapidAPI-Host: email-domain-trust-auditor.p.rapidapi.com' \
  -X POST 'https://email-domain-trust-auditor.p.rapidapi.com/v1/compare-audits' \
  -d '{
  "current_domain": "example.net",
  "previous_domain": "example.com"
}'
Example Request application/json
{
  "current_domain": "example.net",
  "previous_domain": "example.com"
}
200 Successful Response
No schema details were provided for response schema.
422 Validation Error
Response schema HTTPValidationError object
detail array
Detail array
Item object object
Array Items
Item object object