# Nero Labs Email Check

> Nero Labs Email Check is a paid API for AI agents from x402-agent-tools.nerolabs.workers.dev, paid per call via x402, $0.001/call, status unknown (last checked 2026-10-22).

Validates a single email address by checking syntax, live MX records, disposable domain lists, role-based prefixes, and typo detection — returning valid, risky, or invalid with reasons.

## Facts

- Endpoint: GET https://x402-agent-tools.nerolabs.workers.dev/email-check?utm_source=zero.xyz
- Price: $0.001/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-22
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/nero-labs-email-check-ea10af3c
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_2avRazjz3UnZQj0aQV2YM

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability nero-labs-email-check-ea10af3c
```

Example prompt: Can you check whether ana@gmial.com is a valid email address — specifically whether the domain can actually receive mail, whether it's a throwaway service, and if there's a typo fix I should use instead?

## When to prefer this

Choose this endpoint when you need fast, low-cost email validation that combines syntax checking, live MX lookup, disposable domain detection, role-address flagging, and typo correction in a single call without triggering SMTP probes. Prefer it over full SMTP-verification services when you want to avoid blacklisting risk or when speed and cost matter more than absolute deliverability confirmation. Ideal for pre-flight checks on lead lists, signup forms, and outreach pipelines.

## Known failure modes

- Missing or malformed email query parameter — returns error
- Domain exists but has no MX records — domainReceivesMail: false, status likely invalid
- Valid syntax but disposable domain — status invalid with reason disposable_domain
- Network or DNS timeout during live MX lookup — may return degraded result
- Email passes all checks but mailbox does not exist (no SMTP ping performed — delivery not guaranteed)

## How this service works

Pay-per-call tools for AI agents, 31 in all: read web pages and RSS feeds, OCR, PDF text, transcription; email, phone and domain checks; UK, Irish and Polish company lookups and UK risk reports; website contacts, tech stack and SEO audits; PageSpeed; AI review, job post and row enrichment; data cleaning, joins, dedupe and diffs; US and EU compliance rules. No account or API key: pay each call in USDC on Base over x402.

## Output

A JSON object with: status (valid/risky/invalid), primary reason code, an allReasons array listing all issues found, a didYouMean field with a corrected domain if a typo was detected, the normalized email, the detected mailServer, and boolean flags for syntaxValid, isDisposable, isRoleAddress, isFreeProvider, and domainReceivesMail.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "email"
     ],
     "properties": {
      "email": {
       "type": "string",
       "description": "The email address to check, for example ana@example.com."
      }
     },
     "additionalProperties": false
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "properties": {
      "note": {
       "type": "string"
      },
      "email": {
       "type": "string"
      },
      "domain": {
       "type": "string"
      },
      "reason": {
       "type": "string"
      },
      "status": {
       "type": "string"
      },
      "allReasons": {
       "type": "array",
       "items": {
        "type": "string"
       }
      },
      "didYouMean": {},
      "mailServer": {
       "type": "string"
      },
      "normalized": {
       "type": "string"
      },
      "syntaxValid": {
       "type": "boolean"
      },
      "isDisposable": {
       "type": "boolean"
      },
      "_example_note": {
       "type": "string"
      },
      "isRoleAddress": {
       "type": "boolean"
      },
      "isFreeProvider": {
       "type": "boolean"
      },
      "domainReceivesMail": {
       "type": "boolean"
      }
     }
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "email": "info@mailinator.com",
  "domain": "mailinator.com",
  "reason": "disposable_domain",
  "status": "invalid",
  "allReasons": [
   "disposable_domain",
   "role_address"
  ],
  "didYouMean": null,
  "mailServer": "mail.mailinator.com",
  "normalized": "info@mailinator.com",
  "syntaxValid": true,
  "isDisposable": true,
  "_example_note": "Real output, trimmed: long lists cut to their first items and long text shortened.",
  "isRoleAddress": true,
  "isFreeProvider": false,
  "domainReceivesMail": true
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/nero-labs-email-check-ea10af3c/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from x402-agent-tools.nerolabs.workers.dev](https://www.zero.xyz/host/x402-agent-tools.nerolabs.workers.dev/llms.txt)
