{"uid":"cap_oYUs8Saqvj5FyJzMdf7Zz","slug":"email-verification-batch-api-13c23d74","name":"Email Verification Batch API","description":"Invoice-to-JSON, on-chain tools (transaction explainer + payment check, wallet profile, contract ABI, ERC-20 token risk), company contacts and web-to-RAG for AI agents. Pay per call with x402 (USDC on Base). No signup, no API key.","url":"https://freetier-agent-api.pages.dev/api/email-verify-batch?utm_source=zero.xyz","method":"GET","headers":{},"bodySchema":{"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":["emails"],"properties":{"emails":{"type":"string","description":"comma-separated emails, max 20"}}}}},"output":{"type":"object","required":["type"],"properties":{"type":{"type":"string"},"example":{"type":"object"}}}}},"responseSchema":{"type":"json","example":{"count":2,"results":[{"role":true,"email":"info@stripe.com","has_mx":true,"verdict":"risky"}],"summary":{"risky":2}}},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.005","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.005/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.005","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.005","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_j1w5BGqcvrA2EHxYFeH2d","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.005","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Validates up to 20 email addresses per call, checking syntax, DNS MX/A records, disposable/role/free-mail flags, and returning a per-address verdict and summary — no SMTP probing or data storage.","exampleAgentPrompt":"Can you batch-verify these emails for me — alice@gmail.com, info@stripe.com, test@mailinator.com — and tell me which ones are risky, disposable, or role-based, and whether their domains have valid MX records?","exampleUseCases":[{"title":"Pre-send list hygiene for email campaign","prompt":"Before I send this newsletter, check these 15 emails for validity: user1@domain.com, noreply@company.org, jane@tempmail.com... flag any that are disposable, role-based, or have no MX records so I know which to remove."},{"title":"Signup form spam filter","prompt":"A user just signed up with support@mailinator.com and admin@guerrillamail.com — can you verify those addresses and tell me if they're disposable or role-based so I can decide whether to block them?"},{"title":"CRM contact data quality check","prompt":"I have a batch of 20 contacts I imported — can you verify their emails and give me a summary of how many are risky, invalid, or free-mail so I can prioritize which ones to follow up with?"}],"resultDescription":"Returns a JSON object with a count of emails checked, a per-address results array (email, has_mx, verdict, role, disposable, free-mail flags), and a summary object grouping verdicts (e.g. risky: 2, valid: 10). No SMTP probing is performed and no data is stored.","failureModes":["More than 20 emails in a single call — the API enforces a maximum of 20","Malformed comma-separated input — parsing errors if emails are not properly delimited","DNS lookup failures for domains with unusual configurations — may return inconclusive MX status","Network timeouts on DNS-over-HTTPS resolution for slow/unresponsive domains","Missing required 'emails' query parameter — request rejected","Payment failure or insufficient USDC balance — 402 response blocking the call"],"whenToPreferThis":"Choose this endpoint when you need to validate multiple email addresses at once (up to 20) without triggering SMTP connections or storing any data. It is ideal for pre-flight checks before email campaigns, filtering signups, or cleaning CRM lists. Prefer the sibling single-email endpoint for individual lookups; prefer this batch endpoint when processing lists to minimize API calls and cost.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-11-01T06:54:50.713Z","isFirstParty":false,"canonicalSlug":"email-verification-batch-api-13c23d74"}