How to Connect BetterContact to n8n

Updated 25 August 2026 · Lead Gen Library by 2V Automation

httpHeaderAuthn8n credential type
31 published systemsUsed by

BetterContact is the verification layer in the library’s enrichment step. It takes the contact Hunter found, runs the address through a waterfall of data providers, and returns a deliverable email or nothing. n8n talks to it over plain HTTP with the key in a request header.

What you need

Get the API key

  1. Log in to BetterContact.
  2. Open the API section of the dashboard.
  3. Copy the key shown there. It identifies your whole account, so the usual rule applies: never leave it inside exported workflow JSON.

Create the credential in n8n

BetterContact has no dedicated n8n integration, so the workflows call its REST endpoint from HTTP Request nodes and authenticate with a generic Header Auth credential.

  1. Open Credentials, click Add credential, and search for “Header Auth”.
  2. In the Name field type X-API-Key. This is the header BetterContact reads.
  3. In the Value field paste your key.
  4. Name the credential “BetterContact LGL” and save. Library workflows expect that name on import.

The header name matters. X-Api-Key with different casing works because headers are case-insensitive, but a typo like X-API-Keys fails silently with an unauthorized response.

Test it

  1. Add an HTTP Request node to a scratch workflow.
  2. Method POST, URL https://app.bettercontact.rocks/api/v2/async.
  3. Authentication: Generic Credential Type, then Header Auth, then “BetterContact LGL”.
  4. Send a JSON body with a single contact: your own first name, last name, and company.
  5. Execute the step.

A success response returns a request id rather than the enriched contact. That is expected. The async API queues the work and you fetch results from a second endpoint using that id, which is exactly how the enrichment workflow is wired. An unauthorized response means the header name or key is wrong.

Cost and one gotcha

Budget $15 per month at default system volume. The pricing model works in your favor here: credits are only consumed on successful finds, so a batch of hard-to-verify prospects costs less than the raw contact count suggests. The gotcha is the async pattern above. Builders who test with a plain request see “no email in the response” and assume the credential is broken. Give the queue 30 to 60 seconds and poll the results endpoint before concluding anything is wrong.

Where the library uses BetterContact

Every published system runs it in the enrichment workflow, immediately after Hunter. Addresses that pass the waterfall mark the prospect ready for outreach; addresses that fail mark it dead, which protects your sending domain’s reputation from bounces.

Systems that use BetterContact