Enrichment

Enrich contacts from research documents or use the synchronous Clay-optimized endpoint.

POST /v1/enrich

Enrich contacts for an existing research document. Optionally filter by job titles.

Request body

{
  "document_id": 15,
  "titles": ["VP Engineering", "CTO"]
}

Response

{
  "object": "enrichment",
  "contacts": [
    {
      "name": "Jane Smith",
      "title": "VP Engineering",
      "email": "[email protected]",
      "linkedin_url": "https://linkedin.com/in/janesmith"
    }
  ],
  "cached": false
}
POST /v1/clay/enrich

Synchronous enrichment endpoint optimized for Clay HTTP columns. Runs the full research pipeline and returns a flat response. Includes 24-hour caching. Rate limited to 5 requests per 60 seconds.

Important: Set your Clay HTTP column timeout to 120 seconds. Research typically completes in 30-60 seconds.

Request body

{ "company_url": "{{/Company Website}}" }

Response

{
  "object": "clay_enrichment",
  "company_name": "Acme Corp",
  "company_url": "https://acme.com",
  "pain_score": 87,
  "fit_score": 75,
  "timing_score": 82,
  "composite_score": 82,
  "score_summary": "Strong pain signals...",
  "pain_reasons": "PostgreSQL scaling + 4mo backend role...",
  "business_problems": "...",
  "product_fit": "...",
  "talking_points": "...",
  "pain_category_security": 72,
  "pain_category_engineering": 87,
  "pain_category_operations": 60,
  "pain_category_marketing": null,
  "pain_category_data": null,
  "top_pain_signal": "Database Scaling Pressure",
  "document_id": 1523,
  "cached": false,
  "research_duration_seconds": 47.32
}

Field mapping for Clay

FieldDescription
pain_scorePain score (0-100)
composite_scoreOverall opportunity score (0-100)
fit_scoreICP fit score (0-100)
timing_scoreBuying timing score (0-100)
score_summaryOne-line score explanation
pain_reasonsKey pain signals identified
talking_pointsReady-to-use talking points
top_pain_signalTitle of highest-confidence pain signal
document_idDocument ID (for sequence endpoint)