openapi: 3.1.0 info: title: Email Verifier & Validator description: Takes one email address and tells you whether it can actually receive mail. Returns a verdict of valid, invalid, or risky, splits the address into username and domain, and flags free providers and role accounts like admin@ or support@. One address per call. version: 1.0.0 contact: name: _done url: https://forms.gle/5KzuSFH7p8hHtDmz7 email: info@underscoredone.com x-openapi-url: https://email-verifier.underscoredone.com/openapi.json x-logo: url: https://underscoredone.com/logo.png altText: _done x-guidance: 'Call this before sending an email or accepting a signup address. Send exactly one email string per call, already trimmed if possible. Check the quality field: treat ''invalid'' as do-not-send, ''risky'' as send-with-caution, ''valid'' as safe. Use free and role flags to decide if the address is a personal inbox worth trusting. Do not send arrays or multiple addresses in one call.' x-ai-instructions: 'Call this before sending an email or accepting a signup address. Send exactly one email string per call, already trimmed if possible. Check the quality field: treat ''invalid'' as do-not-send, ''risky'' as send-with-caution, ''valid'' as safe. Use free and role flags to decide if the address is a personal inbox worth trusting. Do not send arrays or multiple addresses in one call.' x-provider: _done — single-purpose utility APIs for developers and AI agents. Pay per call with USDC on Base Mainnet or Solana Mainnet. x-pricing: model: pay-per-call currency: USDC network: Base Mainnet or Solana Mainnet price: $0.01 x-keywords: - email verifier - email validator - email checker - deliverability check - verify email address - role account detector - free email detector - mailbox check - bounce prevention - email cleaning - signup validation - utility - api - ai-agent - pay-per-call - usdc - x402 - network - email verification - mail server x-category: network x-provider-url: https://underscoredone.com x-agentcash-auth: mode: paid x-402: price: $0.01 network: eip155:8453 asset: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913' pay_to: '0xE9740820225B3918b4ddd1292C7cA4Ca0e2C2F08' facilitator: https://api.cdp.coinbase.com/platform/v2/x402 scheme: exact description: Takes one email address and tells you whether it can actually receive mail. Returns a verdict of valid, invalid, or risky, splits the address into username and domain, and flags free providers and role accounts like admin@ or support@. One address per call. mime_type: application/json networks: - network: eip155:8453 asset: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913' pay_to: '0xE9740820225B3918b4ddd1292C7cA4Ca0e2C2F08' - network: solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp asset: EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v pay_to: 8ugAWAXDB8V18kiUrGZTq1oMvU3C6Fxs8hfC6rvzQT3b paths: /verify: post: tags: - Network - Email Verification - Signup Validation - Mail Server summary: Verify if an email address is real and safe to send to description: Checks one email address and reports whether it looks safe to send mail to, along with helpful details about it. operationId: verify_email_verify_post requestBody: content: application/json: schema: $ref: '#/components/schemas/Request' required: true responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/Response' examples: success: summary: Successful response value: api_version: 1.0.0 '422': description: Unprocessable — a required field is missing or the wrong type. Check the detail field for specifics. content: application/json: schema: type: object properties: detail: type: array '402': description: Payment required. Send a signed USDC payment on Base Mainnet or Solana Mainnet using the x402 protocol. headers: X-Payment-Response: description: x402 payment challenge — base64-encoded JSON with payment details. schema: type: string '400': description: Bad request — your input failed validation or could not be processed. Check the detail field for specifics. content: application/json: schema: type: object properties: detail: type: string x-ai-instructions: 'Call this before sending an email or accepting a signup address. Send exactly one email string per call, already trimmed if possible. Check the quality field: treat ''invalid'' as do-not-send, ''risky'' as send-with-caution, ''valid'' as safe. Use free and role flags to decide if the address is a personal inbox worth trusting. Do not send arrays or multiple addresses in one call.' x-guidance: 'Call this before sending an email or accepting a signup address. Send exactly one email string per call, already trimmed if possible. Check the quality field: treat ''invalid'' as do-not-send, ''risky'' as send-with-caution, ''valid'' as safe. Use free and role flags to decide if the address is a personal inbox worth trusting. Do not send arrays or multiple addresses in one call.' x-payment-info: price: fixed: mode: fixed currency: USD amount: '0.01' protocols: - x402: {} components: schemas: HTTPValidationError: properties: detail: items: $ref: '#/components/schemas/ValidationError' type: array title: Detail type: object title: HTTPValidationError Request: properties: email: type: string title: Email description: The single email address to check, such as alpha@gmail.com. Maximum 320 characters. type: object required: - email title: Request example: email: alpha@gmail.com Response: properties: api_version: type: string title: Api Version description: The version number of this checking service. default: 1.0.0 email: type: string title: Email description: The email address that was checked, with any extra spaces removed. username: type: string title: Username description: The part of the email address written before the @ sign. domain: type: string title: Domain description: The part of the email address written after the @ sign, always shown in lowercase letters. quality: type: string title: Quality description: 'Whether the address is safe to send to: valid, risky, or invalid.' free: type: boolean title: Free description: True if the domain belongs to a free email provider such as Gmail or Yahoo. role: type: boolean title: Role description: True if the username looks like a shared mailbox such as admin or support, rather than a personal inbox. type: object required: - email - username - domain - quality - free - role title: Response example: api_version: 1.0.0 domain: gmail.com email: alpha@gmail.com free: true quality: valid role: false username: alpha ValidationError: properties: loc: items: anyOf: - type: string - type: integer type: array title: Location msg: type: string title: Message type: type: string title: Error Type input: title: Input ctx: type: object title: Context type: object required: - loc - msg - type title: ValidationError securitySchemes: siwx: type: apiKey in: header name: SIGN-IN-WITH-X description: CAIP-122 wallet signature for repeat access after payment servers: - url: https://email-verifier.underscoredone.com description: Production tags: - name: Network - name: Email Verification - name: Signup Validation - name: Mail Server x402Version: 2 x-payment-accepts: - scheme: exact network: eip155:8453 payTo: '0xE9740820225B3918b4ddd1292C7cA4Ca0e2C2F08' asset: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913' - scheme: exact network: solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp payTo: 8ugAWAXDB8V18kiUrGZTq1oMvU3C6Fxs8hfC6rvzQT3b asset: EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v