Data Enrich API Reference
One REST API for company data, verified contacts, and live social presence. Send an identifier, get back a complete, matched profile. Every endpoint is a simple GET or POST with a single header.
Introduction #
Data Enrich gives you two things most tools keep apart: the professional side of a person or company (role, firmographics, verified contact details) and their live social side (audience, engagement, recent content) across 30+ platforms. You can call the unified enrich endpoint to get everything in one response, or call any single endpoint on its own.
Every response is JSON, every request needs one header, and there is no SDK to install. If you prefer, drop the official MCP server or CLI into your stack and your agents can call every endpoint below.
Authentication #
Authenticate every request with your secret key in the x-api-key header. Keep it server side. You can create and roll keys from your dashboard.
# every request carries one header curl https://api.dataenrich.tech/v1/company?domain=northwind.io \ -H "x-api-key: YOUR_KEY"
Requests over plain HTTP are rejected. Always call over HTTPS. A missing or invalid key returns 401 unauthorized.
Quickstart #
Grab a key, then resolve your first profile in one call. This takes one identifier (an email, a company domain, or a social handle) and returns the merged record.
curl -X POST https://api.dataenrich.tech/v1/enrich \ -H "x-api-key: YOUR_KEY" \ -H "content-type: application/json" \ -d '{ "handle": "@jordan.builds" }'
{
"person": { "name": "Jordan Rivera", "title": "Head of Growth" },
"company": { "name": "Northwind Labs" },
"social": { "tiktok": { "followers": 1240000 } },
"match_confidence": 0.97
}
Credits & rate limits #
Usage is metered in credits. Standard endpoints cost 1 credit per call. LinkedIn is the one premium endpoint and bills at a flat rate, separately from your credit balance. Credits never expire, and there are no per-minute rate limits. We ask that you stay under 500 concurrent requests.
| Endpoint group | Rate | Notes |
|---|---|---|
| Standard (company, contact, all social except LinkedIn) | 1 credit / call | Drawn from your plan balance |
| LinkedIn Premium | $0.008 / call | Billed separately, not from credits |
Check your balance any time with GET /v1/credits.
Errors #
Data Enrich uses standard HTTP status codes. Error bodies always include a machine-readable code and a human-readable message.
| Status | Code | Meaning |
|---|---|---|
| 400 | bad_request | Missing or malformed parameter |
| 401 | unauthorized | Missing or invalid API key |
| 402 | insufficient_credits | Top up to continue |
| 404 | not_found | No record for that identifier |
| 429 | too_many_requests | Ease concurrency and retry |
| 5xx | server_error | Safe to retry with backoff |
{
"error": {
"code": "insufficient_credits",
"message": "You have 0 credits left.",
"status": 402
}
}
Pagination #
List endpoints (posts, videos, comments, followers) use cursor pagination. Pass the cursor from the previous response to fetch the next page. When next_cursor is null, you have reached the end.
# fetch the next page of a creator's videos curl "https://api.dataenrich.tech/v1/social/tiktok/profile/videos?handle=@jordan.builds&cursor=eyJ..." \ -H "x-api-key: YOUR_KEY"
Unified enrich #
POST /v1/enrich
The flagship endpoint. Give it one identifier and it resolves the entity, pulls company and contact data, finds the matching social profiles, and returns one merged record with a match confidence score.
Body parameters
| Field | Type | Description | |
|---|---|---|---|
| string | one of | Work or personal email to resolve. | |
| domain | string | one of | Company domain, resolves the company and key people. |
| handle | string | one of | Social handle on any supported platform. |
| include | string[] | Limit the response, for example ["company","social"]. Defaults to all. |
curl -X POST https://api.dataenrich.tech/v1/enrich \ -H "x-api-key: YOUR_KEY" \ -H "content-type: application/json" \ -d '{ "email": "jordan@northwind.io" }'
{
"person": {
"name": "Jordan Rivera",
"title": "Head of Growth",
"seniority": "director",
"location": "Austin, TX"
},
"company": {
"name": "Northwind Labs",
"domain": "northwind.io",
"revenue": "50-100M",
"employees": 240,
"industry": "SaaS"
},
"contact": {
"email": "jordan@northwind.io",
"email_status": "verified",
"phone": "+1-512-555-0134"
},
"social": {
"tiktok": { "handle": "@jordan.builds", "followers": 1240000, "engagement_rate": 0.068 },
"instagram": { "handle": "@jordan.builds", "followers": 486000 },
"youtube": { "subscribers": 92100 }
},
"match_confidence": 0.97,
"credits_used": 1
}
Person #
GET /v1/person
Resolve a single person to their role, seniority, and verified contact details.
| Param | Type | Description | |
|---|---|---|---|
| string | one of | Email to resolve. | |
| linkedin_url | string | one of | Public profile URL. Premium |
| name + company_domain | string | one of | Full name plus the company domain. |
curl "https://api.dataenrich.tech/v1/person?email=jordan@northwind.io" \ -H "x-api-key: YOUR_KEY"
Company #
GET /v1/company
Firmographics for any company: industry, revenue band, headcount, location, and domain.
| Param | Type | Description | |
|---|---|---|---|
| domain | string | one of | Company domain, for example northwind.io. |
| name | string | one of | Company name to resolve. |
curl "https://api.dataenrich.tech/v1/company?domain=northwind.io" \ -H "x-api-key: YOUR_KEY"
{
"name": "Northwind Labs",
"domain": "northwind.io",
"industry": "SaaS",
"revenue": "50-100M",
"employees": 240,
"hq": "Austin, TX",
"founded": 2016
}
Technographics #
GET /v1/company/technographics
The tools and platforms a company runs, from CRM to cloud to analytics.
| Param | Type | Description | |
|---|---|---|---|
| domain | string | required | Company domain to inspect. |
{ "domain": "northwind.io",
"stack": ["HubSpot", "Segment", "AWS", "Snowflake"] }
Activity #
GET /v1/person/activity
A person's recent professional social activity: posts, comments, and reactions, with engagement counts.
| Param | Type | Description | |
|---|---|---|---|
| person_id | string | one of | ID returned by enrich or person. |
| linkedin_url | string | one of | Public profile URL. Premium |
TikTok #
Profiles, videos, transcripts, comments, audience demographics, search, and trends. Base path /v1/social/tiktok.
| Method | Path | Description | Key params |
|---|---|---|---|
| GET | /v1/social/tiktok/profile | Public profile, stats, and bio | handle |
| GET | /v1/social/tiktok/profile/videos | Videos from a profile, paginated | handle, cursor |
| GET | /v1/social/tiktok/video | Single video metadata and stats | video_id | url |
| GET | /v1/social/tiktok/video/transcript | Speech to text for a video | video_id |
| GET | /v1/social/tiktok/video/comments | Comments on a video | video_id, cursor |
| GET | /v1/social/tiktok/video/comment/replies | Replies to a comment | comment_id |
| GET | /v1/social/tiktok/user/followers | A user's followers | handle, cursor |
| GET | /v1/social/tiktok/user/following | Accounts a user follows | handle, cursor |
| GET | /v1/social/tiktok/user/audience | Audience demographics by country | handle |
| GET | /v1/social/tiktok/user/live | Live stream status and info | handle |
| GET | /v1/social/tiktok/search/users | Find users by query | q |
| GET | /v1/social/tiktok/search/keyword | Find videos by keyword | q |
| GET | /v1/social/tiktok/search/hashtag | Videos for a hashtag | hashtag |
| GET | /v1/social/tiktok/trending/creators | Trending creators | country, follower_min |
| GET | /v1/social/tiktok/trending/videos | Trending videos | country, period |
| GET | /v1/social/tiktok/trending/hashtags | Trending hashtags | country, period |
| GET | /v1/social/tiktok/trending/songs | Trending songs | country, period |
| GET | /v1/social/tiktok/song | Song metadata | song_id |
| GET | /v1/social/tiktok/song/videos | Videos using a song | song_id |
curl "https://api.dataenrich.tech/v1/social/tiktok/profile?handle=@jordan.builds" \ -H "x-api-key: YOUR_KEY"
{
"handle": "@jordan.builds",
"nickname": "Jordan Rivera",
"verified": true,
"followers": 1240000,
"following": 812,
"likes": 48200000,
"video_count": 743,
"credits_used": 1
}
Instagram #
Profiles, posts, reels, comments, transcripts, highlights, and search. Base path /v1/social/instagram.
| Method | Path | Description | Key params |
|---|---|---|---|
| GET | /v1/social/instagram/profile | Profile, recent posts, related accounts | handle |
| GET | /v1/social/instagram/profile/basic | Lightweight profile fields | user_id |
| GET | /v1/social/instagram/posts | Public posts, paginated | handle, cursor |
| GET | /v1/social/instagram/post | Single post or reel details | url | shortcode |
| GET | /v1/social/instagram/post/comments | Comments on a post or reel | post_id, cursor |
| GET | /v1/social/instagram/reels | All public reels from a profile | handle, cursor |
| GET | /v1/social/instagram/reels/search | Find reels by keyword | q |
| GET | /v1/social/instagram/media/transcript | Speech to text for a reel or video | media_id |
| GET | /v1/social/instagram/highlights | Story highlight metadata | handle |
| GET | /v1/social/instagram/highlights/detail | Content of a highlight | highlight_id |
| GET | /v1/social/instagram/song/reels | Reels using a song | song_id |
| GET | /v1/social/instagram/embed | HTML embed code for a profile | handle |
YouTube #
Channels, videos, shorts, transcripts, comments, playlists, and search. Base path /v1/social/youtube.
| Method | Path | Description | Key params |
|---|---|---|---|
| GET | /v1/social/youtube/channel | Channel stats and metadata | channel_id | handle |
| GET | /v1/social/youtube/channel/videos | Channel videos, paginated | channel_id, cursor |
| GET | /v1/social/youtube/channel/shorts | Channel short-form videos | channel_id |
| GET | /v1/social/youtube/video | Video details and transcript | video_id | url |
| GET | /v1/social/youtube/video/transcript | Speech to text for a video | video_id |
| GET | /v1/social/youtube/video/comments | Video comments | video_id, cursor |
| GET | /v1/social/youtube/search | Videos, channels, playlists, shorts, lives | q, type |
| GET | /v1/social/youtube/search/hashtag | Content by hashtag | hashtag |
| GET | /v1/social/youtube/shorts/trending | Trending shorts | country |
| GET | /v1/social/youtube/playlist | Videos in a playlist | playlist_id |
| GET | /v1/social/youtube/community-post | Community tab post details | post_id |
X #
Profiles, tweets, transcripts, and communities. Base path /v1/social/x.
| Method | Path | Description | Key params |
|---|---|---|---|
| GET | /v1/social/x/profile | Profile info and stats | handle |
| GET | /v1/social/x/tweets | A user's tweets, paginated | handle, cursor |
| GET | /v1/social/x/tweet | Tweet details with engagement | tweet_id | url |
| GET | /v1/social/x/tweet/transcript | Speech to text for a video tweet | tweet_id |
| GET | /v1/social/x/community | Community details | community_id |
| GET | /v1/social/x/community/tweets | Tweets from a community | community_id |
LinkedIn #
Premium endpoints. LinkedIn calls are billed at a flat $0.008 per call, separately from your credit balance. Every other endpoint in these docs is 1 credit per call.
Public profiles, company pages, and posts. Base path /v1/social/linkedin.
| Method | Path | Description | Rate |
|---|---|---|---|
| GET | /v1/social/linkedin/profile | Public profile with recent posts | $0.008 / call |
| GET | /v1/social/linkedin/company | Company page information | $0.008 / call |
| GET | /v1/social/linkedin/post | Post or article details | $0.008 / call |
Facebook #
Pages, posts, reels, photos, groups, comments, and transcripts. Base path /v1/social/facebook.
| Method | Path | Description | Key params |
|---|---|---|---|
| GET | /v1/social/facebook/profile | Public page or profile info | page_id | url |
| GET | /v1/social/facebook/profile/posts | Public posts, paginated | page_id, cursor |
| GET | /v1/social/facebook/profile/reels | Reels from a page | page_id |
| GET | /v1/social/facebook/profile/photos | Photo albums from a page | page_id |
| GET | /v1/social/facebook/group/posts | Posts from a public group | group_id |
| GET | /v1/social/facebook/post | Post or reel by URL | url |
| GET | /v1/social/facebook/post/comments | Comments on a post or reel | post_id |
| GET | /v1/social/facebook/post/transcript | Speech to text for a video post | post_id |
Reddit #
Subreddits, posts, comments, and search. Base path /v1/social/reddit.
| Method | Path | Description | Key params |
|---|---|---|---|
| GET | /v1/social/reddit/subreddit | Recent posts with metrics | name, cursor |
| GET | /v1/social/reddit/subreddit/details | Subreddit information | name |
| GET | /v1/social/reddit/subreddit/search | Search within a subreddit | name, q |
| GET | /v1/social/reddit/post/comments | Comments on a post | post_id |
| GET | /v1/social/reddit/search | Search Reddit for posts | q |
Threads #
Profiles, posts, and user search. Base path /v1/social/threads.
| Method | Path | Description | Key params |
|---|---|---|---|
| GET | /v1/social/threads/profile | Profile information | handle |
| GET | /v1/social/threads/posts | User posts, paginated | handle, cursor |
| GET | /v1/social/threads/post | Post by URL with comments | url |
| GET | /v1/social/threads/search/users | Find users by username | q |
Bluesky #
Profiles and posts. Base path /v1/social/bluesky.
| Method | Path | Description | Key params |
|---|---|---|---|
| GET | /v1/social/bluesky/profile | Profile information | handle |
| GET | /v1/social/bluesky/posts | User posts, paginated | handle, cursor |
| GET | /v1/social/bluesky/post | Single post details | uri |
Pinterest #
Search, pins, and boards. Base path /v1/social/pinterest.
| Method | Path | Description | Key params |
|---|---|---|---|
| GET | /v1/social/pinterest/search | Search the platform | q |
| GET | /v1/social/pinterest/pin | Pin details | pin_id |
| GET | /v1/social/pinterest/user/boards | A user's boards | username |
| GET | /v1/social/pinterest/board | Pins from a board | board_id |
Twitch, Snapchat, Rumble, Truth Social, Kick, Kwai #
Additional platforms under /v1/social.
| Method | Path | Description | Key params |
|---|---|---|---|
| GET | /v1/social/twitch/profile | Twitch channel information | username |
| GET | /v1/social/twitch/clip | Clip details | clip_id |
| GET | /v1/social/snapchat/profile | Snapchat user profile | username |
| GET | /v1/social/rumble/channel | Rumble channel details | channel_id |
| GET | /v1/social/rumble/channel/videos | Channel videos | channel_id, cursor |
| GET | /v1/social/rumble/video | Video details | video_id | url |
| GET | /v1/social/truthsocial/profile | Truth Social profile | handle |
| GET | /v1/social/truthsocial/user/posts | User posts | handle, cursor |
| GET | /v1/social/truthsocial/post | Post details | post_id |
| GET | /v1/social/kick/clip | Kick clip details | clip_id |
| GET | /v1/social/kwai/profile | Kwai profile information | handle |
| GET | /v1/social/kwai/video | Kwai video details | video_id |
Ads intelligence #
See what any company is running across the major ad libraries. Base path /v1/ads.
LinkedIn ad endpoints are premium at $0.008 per call. Meta, TikTok, Google, and Reddit ad endpoints are 1 credit per call.
| Method | Path | Description | Key params |
|---|---|---|---|
| GET | /v1/ads/meta/search | Search Meta ads by keyword | q |
| GET | /v1/ads/meta/ad | Meta ad details | ad_id |
| GET | /v1/ads/meta/company/ads | All ads a company is running | company_id |
| GET | /v1/ads/meta/company/search | Find advertisers by name | name |
| GET | /v1/ads/tiktok/search | Search the TikTok Ad Library | q |
| GET | /v1/ads/tiktok/ad | TikTok ad details | ad_id |
| GET | /v1/ads/google/advertiser/search | Find advertisers in the transparency center | name |
| GET | /v1/ads/google/company/ads | Ads for an advertiser | advertiser_id |
| GET | /v1/ads/google/ad | Google ad details | ad_id |
| GET | /v1/ads/linkedin/search Premium | Search the LinkedIn Ad Library | q |
| GET | /v1/ads/linkedin/ad Premium | LinkedIn ad details | ad_id |
| GET | /v1/ads/reddit/search | Search the Reddit Ad Library | q |
| GET | /v1/ads/reddit/ad | Reddit ad details | ad_id |
Shops #
Products from creator and social shops. Base path /v1/shop.
| Method | Path | Description | Key params |
|---|---|---|---|
| GET | /v1/shop/tiktok/search | Search TikTok Shop products | q |
| GET | /v1/shop/tiktok/products | Products in a shop | shop_id |
| GET | /v1/shop/tiktok/product | Product info, stock, related videos | product_id |
| GET | /v1/shop/amazon | Products from a creator's Amazon shop | shop_id | url |
Music #
Artists and tracks across the major music platforms. Base path /v1/music.
| Method | Path | Description | Key params |
|---|---|---|---|
| GET | /v1/music/spotify/artist | Artist profile and stats | id |
| GET | /v1/music/spotify/track | Track metadata | id |
| GET | /v1/music/applemusic/artist | Apple Music artist details | id |
| GET | /v1/music/soundcloud/user | SoundCloud user profile | username |
| GET | /v1/music/soundcloud/track | SoundCloud track details | url |
Link-in-bio #
Resolve the links behind a creator's bio page. Base path /v1/linkinbio. Each takes a url.
| Method | Path | Description | Key params |
|---|---|---|---|
| GET | /v1/linkinbio/linktree | Links from a Linktree page | url |
| GET | /v1/linkinbio/komi | Links from a Komi page | url |
| GET | /v1/linkinbio/pillar | Links from a Pillar page | url |
| GET | /v1/linkinbio/linkbio | Links from a Linkbio page | url |
| GET | /v1/linkinbio/linkme | Links from a Linkme page | url |
Search, GitHub, tools #
Supporting endpoints for search, developer profiles, image analysis, and account usage.
| Method | Path | Description | Key params |
|---|---|---|---|
| GET | /v1/search/google | Google search results | q |
| GET | /v1/github/user | GitHub user profile and stats | username |
| GET | /v1/github/repo | Repository details | owner, repo |
| POST | /v1/utils/age-gender | Estimate age and gender from a profile image | image_url |
| GET | /v1/credits | Your remaining credit balance | none |