Check up to 1,000 emails for free providers · Email API
Classify up to 1,000 email addresses in one call, in input order, plus verdict counts. Each address gets the same checks as `GET /email/check`: exact match against 4,768 free email provider domains (the list HubSpot forms block with "Block free email providers", snapshot 2026-10-10), role-mailbox detection, and a syntax check. Use it to split a lead list or CRM export into business and personal addresses. Costs 0 credits.
Try it without an API key: Free email domain checker — business vs. personal.
curl -X POST https://api.unifapi.com/email/check/batch \ -H "Authorization: Bearer $UNIFAPI_KEY" \ -H "Content-Type: application/json"
Parameters
- The parameter for this Email operation. Use the URL-visible slug or id described in the docs.
- The parameter for this Email operation. Use the URL-visible slug or id described in the docs.
This operation is part of the Email API in the email category. It uses the same Bearer token, request tracing, error model, and billing envelope as every UnifAPI endpoint, so agents can switch between platforms without custom per-vendor glue code.
Use it when a workflow needs Email public data but should still keep one API key, one account balance, and one predictable JSON contract across social, live public-data sources.
Common agent workflows
- Fetch canonical public Email content for summarization, ranking, monitoring, or enrichment.
- Attach engagement, author, media, and source metadata to an agent workflow.
- Give an AI agent a stable Email data source without building a per-platform integration.
- Normalize Email responses into the same UnifAPI envelope used across the catalog.
Unified envelope, platform-native fields
- Lookup responses return one canonical object in `data` with stable identifiers, source URLs where available, and platform-specific metadata normalized into predictable JSON.
- This operation has a zero-credit multiplier, so successful responses include zero-charge billing metadata.
- A not-found or invalid-input condition uses the unified UnifAPI error shape, so callers do not need special handling for each source platform.
Response status codes
Billing
This operation is free: it has a zero-credit multiplier and still returns billing metadata with zero credits charged.
Errors and retries
Authentication, validation, rate-limit, not-found, and provider errors use the unified UnifAPI error format. Agents should log `request_id`, retry only retryable failures, and treat invalid API keys, disabled keys, and expired keys as the same public `unauthorized` error type.
Fields in the data object
A successful Check up to 1,000 emails for free providers call returns one data object with these fields.
- resultsobject[]
- One check per input address, in input order.
- summaryobject
- results[].inputstring
- The address as received, trimmed.
- results[].emailstring | null
- Lowercased address; null when the syntax is invalid.
- results[].local_partstring | null
- Lowercased part before the `@`.
- results[].domainstring | null
- Lowercased domain; internationalized domains are converted to punycode.
- results[].is_valid_syntaxboolean
- results[].is_free_providerboolean | null
- The domain is on the free email provider list. Null when the syntax is invalid.
- results[].is_role_accountboolean | null
- The local part (ignoring any `+tag`) is a shared mailbox such as `info`, `sales`, `support`, or `noreply`. Null when the syntax is invalid.
- results[].verdictstring
- `free` — the domain is on the free email provider list. `business` — valid syntax and the domain is not on the list (a classification, not a deliverability check). `invalid` — the address or domain fails the syntax check.
- results[].invalid_reasonstring | null
Agents & Skills built on Email
You rarely call Check up to 1,000 emails for free providers by hand. These prebuilt agents and skills already read Email data inside Claude or Codex — start from one of them, or call this endpoint yourself.
More Email operations
Combine endpoints from the same platform, then join the results with other UnifAPI categories without changing authentication or response parsing.
Check if an email uses a free provider
Classify one email address as `business`, `free`, or `invalid`. The domain is matched exactly against 4,768 free email provider domains (the list HubSpot forms block with "Block free email providers", snapshot 2026-10-10); the response also flags role mailboxes (info@, sales@, noreply@) and explains syntax failures. Runs without DNS or SMTP probes, so it is instant and costs 0 credits. Use it to gate signup and lead forms on work emails.
Check if a domain is a free email provider
Classify a bare domain as `free`, `business`, or `invalid` against 4,768 free email provider domains (the list HubSpot forms block with "Block free email providers", snapshot 2026-10-10). Matching is exact: subdomains of a listed domain are not treated as free. A pasted address or website URL is reduced to its domain first. Costs 0 credits.
List free email provider domains
Page through the 4,768 free email provider domains (the list HubSpot forms block with "Block free email providers", snapshot 2026-10-10), sorted alphabetically. Filter with `q` or sync the whole list with `limit=1000` to block free providers in your own code. Costs 0 credits.