---
title: "Check SPF, DMARC, DKIM and MX, free"
method: POST
path: "/v1/tools/email-auth"
tags: ["Tools"]
---

# Check SPF, DMARC, DKIM and MX, free

`POST /v1/tools/email-auth`

## Request

- Base URL: `https://api.nvoke.run`
- URL: `https://api.nvoke.run/v1/tools/email-auth`
- Auth: none required

The free SPF and DMARC checker on nvoke.run/tools. DNS only: MX hosts, the SPF record with its lookup count, the DMARC policy and DKIM keys under common selectors, each graded pass, warn or fail. Rate limited per IP.

## Request body

- object
  - `domain` string, required

## Response `200`

OK

- object
  - `domain` string, required
  - `mx` object, required
    - `grade` 'pass' | 'warn' | 'fail', required
    - `hosts` string[], required
    - `notes` string[], required
  - `spf` object, required
    - `grade` 'pass' | 'warn' | 'fail', required
    - `record` string, nullable, required
    - `all` string, nullable, required
    - `lookups` integer, required
    - `notes` string[], required
  - `dmarc` object, required
    - `grade` 'pass' | 'warn' | 'fail', required
    - `record` string, nullable, required
    - `policy` 'none' | 'quarantine' | 'reject', nullable, required
    - `notes` string[], required
  - `dkim` object, required
    - `grade` 'pass' | 'warn' | 'fail', required
    - `selectors` string[], required
    - `notes` string[], required

## Other responses

- `4XX`: `invalid_request`: The body or query failed validation. `details` lists the problems. `rate_limited`: Too many requests of this kind from this account or client. Try again later.

---

[API](https://skmtc.dev/nvoke/apis/nvoke-api.md) · [All operations](https://skmtc.dev/nvoke/apis/nvoke-api/llms.txt) · [OpenAPI document](https://skmtc.dev/nvoke/apis/nvoke-api/revisions/f7cfd26111a8?raw)
