Skip to main content
3 min read

How enrichment works

Ask abm.dev one question. Get one answer back. Enrichment is the work between the two: you hand us a person or a company, we ask ten data sources, and we resolve what they say into a single response — the same engine whether a human or an agent makes the call.

What you send

One enrichment call takes a small JSON body: a type and an input.

JSON
{ "targets": [ { "type": "person", "email": "[email protected]" } ] }

Each target accepts an email, a LinkedIn URL, or a company domain. One identifier is enough. We take it from there.

Note

Send your key as either x-api-key (used here) or Authorization: Bearer on POST https://api.abm.dev/api/v2/enrichments. The full, live contract is at the API reference.
Bash
curl https://api.abm.dev/api/v2/enrichments \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"targets":[{"type":"person","email":"[email protected]"}]}'

What you get

Eighty-nine canonical fields. Forty-three describe the person. Forty-six describe the company. On top of those, forty signals.

The shape never changes. The same fields, named the same way, every time. Your code reads one schema, not ten provider formats.

Every value carries three things:

  • Source — which provider it came from.
  • Confidence — a score from 0 to 1. Higher means more sources agree. We describe agreement, not certainty.
  • selection_reason — why that value was chosen.

A value is either cited or it is not returned. No guesses. No filler. If we can’t source it, you don’t see it.

See Canonical fields for the full schema and Confidence scores for how to read the number.

The ten sources

LinkedIn. Companies House. Perplexity. Tavily. Hunter. And others — ten in all. We query them, reconcile what they return, and hand back one response.

You don’t manage any of this. No per-source bills. No per-field charges. No silent fallbacks. No fabricated facts. One call, one price, one answer. The provider list and how we reconcile it live in Data sources.

How to call it

Three paths. Pick the one that fits how you work.

Agents

Connect the MCP server at https://mcp.abm.dev/mcp. In Claude: Settings → Connectors → Custom → paste the URL. The server exposes abm.dev’s enrichment tools inside your agent. See For agents for the current tool list.

Coding agents (Cursor, Claude Code, Windsurf)

Paste a prompt telling the agent to read https://abm.dev/llms.txt, request a key, save it to .env, run a test enrichment, and report back with citations. The agent wires itself up.

Scripts and terminals

Call the REST API directly, as above. See Getting started.

Real time and batches

For agent loops, results stream in real time over SSE — you see fields as they resolve. For batch jobs, a webhook fires when the run finishes. Two modes, one engine.

What it costs

Per enrichment. No subscription. Credits never expire. All sources included. From about €0.29 per enrichment. Packs:

PackPrice
30€2.89
100€9.29
500€36.99 (best value)
2,000€119.99

The Playground is free. New accounts get launch credits with the code LAUNCHCODES. Full breakdown at pricing.

Next

abm.dev is operated by Foxley Farm Operations Ltd (UK Company No. 16392009), Oakham, United Kingdom. GDPR-compliant.