← All integrations

n8n workflows

Three importable n8n workflow templates and a reusable sub-workflow live inintegrations/n8n/. Each template calls rate.email through n8n's built-in HTTP Request node, so there is nothing to install beyond n8n itself.

Templates

n8n workflow templates and what each one does
TemplateTriggerWhat it does
template-gmail-danger-label.jsonGmail TriggerChecks each new sender and adds a Gmail label called "danger" to messages from risky senders.
template-form-signup-guard.jsonWebhookPoint a signup form at the webhook. It checks the address and tells the form whether to let the signup through.
template-bulk-list-cleanup.jsonManual, reads a Google SheetChecks every address in a sheet and splits them into a "Keep" tab and a "Danger" tab.

Import a template

  1. Open n8n and go to Workflows.
  2. Click Add workflow, then Import from File (or Import from URL for a raw link to one of these files).
  3. Pick the template's .json file. n8n opens it on the canvas; nothing runs yet.

This works the same way on n8n Cloud and on a self-hosted instance. Every node these templates use, HTTP Request, Gmail, Webhook, Respond to Webhook, Google Sheets, Set, If, Loop Over Items and Wait, is part of n8n's free node set on both.

Set up the credential

An imported template never carries a real API key: n8n strips credential values on export. Every template ships with an HTTP Request node already pointed at a Header Auth credential, with no credential selected yet.

  1. In n8n, go to Credentials and add a Header Auth credential.
  2. Set the parameter name to Authorization and the value to Bearer, a space, then a secret key from your rate.email dashboard.
  3. Open each HTTP Request node in the template and pick that credential from the dropdown.
{
  "header": "Authorization",
  "value": "Bearer sk_live_your_real_key_here"
}

Use a secret key (sk_live_ / sk_test_), not a publishable key: a publishable key is restricted for use in a public web page and will not work here. Full request and response shapes are in the API reference.

What each verdict does

All three templates act on the verdict only, never the numeric score, because the verdict is what rate.email guarantees will not change between API versions.

Verdict handling per template
VerdictGmail danger labelSignup guardBulk cleanup
acceptNo labelAllowed throughWritten to Keep
reviewLabelled dangerAllowed throughWritten to Danger
rejectLabelled dangerRefused, friendly messageWritten to Danger

Reusable building block: the sub-workflow

subworkflow-rate-email.json takes one email address in and returns a flattened verdict out (verdict, score, top_reason,is_danger). Call it from another workflow with n8n's Execute Sub-workflow node so the rate.email call is wired up once and reused everywhere.

The three templates above do not call this sub-workflow themselves: each repeats the same HTTP Request and Set nodes on purpose, so a template imported on its own works without also importing and wiring up a second workflow first. Once a workflow is running, its "Rate the …" and "Read the verdict" nodes can be replaced with a single Execute Sub-workflow node pointing at subworkflow-rate-email.json.