Enrich Person Enrichment API
Reverse email lookup returning a person's professional profile.
Reverse email lookup returning a person's professional profile.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/enrich-so-person-enrichment-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Person Enrichment API
description: Enrich (enrich.so) is a person and company data enrichment API.
version: '3.0'
contact:
name: Enrich
url: https://www.enrich.so
termsOfService: https://www.enrich.so/terms
servers:
- url: https://dev.enrich.so/api/v3
description: Enrich API v3
security:
- apiKeyHeader: []
- bearerAuth: []
tags:
- name: Person Enrichment
description: Reverse email lookup returning a person's professional profile.
paths:
/reverse-lookup/lookup:
post:
operationId: lookupProfileByEmail
tags:
- Person Enrichment
summary: Look up a professional profile by email
description: Returns a person's professional profile - name, headline, current company, position history, education, and skills - from an email address. 10 credits per successful lookup; not charged when no profile is found.
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/LookupRequest'
responses:
'200':
description: Professional profile resolved.
content:
application/json:
schema:
$ref: '#/components/schemas/ReverseLookupResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'402':
$ref: '#/components/responses/InsufficientCredits'
'404':
$ref: '#/components/responses/NotFound'
'429':
$ref: '#/components/responses/RateLimited'
/reverse-lookup/batch:
post:
operationId: lookupProfilesBatch
tags:
- Person Enrichment
summary: Look up professional profiles in batch
description: Submits up to many email addresses for asynchronous reverse-email-lookup enrichment, returning a batch id to poll. 10 credits per successful profile.
x-endpoint-modeled: true
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/BatchLookupRequest'
responses:
'202':
description: Batch accepted.
content:
application/json:
schema:
$ref: '#/components/schemas/BatchSubmitResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'402':
$ref: '#/components/responses/InsufficientCredits'
/reverse-lookup/batch/{batchId}:
get:
operationId: getBulkLookupResults
tags:
- Person Enrichment
summary: Check progress and get bulk lookup results
description: Returns the status and, when complete, the enriched profiles for a batch.
x-endpoint-modeled: true
parameters:
- name: batchId
in: path
required: true
schema:
type: string
responses:
'200':
description: Batch status or results.
content:
application/json:
schema:
$ref: '#/components/schemas/BatchStatusResponse'
'404':
$ref: '#/components/responses/NotFound'
components:
schemas:
ReverseLookupResponse:
type: object
properties:
success:
type: boolean
meta:
$ref: '#/components/schemas/EnrichmentMeta'
data:
type: object
properties:
fullName:
type: string
headline:
type: string
company:
type: string
location:
type: string
linkedinUrl:
type: string
positions:
type: array
items:
type: object
education:
type: array
items:
type: object
skills:
type: array
items:
type: string
BatchStatusResponse:
type: object
properties:
success:
type: boolean
data:
type: object
properties:
batchId:
type: string
status:
type: string
results:
type: array
items:
type: object
EnrichmentMeta:
type: object
description: Metadata returned with every response, including remaining credit balance.
properties:
creditsCharged:
type: integer
creditsRemaining:
type: integer
cached:
type: boolean
BatchLookupRequest:
type: object
required:
- emails
properties:
emails:
type: array
items:
type: string
format: email
LookupRequest:
type: object
required:
- email
properties:
email:
type: string
format: email
description: The email address to look up.
ErrorEnvelope:
type: object
properties:
success:
type: boolean
example: false
error:
type: object
properties:
code:
type: string
message:
type: string
BatchSubmitResponse:
type: object
properties:
success:
type: boolean
data:
type: object
properties:
batchId:
type: string
status:
type: string
responses:
RateLimited:
description: Rate limit exceeded. Includes a Retry-After header.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
NotFound:
description: No matching record was found.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
InsufficientCredits:
description: Not enough credits to complete the request.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
Unauthorized:
description: Missing, invalid, or disabled API key.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
securitySchemes:
apiKeyHeader:
type: apiKey
in: header
name: x-api-key
description: API key (prefixed sk_) passed in the x-api-key header.
bearerAuth:
type: http
scheme: bearer
description: API key passed as Authorization Bearer token.