← All Developer Tools

Cloudflare email verification with BillionVerify

Cloudflare powers the security, performance, and developer infrastructure for millions of websites and applications. When Cloudflare Workers, Pages, or other Cloudflare-based services process email addresses β€” from form submissions, API traffic, or user registrations β€” BillionVerify validates those addresses before they propagate to downstream systems.

Why verify before the send

Applications running on Cloudflare's edge handle enormous volumes of user-submitted data. Without an email verification layer, invalid, disposable, and catch-all addresses reach your databases and sending tools at scale. Verifying at the edge or in automation workflows stops bad data early, protecting transactional deliverability and keeping your sender reputation healthy.

Ready-to-use n8n workflow

Import this workflow into n8n β€” it verifies every address with BillionVerify before Cloudflare sends, so only deliverable contacts are emailed. Install the BillionVerify community node first, then add your API key.

verify-emails-in-cloudflare.json
{
  "name": "Verify emails before sending in Cloudflare + BillionVerify",
  "nodes": [
    {
      "parameters": {},
      "type": "n8n-nodes-base.manualTrigger",
      "typeVersion": 1,
      "position": [
        240,
        300
      ],
      "name": "When clicking β€˜Test workflow’"
    },
    {
      "parameters": {
        "assignments": {
          "assignments": [
            {
              "id": "email-field",
              "name": "email",
              "value": "jane@example.com",
              "type": "string"
            }
          ]
        },
        "options": {}
      },
      "type": "n8n-nodes-base.set",
      "typeVersion": 3.4,
      "position": [
        460,
        300
      ],
      "name": "Get contacts"
    },
    {
      "parameters": {
        "sendTo": "={{ $json.email }}",
        "subject": "Message for Cloudflare contacts",
        "message": "Replace this Gmail send with your Cloudflare node β€” only deliverable, verified contacts reach it.",
        "options": {}
      },
      "type": "n8n-nodes-base.gmail",
      "typeVersion": 2.1,
      "position": [
        900,
        300
      ],
      "name": "Send email",
      "webhookId": "",
      "credentials": {
        "gmailOAuth2": {
          "id": "",
          "name": "Gmail account"
        }
      }
    },
    {
      "parameters": {
        "operation": "verify",
        "email": "={{ $json.email }}",
        "additionalOptions": {}
      },
      "type": "n8n-nodes-billionverify.billionVerify",
      "typeVersion": 1,
      "position": [
        540,
        300
      ],
      "name": "Verify Email (BillionVerify)",
      "credentials": {
        "billionVerifyApi": {
          "id": "",
          "name": "BillionVerify account"
        }
      }
    },
    {
      "parameters": {
        "conditions": {
          "options": {
            "caseSensitive": true,
            "leftValue": "",
            "typeValidation": "loose"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "is-deliverable",
              "leftValue": "={{ $json.is_deliverable }}",
              "rightValue": "",
              "operator": {
                "type": "boolean",
                "operation": "true",
                "singleValue": true
              }
            }
          ]
        }
      },
      "type": "n8n-nodes-base.if",
      "typeVersion": 2,
      "position": [
        720,
        300
      ],
      "name": "IF deliverable"
    }
  ],
  "connections": {
    "When clicking β€˜Test workflow’": {
      "main": [
        [
          {
            "node": "Get contacts",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get contacts": {
      "main": [
        [
          {
            "node": "Verify Email (BillionVerify)",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Verify Email (BillionVerify)": {
      "main": [
        [
          {
            "node": "IF deliverable",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "IF deliverable": {
      "main": [
        [
          {
            "node": "Send email",
            "type": "main",
            "index": 0
          }
        ],
        []
      ]
    }
  },
  "settings": {
    "executionOrder": "v1"
  }
}

Workflow templates with Cloudflare

Ready-to-use workflows that verify emails before Cloudflare sends.

How it works

  1. 1

    Integrate BillionVerify with your Cloudflare-based workflow via the REST API (callable from Workers), the n8n community node, or Integrately.

  2. 2

    Trigger email verification at the point of data entry β€” a form submission, an API request, or a scheduled data-hygiene job.

  3. 3

    BillionVerify performs syntax checking, DNS lookup, SMTP probing, disposable-provider matching, and catch-all detection.

  4. 4

    Receive a structured verdict for each address, including deliverability status and risk level.

  5. 5

    Accept, flag, or reject addresses based on the verdict before writing to your database or passing to an email platform.

When to use this

Edge-side sign-up validation

Call the BillionVerify REST API from a Cloudflare Worker during user registration. Validate the submitted email address at the edge before the request reaches your origin server, blocking bot sign-ups and disposable accounts instantly.

Automated contact pipeline hygiene

Use n8n or Integrately to chain Cloudflare-triggered events with BillionVerify checks. When a Cloudflare-powered form or API endpoint receives a new contact, verify the email and route only clean records to your CRM or marketing platform.

Bulk list verification before campaigns

Before sending transactional or marketing email to lists maintained in Cloudflare-connected data stores, run those lists through BillionVerify. Suppress undeliverable addresses and reduce bounce rates on every campaign.

FAQ

Can I call BillionVerify directly from a Cloudflare Worker?

Yes. Cloudflare Workers support outbound fetch requests, so you can call the BillionVerify REST API endpoint directly within your Worker logic to verify addresses at the edge.

How fast is a single-address verification?

Most single-address checks complete in under a second, which is fast enough for inline use during form submissions or API request handling without noticeably affecting the user experience.

Does BillionVerify identify role addresses like webmaster@ or postmaster@?

Yes. Role-based addresses are flagged separately so you can choose to filter them out or treat them differently from personal or business addresses.

Is the BillionVerify API available globally?

Yes. The BillionVerify REST API is accessible from any region, including Cloudflare's global edge network, with no geographic restrictions on API calls.

Verify emails in Cloudflare

Create a free account, grab your API key, and stop bounces before they happen.

Get started free