Social Profile Intelligence API
Pricing
Pay per event
Social Profile Intelligence API
Extract normalized public profile data from Instagram, TikTok, X, LinkedIn, Facebook, and YouTube. Get names, bios, audience metrics, profile images, public contact links, and recent posts for lead enrichment, research, monitoring, and AI workflows.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Michael
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Collect normalized public profile metadata from Instagram, TikTok, X, LinkedIn, Facebook, and YouTube.
The Actor accepts one or more public profile URLs and returns one predictable JSON record for every submitted URL. It is designed for API integrations, lead-enrichment workflows, monitoring, and AI agents.
This is an unofficial tool and is not affiliated with, endorsed by, or sponsored by Instagram, Meta, TikTok, X, LinkedIn, Google, or YouTube.
Features
- Supports multiple social platforms
- Processes up to 100 profile URLs per run
- Normalizes platform-specific data into one output format
- Extracts follower, following, and post counts when publicly available
- Returns public profile images and external links when available
- Attempts to collect recent public posts
- Returns structured partial and failed results
- Supports Apify residential and custom proxies
- Produces JSON, JSONL, CSV, Excel, XML, and HTML exports
Supported platforms
- TikTok
- X/Twitter
- YouTube
- Other public profile pages with compatible metadata
Support is best-effort because platforms frequently change their public pages and access restrictions.
Input
profileUrls
Required array of public profile URLs.
{"profileUrls": ["https://www.instagram.com/natgeo/","https://www.youtube.com/@NationalGeographic"]}
Maximum: 100 unique URLs per run.
includeRecentPosts
Attempt to collect recent publicly visible posts.
Default: true
Recent posts may be unavailable when a platform requires authentication or does not include post links in its public page markup.
maxPostsPerProfile
Maximum recent posts returned for each profile.
Default: 5
Minimum: 0
Maximum: 20
includeContactLinks
Extract publicly displayed external websites, email links, and contact links.
Default: true
The Actor does not infer, purchase, or obtain private contact information.
failOnError
Control batch error handling.
false: return a structured failure record and continue processing.true: stop when a profile cannot be processed.
Default: false
proxyConfiguration
Proxy settings used to access public pages.
For protected platforms such as Instagram, residential proxies are strongly recommended:
{"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}
Residential proxy traffic is billed separately according to your Apify plan.
Complete input example
{"profileUrls": ["https://www.instagram.com/natgeo/"],"includeRecentPosts": true,"maxPostsPerProfile": 5,"includeContactLinks": true,"failOnError": false,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}
Output
Every submitted URL produces exactly one dataset item.
Important fields include:
| Field | Description |
|---|---|
inputIndex | Position of the URL in the input array |
requestUrl | Original submitted URL |
canonicalUrl | Normalized or redirected profile URL |
platform | Detected social platform |
status | success, partial, or failed |
profileType | Best-effort profile classification |
handle | Public username without @ |
displayName | Public profile name |
bio | Public biography or description |
avatarUrl | Public profile-image URL |
isVerified | Verification state when available |
followersCount | Public follower or subscriber count |
followingCount | Public following count |
postsCount | Public post or upload count |
websiteUrl | Primary public external website |
contactLinks | Publicly displayed external links |
recentPosts | Best-effort recent public posts |
error | Explanation for partial or failed results |
collectedAt | UTC collection time |
Example result
{"inputIndex": 0,"requestUrl": "https://www.instagram.com/natgeo/","canonicalUrl": "https://www.instagram.com/natgeo/","platform": "instagram","status": "success","profileType": "unknown","handle": "natgeo","displayName": "National Geographic","bio": "269M Followers, 195 Following, 32K Posts","avatarUrl": "https://example-cdn.com/avatar.jpg","category": null,"isVerified": null,"followersCount": 269000000,"followingCount": 195,"postsCount": 32000,"websiteUrl": null,"contactLinks": [],"recentPosts": [],"error": null,"collectedAt": "2026-07-26T17:30:52.156Z"}
Status values
success
The profile loaded and useful public metadata was collected.
partial
The profile returned limited metadata, a login page, or an access challenge. Fields that could still be collected are included.
failed
The profile could not be loaded. The error field explains why.
When failOnError is disabled, a failed profile does not prevent other URLs in the batch from being processed.
Run through the API
Set your personal Apify API token:
$export APIFY_TOKEN="YOUR_APIFY_TOKEN"
Call the Actor synchronously:
curl --fail-with-body \--request POST \"https://api.apify.com/v2/actors/refreshing_pail~social-profile-intelligence/run-sync-get-dataset-items?clean=true" \--header "Authorization: Bearer ${APIFY_TOKEN}" \--header "Content-Type: application/json" \--data '{"profileUrls": ["https://www.instagram.com/natgeo/"],"includeRecentPosts": true,"maxPostsPerProfile": 5,"includeContactLinks": true,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}' | jq .
For large batches or runs lasting longer than five minutes, use the asynchronous Actor run endpoint instead.
Data availability
The Actor only collects information made publicly available by the target platform.
Some fields may be null or empty because:
- The platform does not expose the field publicly.
- Authentication is required.
- The profile is private, restricted, deleted, or unavailable.
- The platform returned an access challenge.
- Public page markup changed.
- Recent posts were not present in the anonymous page response.
An empty value does not necessarily mean the underlying profile has no value for that field.
Proxy considerations
Social platforms commonly block cloud and datacenter IP addresses. Residential proxies generally provide better reliability but incur traffic costs.
The Actor blocks unnecessary media and font requests where possible to reduce bandwidth. Proxy success is not guaranteed because target platforms continuously change their anti-automation systems.
Responsible use
Use this Actor only for lawful purposes and public information.
You are responsible for:
- Following applicable privacy and data-protection laws
- Respecting website terms and access restrictions
- Avoiding excessive request rates
- Securing exported data
- Obtaining any consent required for your use case
- Avoiding spam, harassment, surveillance, or discriminatory profiling
Do not use this Actor to access private accounts, bypass authentication, or collect sensitive personal information.
Support
If a supported platform stops returning expected fields:
- Confirm that the profile is publicly accessible.
- Retry with residential proxies.
- Review the result’s
statusanderrorfields. - Open an issue from the Actor’s Apify Store page with a reproducible public URL.
Do not include API tokens, credentials, or private personal information in support requests.