Data Enrich API v1 Docs

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.

Base URL https://api.dataenrich.tech Auth x-api-key Format JSON 130+ endpoints

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"
i

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.

Request
curl -X POST https://api.dataenrich.tech/v1/enrich \
  -H "x-api-key: YOUR_KEY" \
  -H "content-type: application/json" \
  -d '{ "handle": "@jordan.builds" }'
Response
{
  "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 groupRateNotes
Standard (company, contact, all social except LinkedIn)1 credit / callDrawn from your plan balance
LinkedIn Premium$0.008 / callBilled 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.

StatusCodeMeaning
400bad_requestMissing or malformed parameter
401unauthorizedMissing or invalid API key
402insufficient_creditsTop up to continue
404not_foundNo record for that identifier
429too_many_requestsEase concurrency and retry
5xxserver_errorSafe to retry with backoff
Example error
{
  "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

FieldTypeDescription
emailstringone ofWork or personal email to resolve.
domainstringone ofCompany domain, resolves the company and key people.
handlestringone ofSocial handle on any supported platform.
includestring[]Limit the response, for example ["company","social"]. Defaults to all.
Request
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" }'
Response
{
  "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.

ParamTypeDescription
emailstringone ofEmail to resolve.
linkedin_urlstringone ofPublic profile URL. Premium
name + company_domainstringone ofFull name plus the company domain.
Request
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.

ParamTypeDescription
domainstringone ofCompany domain, for example northwind.io.
namestringone ofCompany name to resolve.
Request
curl "https://api.dataenrich.tech/v1/company?domain=northwind.io" \
  -H "x-api-key: YOUR_KEY"
Response
{
  "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.

ParamTypeDescription
domainstringrequiredCompany domain to inspect.
Response
{ "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.

ParamTypeDescription
person_idstringone ofID returned by enrich or person.
linkedin_urlstringone ofPublic profile URL. Premium

TikTok #

Profiles, videos, transcripts, comments, audience demographics, search, and trends. Base path /v1/social/tiktok.

MethodPathDescriptionKey params
GET/v1/social/tiktok/profilePublic profile, stats, and biohandle
GET/v1/social/tiktok/profile/videosVideos from a profile, paginatedhandle, cursor
GET/v1/social/tiktok/videoSingle video metadata and statsvideo_id | url
GET/v1/social/tiktok/video/transcriptSpeech to text for a videovideo_id
GET/v1/social/tiktok/video/commentsComments on a videovideo_id, cursor
GET/v1/social/tiktok/video/comment/repliesReplies to a commentcomment_id
GET/v1/social/tiktok/user/followersA user's followershandle, cursor
GET/v1/social/tiktok/user/followingAccounts a user followshandle, cursor
GET/v1/social/tiktok/user/audienceAudience demographics by countryhandle
GET/v1/social/tiktok/user/liveLive stream status and infohandle
GET/v1/social/tiktok/search/usersFind users by queryq
GET/v1/social/tiktok/search/keywordFind videos by keywordq
GET/v1/social/tiktok/search/hashtagVideos for a hashtaghashtag
GET/v1/social/tiktok/trending/creatorsTrending creatorscountry, follower_min
GET/v1/social/tiktok/trending/videosTrending videoscountry, period
GET/v1/social/tiktok/trending/hashtagsTrending hashtagscountry, period
GET/v1/social/tiktok/trending/songsTrending songscountry, period
GET/v1/social/tiktok/songSong metadatasong_id
GET/v1/social/tiktok/song/videosVideos using a songsong_id
Request
curl "https://api.dataenrich.tech/v1/social/tiktok/profile?handle=@jordan.builds" \
  -H "x-api-key: YOUR_KEY"
Response
{
  "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.

MethodPathDescriptionKey params
GET/v1/social/instagram/profileProfile, recent posts, related accountshandle
GET/v1/social/instagram/profile/basicLightweight profile fieldsuser_id
GET/v1/social/instagram/postsPublic posts, paginatedhandle, cursor
GET/v1/social/instagram/postSingle post or reel detailsurl | shortcode
GET/v1/social/instagram/post/commentsComments on a post or reelpost_id, cursor
GET/v1/social/instagram/reelsAll public reels from a profilehandle, cursor
GET/v1/social/instagram/reels/searchFind reels by keywordq
GET/v1/social/instagram/media/transcriptSpeech to text for a reel or videomedia_id
GET/v1/social/instagram/highlightsStory highlight metadatahandle
GET/v1/social/instagram/highlights/detailContent of a highlighthighlight_id
GET/v1/social/instagram/song/reelsReels using a songsong_id
GET/v1/social/instagram/embedHTML embed code for a profilehandle

YouTube #

Channels, videos, shorts, transcripts, comments, playlists, and search. Base path /v1/social/youtube.

MethodPathDescriptionKey params
GET/v1/social/youtube/channelChannel stats and metadatachannel_id | handle
GET/v1/social/youtube/channel/videosChannel videos, paginatedchannel_id, cursor
GET/v1/social/youtube/channel/shortsChannel short-form videoschannel_id
GET/v1/social/youtube/videoVideo details and transcriptvideo_id | url
GET/v1/social/youtube/video/transcriptSpeech to text for a videovideo_id
GET/v1/social/youtube/video/commentsVideo commentsvideo_id, cursor
GET/v1/social/youtube/searchVideos, channels, playlists, shorts, livesq, type
GET/v1/social/youtube/search/hashtagContent by hashtaghashtag
GET/v1/social/youtube/shorts/trendingTrending shortscountry
GET/v1/social/youtube/playlistVideos in a playlistplaylist_id
GET/v1/social/youtube/community-postCommunity tab post detailspost_id

X #

Profiles, tweets, transcripts, and communities. Base path /v1/social/x.

MethodPathDescriptionKey params
GET/v1/social/x/profileProfile info and statshandle
GET/v1/social/x/tweetsA user's tweets, paginatedhandle, cursor
GET/v1/social/x/tweetTweet details with engagementtweet_id | url
GET/v1/social/x/tweet/transcriptSpeech to text for a video tweettweet_id
GET/v1/social/x/communityCommunity detailscommunity_id
GET/v1/social/x/community/tweetsTweets from a communitycommunity_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.

MethodPathDescriptionRate
GET/v1/social/linkedin/profilePublic profile with recent posts$0.008 / call
GET/v1/social/linkedin/companyCompany page information$0.008 / call
GET/v1/social/linkedin/postPost or article details$0.008 / call

Facebook #

Pages, posts, reels, photos, groups, comments, and transcripts. Base path /v1/social/facebook.

MethodPathDescriptionKey params
GET/v1/social/facebook/profilePublic page or profile infopage_id | url
GET/v1/social/facebook/profile/postsPublic posts, paginatedpage_id, cursor
GET/v1/social/facebook/profile/reelsReels from a pagepage_id
GET/v1/social/facebook/profile/photosPhoto albums from a pagepage_id
GET/v1/social/facebook/group/postsPosts from a public groupgroup_id
GET/v1/social/facebook/postPost or reel by URLurl
GET/v1/social/facebook/post/commentsComments on a post or reelpost_id
GET/v1/social/facebook/post/transcriptSpeech to text for a video postpost_id

Reddit #

Subreddits, posts, comments, and search. Base path /v1/social/reddit.

MethodPathDescriptionKey params
GET/v1/social/reddit/subredditRecent posts with metricsname, cursor
GET/v1/social/reddit/subreddit/detailsSubreddit informationname
GET/v1/social/reddit/subreddit/searchSearch within a subredditname, q
GET/v1/social/reddit/post/commentsComments on a postpost_id
GET/v1/social/reddit/searchSearch Reddit for postsq

Threads #

Profiles, posts, and user search. Base path /v1/social/threads.

MethodPathDescriptionKey params
GET/v1/social/threads/profileProfile informationhandle
GET/v1/social/threads/postsUser posts, paginatedhandle, cursor
GET/v1/social/threads/postPost by URL with commentsurl
GET/v1/social/threads/search/usersFind users by usernameq

Bluesky #

Profiles and posts. Base path /v1/social/bluesky.

MethodPathDescriptionKey params
GET/v1/social/bluesky/profileProfile informationhandle
GET/v1/social/bluesky/postsUser posts, paginatedhandle, cursor
GET/v1/social/bluesky/postSingle post detailsuri

Pinterest #

Search, pins, and boards. Base path /v1/social/pinterest.

MethodPathDescriptionKey params
GET/v1/social/pinterest/searchSearch the platformq
GET/v1/social/pinterest/pinPin detailspin_id
GET/v1/social/pinterest/user/boardsA user's boardsusername
GET/v1/social/pinterest/boardPins from a boardboard_id

Twitch, Snapchat, Rumble, Truth Social, Kick, Kwai #

Additional platforms under /v1/social.

MethodPathDescriptionKey params
GET/v1/social/twitch/profileTwitch channel informationusername
GET/v1/social/twitch/clipClip detailsclip_id
GET/v1/social/snapchat/profileSnapchat user profileusername
GET/v1/social/rumble/channelRumble channel detailschannel_id
GET/v1/social/rumble/channel/videosChannel videoschannel_id, cursor
GET/v1/social/rumble/videoVideo detailsvideo_id | url
GET/v1/social/truthsocial/profileTruth Social profilehandle
GET/v1/social/truthsocial/user/postsUser postshandle, cursor
GET/v1/social/truthsocial/postPost detailspost_id
GET/v1/social/kick/clipKick clip detailsclip_id
GET/v1/social/kwai/profileKwai profile informationhandle
GET/v1/social/kwai/videoKwai video detailsvideo_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.

MethodPathDescriptionKey params
GET/v1/ads/meta/searchSearch Meta ads by keywordq
GET/v1/ads/meta/adMeta ad detailsad_id
GET/v1/ads/meta/company/adsAll ads a company is runningcompany_id
GET/v1/ads/meta/company/searchFind advertisers by namename
GET/v1/ads/tiktok/searchSearch the TikTok Ad Libraryq
GET/v1/ads/tiktok/adTikTok ad detailsad_id
GET/v1/ads/google/advertiser/searchFind advertisers in the transparency centername
GET/v1/ads/google/company/adsAds for an advertiseradvertiser_id
GET/v1/ads/google/adGoogle ad detailsad_id
GET/v1/ads/linkedin/search PremiumSearch the LinkedIn Ad Libraryq
GET/v1/ads/linkedin/ad PremiumLinkedIn ad detailsad_id
GET/v1/ads/reddit/searchSearch the Reddit Ad Libraryq
GET/v1/ads/reddit/adReddit ad detailsad_id

Shops #

Products from creator and social shops. Base path /v1/shop.

MethodPathDescriptionKey params
GET/v1/shop/tiktok/searchSearch TikTok Shop productsq
GET/v1/shop/tiktok/productsProducts in a shopshop_id
GET/v1/shop/tiktok/productProduct info, stock, related videosproduct_id
GET/v1/shop/amazonProducts from a creator's Amazon shopshop_id | url

Music #

Artists and tracks across the major music platforms. Base path /v1/music.

MethodPathDescriptionKey params
GET/v1/music/spotify/artistArtist profile and statsid
GET/v1/music/spotify/trackTrack metadataid
GET/v1/music/applemusic/artistApple Music artist detailsid
GET/v1/music/soundcloud/userSoundCloud user profileusername
GET/v1/music/soundcloud/trackSoundCloud track detailsurl

Link-in-bio #

Resolve the links behind a creator's bio page. Base path /v1/linkinbio. Each takes a url.

MethodPathDescriptionKey params
GET/v1/linkinbio/linktreeLinks from a Linktree pageurl
GET/v1/linkinbio/komiLinks from a Komi pageurl
GET/v1/linkinbio/pillarLinks from a Pillar pageurl
GET/v1/linkinbio/linkbioLinks from a Linkbio pageurl
GET/v1/linkinbio/linkmeLinks from a Linkme pageurl

Search, GitHub, tools #

Supporting endpoints for search, developer profiles, image analysis, and account usage.

MethodPathDescriptionKey params
GET/v1/search/googleGoogle search resultsq
GET/v1/github/userGitHub user profile and statsusername
GET/v1/github/repoRepository detailsowner, repo
POST/v1/utils/age-genderEstimate age and gender from a profile imageimage_url
GET/v1/creditsYour remaining credit balancenone
No endpoints match your filter.