Recetas
Enriquecimiento de leads
Enriquece leads del CRM desde sitios web de empresas con extracción estructurada
Dada una lista de URLs de empresas (de tu CRM, formulario de registro o carga manual), obtén datos firmográficos estructurados — industria, número de empleados, tech stack, canales de contacto — y escríbelos de vuelta en el registro del lead.
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"]
}Implementación
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()Cuando el Webhook se dispare, une results[].url con los IDs de tus leads y escribe los campos estructurados en tu CRM.
Consejos
- Mantén
requiredmínimo — muchos sitios de empresas pequeñas no tendrán todos los campos - Añade una pasada "best-effort": si falta
contactEmail, también haz Distill de la página/contact - Cachea por dominio — re-enriquecer el mismo dominio mensualmente suele ser suficiente
Relacionado
Esta receta se está ampliando con patrones de integración con CRM (HubSpot / Salesforce) — vuelve pronto.