canonical: https://jentic.com/apis/fullenrich.com/fullenrich

# FullEnrich API

Jentic publishes the only available OpenAPI specification for FullEnrich API, keeping it validated and agent-ready. FullEnrich is a B2B contact-enrichment service that aggregates 20+ providers to maximise email, phone, and firmographic match rates. The API exposes 8 endpoints covering bulk contact enrichment, reverse email lookup, people and company search, account credit checks, and key verification. Bulk jobs are asynchronous: callers submit a batch and poll the enrichment ID for results. Authentication uses bearer tokens.

## For AI agents

Enrich B2B contacts with email and phone, reverse-lookup an email to a person, and search people or companies across 20+ providers.

## Scope

Does not handle email sending, ad targeting, or CRM record sync - use for B2B contact enrichment, reverse email lookup, and people or company search only.

## Capabilities

- Submit bulk contact enrichment jobs spanning 20+ underlying providers
- Poll a bulk enrichment job by ID until results are ready
- Reverse-lookup an email to identify the person behind it
- Search for people matching name, role, or company filters
- Search for companies matching firmographic filters
- Check the credits remaining on the FullEnrich account
- Verify that an API key is valid before issuing enrichment jobs

## Use cases

### Bulk Lead Enrichment

Sales operations teams upload a list of LinkedIn URLs or names plus companies and need verified work emails for outbound. POST `/contact/enrich/bulk` submits the batch and returns an enrichment_id; GET `/contact/enrich/bulk/{enrichment_id}` returns the matched records once the underlying providers have responded. FullEnrich's waterfall typically lifts match rates over single-provider tools.

Example prompt: Submit a bulk enrichment job with 100 LinkedIn URLs and poll the enrichment_id every 30 seconds until complete

### Reverse Email Lookup

Given only an email captured in a webform or a calendar invite, POST `/contact/reverse/email/bulk` identifies the person, their employer, and verified contact channels. GET `/contact/reverse/email/bulk/{enrichment_id}` returns the resolved profile. Useful for lead routing inside a CRM when only the email is known.

Example prompt: Submit a reverse-email job for sales@example.com and retrieve the resolved name, role, and company

### Targeted People Search

Marketing and sales teams build target lists by attributes rather than starting from a known contact. POST `/people/search` returns matching profiles for queries such as job title, seniority, and company size. The results can be fed back into bulk enrichment to verify the email and phone before outreach.

Example prompt: Search FullEnrich for VPs of Engineering at SaaS companies with 100-500 employees in the United States

### Account Credit and Key Health

Before launching a large enrichment job, an operations script calls GET `/account/credits` to confirm sufficient credits and GET `/account/keys/verify` to confirm the API key is active. This avoids partial-batch failures and surfaces low-credit conditions to the team in advance.

Example prompt: Call GET `/account/credits` and alert if credits remaining is below 1000

### Agent-Driven Lead Workflow

An AI agent inside a sales workflow takes a list of LinkedIn URLs from a chat prompt, kicks off a bulk enrichment, polls for results, and writes the verified emails into a downstream CRM. Through Jentic the bearer token is vaulted and the agent only sees scoped enrichment results.

Example prompt: Search Jentic for 'enrich a list of contacts', load POST `/contact/enrich/bulk`, execute with 50 rows, and poll GET `/contact/enrich/bulk/{enrichment_id}`

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | `/contact/enrich/bulk` | Submit a bulk contact enrichment job |
| GET | `/contact/enrich/bulk/{enrichment_id}` | Retrieve results for a bulk enrichment job |
| POST | `/contact/reverse/email/bulk` | Submit a reverse email lookup job |
| GET | `/contact/reverse/email/bulk/{enrichment_id}` | Retrieve reverse-email results |
| POST | `/people/search` | Search for people by filters |
| POST | `/company/search` | Search for companies by firmographics |
| GET | `/account/credits` | Check remaining account credits |

## Key resources

- **Bulk Contact Enrichment** — Submit and retrieve asynchronous contact enrichment jobs
- **Reverse Email Lookup** — Resolve a person from an email address in bulk
- **People Search** — Search profiles by title, seniority, and company filters
- **Company Search** — Search companies by firmographic filters
- **Account** — Check credit balance and verify API key validity

## Why Jentic

- **Setup:** Wiring FullEnrich by hand means passing your API key as a bearer token in the Authorization header on api.fullenrich.com, submitting a bulk enrichment job, then polling the enrichment id for results yourself. Through Jentic you install once, import FullEnrich from the API Directory, store the token once, and your agent calls it.
- **Permission scoping:** FullEnrich submits batches through the request body and returns results by enrichment id in the path, so you limit the agent to the operations it needs, such as enriching a contact batch or a reverse-email lookup. You choose which operations it may call, and nothing outside that set runs.
- **Credential handling:** Your FullEnrich token is stored once, encrypted, by your own Jentic One instance and injected into the Authorization header at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'enrich a list of contacts' or 'find the person behind an email', and Jentic returns the matching POST `/contact/enrich/bulk` or POST `/contact/reverse/email/bulk` operation with its input schema so the agent submits the right batch shape without reading the reference docs.

## Related APIs

- **Clearbit** — Single-source firmographic and contact enrichment provider
- **Apollo** — B2B database with built-in sales engagement
- **Hunter** — Email finder and verifier focused on domain-based search
- **People Data Labs** — Bulk person and company datasets via API

## FAQ

### Why is there no official OpenAPI spec for FullEnrich API?

FullEnrich does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call FullEnrich API via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the FullEnrich API use?

FullEnrich uses bearer-token authentication. The token is generated in the FullEnrich dashboard and presented as Authorization: Bearer <token>. Jentic stores the bearer token encrypted in your Jentic One instance and injects it at execution time.

### Can I run reverse email lookups in bulk through FullEnrich?

Yes. POST `/contact/reverse/email/bulk` submits a batch of emails for resolution and returns an enrichment_id. Poll GET `/contact/reverse/email/bulk/{enrichment_id}` to retrieve the resolved person, role, and company.

### What are the rate limits for the FullEnrich API?

FullEnrich rate-limits per account, with bulk operations consuming credits rather than synchronous request quota. Keep concurrent jobs low and rely on the asynchronous bulk pattern for large lists; do not poll a single enrichment_id more often than every 15-30 seconds.

### How do I check my account credits through Jentic?

Search Jentic for 'check fullenrich credits', load the GET `/account/credits` schema, and execute. The response returns the credit balance so an operations agent can alert before a large bulk job begins.

### Is the FullEnrich API free?

FullEnrich operates on a paid credit model. Each enriched record consumes credits regardless of which underlying provider supplied the match. There is typically a free trial credit allotment for new accounts.

### Can I limit what my agent is allowed to do with the FullEnrich API?

Yes. Jentic One is self-hosted, so your own rules decide which FullEnrich operations and credentials the agent may use. You can allow it only the operations it needs, such as submitting a bulk contact enrichment job with POST `/contact/enrich/bulk` and polling GET `/contact/enrich/bulk/{enrichment_id}`, or running a reverse-email lookup, while blocking people search, company search, and account credit checks. Anything outside the set you permit never runs.
