Recepten

Lead Enrichment

Verrijk CRM-leads vanuit bedrijfswebsites met gestructureerde extractie

Gegeven een lijst met bedrijfs-URLs (uit je CRM, aanmeldformulier of handmatige upload), trek gestructureerde firmografische data — branche, aantal medewerkers, tech stack, contactkanalen — en schrijf deze terug naar het lead-record.

Schema

{
  "type": "object",
  "properties": {
    "companyName":   { "type": "string" },
    "industry":      { "type": "string", "description": "Primary industry from the homepage / about page" },
    "employeeCount": { "type": "string", "description": "Headcount band, e.g. '11-50'" },
    "headquarters":  { "type": "string", "description": "City, country" },
    "contactEmail":  { "type": "string" },
    "linkedinUrl":   { "type": "string" }
  },
  "required": ["companyName"]
}

Implementatie

import httpx

API = "https://openapi.thunderbit.com/openapi/v1"
H = {"Authorization": "Bearer YOUR_API_KEY"}

leads = [
    {"id": "lead_1", "url": "https://acme.com"},
    {"id": "lead_2", "url": "https://stripe.com"},
]

job = httpx.post(f"{API}/batch/extract",
                 headers=H,
                 json={"urls": [l["url"] for l in leads],
                       "schema": SCHEMA,
                       "webhook": {"url": "https://your-server.com/webhook/leads",
                                   "secret": "whsec_..."}}).json()

Wanneer de Webhook afgaat, koppel je results[].url terug aan je lead-IDs en schrijf je de gestructureerde velden naar je CRM.

Tips

  • Houd required minimaal — veel sites van kleine bedrijven hebben niet elk veld
  • Voeg een "best-effort"-pass toe: als contactEmail ontbreekt, distill dan ook de /contact-pagina
  • Cache op domein — hetzelfde domein maandelijks opnieuw verrijken is meestal genoeg

Gerelateerd

Dit recept wordt uitgebreid met CRM-integratiepatronen (HubSpot / Salesforce) — kom binnenkort terug.