Skip to content

REST API for Contact and Company Enrichment

Enrich contacts and companies in real time via authenticated REST endpoints. The waterfall engine cascades through oGraph cache, ReverseContact, TrestleIQ, Apollo, and PDL to maximize match rates. 1 credit per hit. Cache hits are free. BYOK headers supported on every call.

Endpoint Catalog

All endpoints authenticated via api-key header. 1 credit per successful hit.

4 Endpoints

Contact Enrichment

POST /v2.1/contact/enrich for batch (up to 100 contacts). POST /v2/contact/enrich/email for single contact by email. POST /v2/contact/match/single for lookup. POST /v1/contact/champion-tracking for job-change detection.

3 Endpoints

Company Enrichment

POST /v1/company/enrich for firmographic data by domain or name. POST /v2/company/match/single for company matching. POST /v2/company/enrich-by-id/single to expand by DID. Waterfall: Apollo for domain lookup, oGraph fallback.

3 Endpoints

Identity and Research

POST /v2/identity/resolve to get Universal DID and Golden Record DID. POST /v1/research for free web research via Firecrawl, Exa, and Tavily. GET /v1/credits for balance and plan info. Research endpoints consume zero credits.

2 Endpoints

File and Batch

POST /v1/enrich/file for CSV upload enrichment, up to 500 rows per file. POST /v2/contact/enrich-by-id/single to expand existing records by Universal DID. All batch operations support BYOK headers for custom provider routing.

Waterfall Enrichment Flow

Every enrichment request follows the same flow: authenticate via API key, check Redis rate limits per tenant, build the provider waterfall from config plus any BYOK headers, then cascade through providers in priority order. On hit: deduct 1 credit, async upsert to oGraph, return enriched data. On miss: try the next provider or return empty. The oGraph cache is always checked first, so repeated lookups are free.
oGraph First1 Credit Per HitAsync Upsert
See Enrichment Capabilities
Media placeholder

Predictable Credit-Based Pricing

Every enrichment call costs 1 credit per successful hit, regardless of how many providers are queried in the waterfall. If the engine tries five providers to find a match, you still pay 1 credit. Cache hits from the oGraph are free. Failed lookups that return no data consume zero credits. Web research via Firecrawl, Exa, and Tavily is always free.
1 Credit Per HitCache Hits FreeResearch Is Free
See Pricing
Media placeholder

API Enrichment FAQ

Contact enrichment returns emails, phone numbers, job titles, seniority, LinkedIn URLs, and social profiles. Company enrichment returns firmographics, employee count, revenue, industry, tech stack, and funding data. Identity resolution returns Universal DIDs and Golden Record DIDs.
The default contact waterfall is: oGraph cache (free), ReverseContact (LinkedIn URL to profile), TrestleIQ (email and phone to contact data), Apollo (LinkedIn and email via /v1/people/match, BYOK supported), PDL (min_likelihood=6 filter, BYOK supported). You can customize the order via the X-Waterfall-Order header.
No. Credits are only consumed when the API returns enrichment data. If no provider in the waterfall returns a match, no credit is charged.
Yes. Pass X-Apollo-Api-Key or X-PDL-Api-Key headers on any enrichment request. OneSource orchestrates the waterfall using your keys. Customize provider priority with X-Waterfall-Order.
Rate limits are enforced per tenant via Redis. Free tier: 10 requests/minute, 100/hour, 2 concurrent, 500 daily. Starter: 60/min, 1,000/hour, 10 concurrent, 10,000 daily. Professional: 300/min, 10,000/hour, 50 concurrent, 100,000 daily.

Start Building with the Enrichment API

Get your API key and POST to /v2.1/contact/enrich to enrich your first contact. 1 credit per hit. Cache hits are free.