---
title: "Check an email"
method: GET
path: "/v1/addresses/{address}/checks"
---

# Check an email

`GET /v1/addresses/{address}/checks`

## Request

- Base URL: `https://api.proxymail.qa`
- URL: `https://api.proxymail.qa/v1/addresses/{address}/checks`
- Auth: HTTP bearer

Runs checks on one email the address received: the one named by `email_id`, or the newest matching the filters. Doesn't wait: wait for the email first (`/code`, `/link` or `/count`). Each check passes, fails, warns or is skipped, with a one-line reason: SPF, DKIM and DMARC (the receiving server's verdicts), links to localhost or a private address (also after a redirect), plain http links, the site its sign-in, verify, reset or invite link goes to (`expect_host`), whether it says when its code or link expires, a plain-text version, the HTML's size against Gmail's 102 KB limit, image-only emails, whether it fits a phone, and, when asked, given phrases (`expect_text`) and the language (`expect_language`). Verdicts only: never the email's text or its links (reasons name at most a domain or a link's host).

## Path parameters

- `address` string, email, required

## Query parameters

- `email_id` string, uuid
- `since` string, date-time
- `expect_host` string
- `expect_text` string[]
- `expect_language` string
- `service` string
- `type` 'code' | 'link'
- `subtype` string

## Headers

- `Proxy-Mail-QA-Run` string, uuid
- `Proxy-Mail-QA-Test` string

## Response `200`

The checks

- EmailChecks
  - `address` string
  - `email` object: Which email was checked, without its content.
    - `id` string, uuid
    - `received_at` string, date-time
    - `service` string, nullable
    - `service_domain` string, nullable
    - `type` 'code' | 'link' | 'null', nullable: Its main code or link.
    - `subtype` string, nullable
  - `passed` boolean: No check failed. Warnings don't count.
  - `failed` string[]
  - `warnings` string[]
  - `checks` object[]
    - `check` 'spf' | 'dkim' | 'dmarc' | 'local_links' | 'plain_http' | 'expected_host' | 'expiry' | 'plain_text' | 'size' | 'images_only' | 'layout' | 'expected_text' | 'language'
    - `status` 'pass' | 'fail' | 'warn' | 'skip'
    - `detail` string

## Other responses

- `400`: An error
- `404`: An error

---

[API](https://skmtc.dev/proxymail/apis/proxy-mail-qa-api.md) · [All operations](https://skmtc.dev/proxymail/apis/proxy-mail-qa-api/llms.txt) · [OpenAPI document](https://skmtc.dev/proxymail/apis/proxy-mail-qa-api/revisions/8f8a5e84cf5c?raw)
