Enrich any record.Any workflow.
Drop an HTTP Request node into any n8n workflow. Pass what you have — email, LinkedIn URL, domain, name. Get 250+ enriched fields back in real time.
Example workflow — Enrich inbound webhook leads
Webhook — POST /inbound-lead
email, first_name, last_name, company
GET /api/ingress/v4/contact
jobTitle, seniority, linkedinUrl, headcount…
seniority = "C-Level" OR "VP"
route to priority branch
Salesforce — Create contact
enriched contact + ICP tag
Setup
One node.
Any workflow.
Works in n8n Cloud, self-hosted, and n8n desktop. No custom node to install — just the built-in HTTP Request node.
Get your free API key
Sign up — no credit card. 500 free credits to run on real contacts in your workflow.
Get API keyAdd an HTTP Request node
In your workflow, add an “HTTP Request” node. Method: GET. URL: the endpoint. Authentication: None (pass apiId as query param).
Map inputs, use outputs
Pass identifiers from upstream nodes as query params. The returned JSON is immediately available for filtering, branching, or writing to your destination.
HTTP Request node configuration — n8n
Method: GET
URL: https://gateway.enrich-crm.com/api/ingress/v4/contact
Send Query Params: ON
Query Parameters:
apiId {{ $env.ENRICH_CRM_API_KEY }} ← store in n8n credentials/env
email {{ $json.email }} ← from previous node
firstName {{ $json.first_name }}
lastName {{ $json.last_name }}
companyName {{ $json.company }}
Response Format: JSON (auto-parsed)
→ Access fields via: {{ $json.jobTitle }}, {{ $json.companyHeadcount }}, etc.💡 Tip: store your API key in n8n’s built-in credential store or as an environment variable — never hardcode it in the node.
Endpoints
10 enrichment actions.
One API key.
All REST endpoints. GET method. API key as query param. Works from any n8n node that can make HTTP requests.
Enrich Contact
250+ fields: email, title, seniority, company data
/api/ingress/v4/contactReverse Email
Contact + company profile from any email address
/api/ingress/v4/reverse-emailFind Email
Professional email from name + domain or LinkedIn
/api/ingress/v4/find-emailFirmographic
Headcount, industry, founded, HQ, tech stack
/api/ingress/v4/firmographicFinancial Data
Revenue, funding rounds, investors, ARR estimates
/api/ingress/v4/fundingSIREN Finder
French SIREN number from company name or domain
/api/ingress/v4/siren-company-finderSIRENE Data
Official French registry: NAF, legal form, address
/api/ingress/v4/french-sirenTech Stack
Technologies detected on any company website
/api/ingress/v4/tech-stackWebsite Traffic
Monthly visits, top countries, traffic sources
/api/ingress/v4/website-trafficHomepage Content
Scraped homepage: tagline, description, keywords
/api/ingress/v4/homepage-contentUse cases
Workflows engineers actually ship.
1Real-time enrichment + routing on inbound webhook leads
Workflow structure
email, firstName, lastName, company{{$json.email}}, {{$json.firstName}}seniority IN [C-Level, VP, Director] AND companyHeadcount > 100Fields used for routing
seniorityjobTitlecompanyHeadcountfundingStageindustryhqCountryconfidenceScoreWhy it matters
Enrich and route inbound leads in under a second — before the CRM even creates the record. No SDR time wasted on manual qualification.
n8n node config (HTTP Request)
Method: GET
URL: https://gateway.enrich-crm.com
/api/ingress/v4/contact
Params:
apiId: {{ $env.ENRICH_API_KEY }}
email: {{ $json.email }}
firstName: {{ $json.firstName }}
lastName: {{ $json.lastName }}2Scheduled bulk enrichment from Postgres or Airtable
Workflow structure
SELECT * FROM contacts WHERE enriched_at IS NULL LIMIT 200{{$json.email}} or {{$json.linkedin_url}}enriched_at = NOW()Fields written to DB
job_titlesenioritydepartmentlinkedin_urlcompany_headcountindustryhq_countryfunding_stageconfidence_scoreWhy it matters
No ETL tool needed. n8n reads directly from your database, enriches each row, and writes back — fully idempotent with the enriched_at guard.
SQL query example
SELECT id, email, linkedin_url
FROM contacts
WHERE enriched_at IS NULL
AND email IS NOT NULL
ORDER BY created_at DESC
LIMIT 200;3ICP scoring pipeline: tech stack + firmographic + headcount
Workflow structure
domaindomainFields used for scoring
technologies[]crmcompanyHeadcountindustryfundingStagehqCountryyearFoundedannualRevenueEstimateWhy it matters
Build your own ICP scoring engine — not a black-box vendor score. Full control over the logic, and real-time data on every company in your pipeline.
Code node — scoring logic (JS)
const tech = $('HTTP tech-stack').item.json;
const firm = $('HTTP firmographic').item.json;
let score = 0;
if (tech.crm === 'HubSpot') score += 20;
if (firm.companyHeadcount > 50) score += 15;
if (firm.companyHeadcount > 200) score += 10;
if (firm.fundingStage === 'Series B'
|| firm.fundingStage === 'Series C') score += 15;
if (firm.industry === 'SaaS') score += 10;
return [{ json: { icp_score: score } }];4French KYB — SIREN + SIRENE data for every new client
Workflow structure
companyName{{$json.sirenNumber}}Fields returned
sirenNumbersiretNumbernafCodenafLabellegalFormregisteredAddressheadcountCategoryvatNumbercreationDateWhy it matters
When a French deal closes, legal + finance data flows automatically — no back-and-forth with the client, no manual INPI search. KYB done in seconds.
Example output
sirenNumber: "812345678"
siretNumber: "81234567800012"
nafCode: "6201Z"
legalForm: "SAS"
registeredAddress: "12 rue de Rivoli, 75001 Paris"
vatNumber: "FR12812345678"
headcountCategory: "20 à 49 salariés"
creationDate: "2016-03-14"5Reverse email — identify and enrich every inbound sender
Workflow structure
{{$json.from}} (sender address)seniority IN [C-Level, VP, Director] → priority branchFields returned
firstNamelastNamejobTitlesenioritydepartmentlinkedinUrlcompanyNamecompanyDomaincompanyHeadcountindustryfundingStageWhy it matters
An unknown address emails your sales alias. In milliseconds: you know their title, company size, LinkedIn, and funding stage — and your AE gets a Slack alert with the full context.
n8n node + example output
HTTP Request:
GET /api/ingress/v4/reverse-email
email: {{ $json.from }} → "ceo@newstartup.io"
Returns:
firstName: "Alexandre"
lastName: "Moreau"
jobTitle: "Chief Executive Officer"
seniority: "C-Level"
companyHeadcount: 45
fundingStage: "Seed"
linkedinUrl: "linkedin.com/in/alexandre-moreau"6Tech stack monitoring on a target account list
Workflow structure
{{$json.domain}}Fields returned
technologies[]crmmarketingAutomationecommerceanalyticshostingcmsmainLanguageWhy it matters
A company switching CRM or adopting a new tool is a buying signal. This workflow catches it the week it happens — before your competitor does.
Code node — change detection (JS)
const prev = $('DB lookup').item.json.technologies;
const curr = $('HTTP tech-stack').item.json.technologies;
const added = curr.filter(t => !prev.includes(t));
const removed = prev.filter(t => !curr.includes(t));
if (added.length > 0 || removed.length > 0) {
return [{ json: {
changed: true,
added,
removed,
domain: $json.domain
}}];
}
return [{ json: { changed: false } }];7Pre-call research automation — financial + firmographic brief
Workflow structure
companyNamedomaindomainFields used in brief
fundingStagetotalFundingAmountinvestors[]companyHeadcountindustryyearFoundedcrmtechnologies[]annualRevenueEstimateWhy it matters
Every AE gets a structured brief 1 hour before their discovery call — funding, headcount, tech stack, revenue estimate. No more last-minute Crunchbase scramble.
Slack brief example
📋 Pre-call brief — Acme Corp (acme.io)
⏰ Call in 1 hour with Julie Martin, VP Sales
🏦 Series B · €8M raised (Jan 2024)
Investors: Kima, Alven
💰 Revenue estimate: €2–5M ARR
👥 85 employees · Paris, France
🛠 Stack: HubSpot · Intercom · Segment
→ No enrichment tool detected yet ✅Ready to enrich your n8n workflows?
Start free — 500 credits, no credit card. Your first enriched workflow in under 5 minutes.