LinkedIn Profile Posts Scraper
Pricing
from $5.00 / 1,000 linkedin post scrapeds
LinkedIn Profile Posts Scraper
Scrape a LinkedIn person's recent public posts by profile URL. Returns post text, post URL, posted date, reactions, comments, shares, media, repost flag, and author identity. Provider-backed, no login or cookies. Charged $0.005 per post.
Pricing
from $5.00 / 1,000 linkedin post scrapeds
Rating
0.0
(0)
Developer
Khadin Akbar
Maintained by CommunityActor stats
0
Bookmarked
6
Total users
5
Monthly active users
12 days ago
Last modified
Categories
Share
Scrape a LinkedIn person's recent public posts by profile URL. Give it one or more linkedin.com/in/... URLs and the actor returns clean JSON rows — post text, post URL, posted date, reactions, comments, shares, media, a repost flag, and the author's identity — plus a machine-readable run summary. No LinkedIn login, no cookies, no browser sessions.
Built for sales and growth teams tracking prospects, social-listening tools following thought leaders, recruiters watching candidates' activity, and AI agents that need structured LinkedIn post data from a single profile URL.
When to use this actor
- Use it to pull the recent posts a specific person has published or shared on LinkedIn.
- Use it to monitor a prospect's or competitor's founder posting activity over time.
- Do not use it for company-page feeds — use linkedin-company-posts-scraper.
- Do not use it for keyword/topic post search — use linkedin-posts-scraper.
- Do not use it for profile emails — use linkedin-profile-email-scraper.
What you get (output)
One row per post in the person's public activity preview:
| Field | Description |
|---|---|
profileUrl | Public LinkedIn profile URL of the author |
authorName | Name of the profile owner |
authorHeadline, authorLocation, authorFollowers | Author identity (full mode) |
postUrl | Public URL of the post / feed update / article |
postId | LinkedIn activity / share identifier |
text | Post body (full text when enrichment is on) |
activityType, activityKind | Raw + normalized activity label (posted, repost, liked, commented, reacted) |
isRepost, isAuthored | Booleans to filter authored posts vs reshares/likes |
publishedAt | Posted date when the provider returns it |
reactionCount, commentCount, shareCount, engagementCount | Engagement metrics (exact counts require enrichment) |
mediaUrl, mediaUrls | Post media/image URLs |
commentsPreview | Up to 5 comments (enrichment + includeComments) |
provider, scrapedAt, position | Provenance and metadata |
A run summary (counts, provider routing, billing, stop reason) is written to the key-value store as OUTPUT.
Pricing — pay per event
| Event | Price |
|---|---|
| Actor start | $0.00005 |
| Post scraped | $0.005 / post |
| Post detail enrichment (optional) | $0.004 / enriched post |
A typical profile yields roughly 5–20 recent posts, so a single-profile run usually costs a few cents. Enrichment is off by default — turn it on only when you need exact engagement counts and full post text. Pay-Per-Usage (compute + proxy) is also available; pick whichever billing model you prefer at run time.
Coverage & limits (read this)
LinkedIn does not expose a person's full historical feed publicly. This actor returns the recent public activity preview — what's visible in an incognito browser on the profile. That's typically the latest handful of posts, reshares, and reactions, not an exhaustive archive. Use the authoredOnly and includeReposts filters to keep only the content you want. No private, login-only, connection, or work-history data is returned.
Input
{"profileUrls": ["https://www.linkedin.com/in/williamhgates/","satyanadella"],"maxPostsPerProfile": 20,"authoredOnly": false,"includeReposts": true,"enrichPostDetails": false,"outputMode": "full"}
profileUrls(required) — person profile URLs or bare handles.maxPostsPerProfile— cap per profile (default 20).authoredOnly— keep only the person's own posts (default false).includeReposts— include reshared content (default true).enrichPostDetails— fetch full text + exact engagement per post (default false).outputMode—fullorcompact(smaller records for agents).providerOrder— provider routing / fallback control.
How it works
The actor is provider-backed: it resolves each profile through managed data providers (ScrapeCreators primary, SociaVault fallback) and reads the public recentPosts returned with the profile. If primary fails (403/429/timeout/empty), it automatically falls back to the secondary provider. Optional enrichment fetches each post's detail endpoint for full text and exact engagement counts. No proxies or cookies are managed by you.
Use with AI agents (MCP)
Exposed via Apify MCP as linkedin-profile-posts-scraper. Single profile URL in, structured post rows out — a natural tool call for Claude, ChatGPT, or any MCP client. Records are flat and token-budgeted; use outputMode: "compact" for the smallest agent payloads.
LinkedIn data cluster
- linkedin-profile-posts-scraper (this actor) — a person's recent posts
- linkedin-posts-scraper — keyword / company / exact-URL posts
- linkedin-company-posts-scraper — company-page feeds
- linkedin-post-comments-engagements-scraper — full comment rows
- linkedin-profile-email-scraper — profiles + emails
FAQ
Do I need a LinkedIn account or cookies? No. The actor uses managed data providers and only returns public data.
Can I get a person's entire post history? No. Only the recent public activity preview is available without login. See Coverage & limits.
Why are reaction/comment counts sometimes empty? The profile preview often omits exact counts. Enable enrichPostDetails to fetch them per post.
Can I exclude reposts and likes? Yes — set authoredOnly: true for the person's own posts only, or includeReposts: false to drop reshares.
Legal & compliance
This actor collects only publicly available LinkedIn data — equivalent to what any logged-out visitor can see — through managed third-party data providers. It does not access private profiles, connections, messages, or login-gated content. You are responsible for using the output in compliance with LinkedIn's Terms of Service, the GDPR/CCPA, and any other applicable laws and regulations in your jurisdiction. Do not use scraped personal data for unlawful profiling, harassment, or unsolicited bulk contact.