Extract LinkedIn Posts and Engagement Data
Pull posts, comments, reactions, and engagement metrics from any LinkedIn user or company page. Content analysis, competitive monitoring, and social selling signals. Structured JSON via API.
LinkedIn Content Intelligence Is Invisible Without Extraction
LinkedIn is the primary B2B content platform. Decision makers share industry insights, announce strategic shifts, and signal priorities through their posts. Sales teams need to know what prospects are talking about. Marketing teams need to track competitive content strategies. Analysts need to measure thought leadership and brand presence.
But LinkedIn provides no API access to content data. You cannot analyze posting topics, detect strategy shifts, or measure engagement themes programmatically. Manual monitoring does not scale beyond a handful of accounts, and copy-pasting from the feed misses comments, reactions, and historical context.
Without structured access to post data, content intelligence remains invisible — locked inside a feed that only shows you what the algorithm decides.
Six Endpoints for Complete Content Intelligence
User posts, company posts, comments, reactions, user activity, and full-text content search. Each endpoint returns structured JSON with cursor-based pagination.
User Posts
Retrieve all posts published by a specific LinkedIn user. Returns full post text, engagement counts, media attachments, and timestamps. Use for prospect monitoring, thought leader tracking, and content analysis.
| Parameter | Type | Description |
|---|---|---|
urn |
string | LinkedIn user URN identifier |
user |
string | LinkedIn username or profile URL |
count |
integer | Number of posts per page (default: 20) |
cursor |
string | Pagination cursor from previous response |
{
"posts": [
{
"post_urn": "urn:li:activity:7129384756102938",
"text": "Excited to announce our Series B funding...",
"created_at": "2025-01-15T09:30:00Z",
"likes": 342,
"comments": 47,
"shares": 89,
"media": [{ "type": "image", "url": "https://..." }],
"author": {
"name": "Jane Smith",
"urn": "urn:li:member:123456789"
}
}
],
"cursor": "eyJvZmZzZXQiOjIwfQ=="
}
Company Posts
Retrieve all posts published by a LinkedIn company page. Same response structure as user posts, optimized for company content tracking, competitive analysis, and employer brand monitoring.
| Parameter | Type | Description |
|---|---|---|
urn |
string | LinkedIn company URN identifier |
user |
string | Company vanity name or page URL |
count |
integer | Number of posts per page (default: 10) |
cursor |
string | Pagination cursor from previous response |
{
"posts": [
{
"post_urn": "urn:li:activity:7130482957301284",
"text": "We're hiring across engineering and product...",
"created_at": "2025-01-18T14:00:00Z",
"likes": 156,
"comments": 23,
"shares": 41,
"media": [],
"author": {
"name": "Acme Corp",
"urn": "urn:li:company:987654"
}
}
],
"cursor": "eyJvZmZzZXQiOjEwfQ=="
}
Post Comments
Retrieve all comments on a specific LinkedIn post. Returns commenter profile, comment text, timestamp, and nested reply structure. Use for sentiment analysis, community engagement tracking, and identifying active commenters.
| Parameter | Type | Description |
|---|---|---|
post_urn |
string | URN of the LinkedIn post |
count |
integer | Number of comments per page (default: 10) |
cursor |
string | Pagination cursor from previous response |
{
"comments": [
{
"text": "Congratulations! Well deserved.",
"created_at": "2025-01-15T10:45:00Z",
"likes": 12,
"author": {
"name": "John Doe",
"urn": "urn:li:member:456789012",
"headline": "VP Engineering at TechCo"
}
}
],
"cursor": "eyJvZmZzZXQiOjEwfQ=="
}
Post Reactions
See who reacted to a specific post and what reaction type they used. Returns reactor profiles with reaction types (Like, Celebrate, Support, Love, Insightful, Funny). Use for engagement quality analysis and audience profiling.
| Parameter | Type | Description |
|---|---|---|
post_urn |
string | URN of the LinkedIn post |
count |
integer | Number of reactions per page (default: 10) |
cursor |
string | Pagination cursor from previous response |
{
"reactions": [
{
"type": "LIKE",
"actor": {
"name": "Sarah Chen",
"urn": "urn:li:member:789012345",
"headline": "Director of Marketing"
}
},
{
"type": "CELEBRATE",
"actor": {
"name": "Mike Johnson",
"urn": "urn:li:member:345678901",
"headline": "CEO at StartupXYZ"
}
}
],
"cursor": "eyJvZmZzZXQiOjEwfQ=="
}
User Comments
Retrieve comments a specific user has left on other people's posts. Shows what topics they engage with, who they interact with, and what positions they take. Essential for understanding prospect interests beyond their own content.
| Parameter | Type | Description |
|---|---|---|
urn |
string | LinkedIn user URN identifier |
user |
string | LinkedIn username or profile URL |
count |
integer | Number of comments per page (default: 20) |
cursor |
string | Pagination cursor from previous response |
{
"comments": [
{
"text": "Great insight on the AI infrastructure space.",
"created_at": "2025-01-16T11:20:00Z",
"post_urn": "urn:li:activity:7130001234567890",
"post_author": {
"name": "Lisa Park",
"urn": "urn:li:member:567890123"
}
}
],
"cursor": "eyJvZmZzZXQiOjIwfQ=="
}
Content Search
Search across all public LinkedIn posts by keyword. Returns matching posts with full engagement data, author profiles, and content text. Use for brand monitoring, trend detection, and competitive content intelligence at scale.
| Parameter | Type | Description |
|---|---|---|
keywords |
string | Search query terms |
count |
integer | Number of posts per page (default: 50) |
cursor |
string | Pagination cursor from previous response |
{
"posts": [
{
"post_urn": "urn:li:activity:7131592847301928",
"text": "The future of AI agents in enterprise sales...",
"created_at": "2025-01-20T08:15:00Z",
"likes": 891,
"comments": 134,
"shares": 203,
"author": {
"name": "Alex Rivera",
"urn": "urn:li:member:901234567",
"headline": "AI Strategist"
}
}
],
"cursor": "eyJvZmZzZXQiOjUwfQ=="
}
Code Examples
Production-ready examples for extracting LinkedIn post data.
Prospect Activity Analysis
Pull a prospect's recent posts, analyze engagement patterns, and find their top-performing content.
import requests # Prospect activity analysis — pull posts and rank by engagement API_KEY = "YOUR_ACCESS_TOKEN" BASE = "https://api.anysite.io" headers = {"access-token": API_KEY} def get_prospect_posts(username, max_pages=5): """Pull all recent posts for a prospect.""" posts = [] cursor = None for _ in range(max_pages): params = {"user": username, "count": 20} if cursor: params["cursor"] = cursor resp = requests.get( f"{BASE}/api/linkedin/user/posts", headers=headers, params=params ) data = resp.json() posts.extend(data.get("posts", [])) cursor = data.get("cursor") if not cursor: break return posts # Analyze engagement posts = get_prospect_posts("janedoe") for post in sorted(posts, key=lambda p: p["likes"] + p["comments"], reverse=True)[:5]: engagement = post["likes"] + post["comments"] + post["shares"] print(f"Engagement: {engagement} | {post['text'][:80]}...")
Brand Monitoring
Search LinkedIn for mentions of your brand and track sentiment across posts.
# Brand monitoring — search posts mentioning your company def search_brand_mentions(brand, pages=3): """Search all LinkedIn posts for brand mentions.""" mentions = [] cursor = None for _ in range(pages): params = {"keywords": brand, "count": 50} if cursor: params["cursor"] = cursor resp = requests.get( f"{BASE}/api/linkedin/search/posts", headers=headers, params=params ) data = resp.json() mentions.extend(data.get("posts", [])) cursor = data.get("cursor") if not cursor: break return mentions mentions = search_brand_mentions("Acme Corp") print(f"Found {len(mentions)} posts mentioning your brand") for m in mentions[:10]: print(f" {m['author']['name']}: {m['text'][:60]}... ({m['likes']} likes)")
Competitive Content Analysis
Compare posting frequency and engagement rates across competitors.
# Competitive content analysis — compare engagement across companies competitors = ["competitor-a", "competitor-b", "competitor-c"] for company in competitors: resp = requests.get( f"{BASE}/api/linkedin/company/posts", headers=headers, params={"user": company, "count": 10} ) posts = resp.json().get("posts", []) if posts: avg_likes = sum(p["likes"] for p in posts) / len(posts) avg_comments = sum(p["comments"] for p in posts) / len(posts) print(f"{company}: {avg_likes:.0f} avg likes, {avg_comments:.0f} avg comments")
Get User Posts
# Get recent posts from a LinkedIn user curl -X GET "https://api.anysite.io/api/linkedin/user/posts" \ -H "access-token: YOUR_ACCESS_TOKEN" \ -G -d "user=janedoe" -d "count=20"
Search Posts by Keyword
# Search all LinkedIn posts for a topic curl -X GET "https://api.anysite.io/api/linkedin/search/posts" \ -H "access-token: YOUR_ACCESS_TOKEN" \ -G -d "keywords=artificial intelligence enterprise" \ -d "count=50"
Get Post Comments
# Get comments on a specific post curl -X GET "https://api.anysite.io/api/linkedin/post/comments" \ -H "access-token: YOUR_ACCESS_TOKEN" \ -G -d "post_urn=urn:li:activity:7129384756102938" \ -d "count=10"
Get Post Reactions
# See who reacted and their reaction type curl -X GET "https://api.anysite.io/api/linkedin/post/reactions" \ -H "access-token: YOUR_ACCESS_TOKEN" \ -G -d "post_urn=urn:li:activity:7129384756102938" \ -d "count=10"
User Posts
# Get recent posts from a LinkedIn user anysite linkedin user posts --user janedoe --count 20
Company Posts as Table
# Get company posts formatted as a table anysite linkedin company posts --user acme-corp --count 10 --format table
Search Posts
# Search all LinkedIn posts by keyword anysite linkedin search posts --keywords "AI infrastructure" --count 50
Get Comments
# Get comments on a specific post anysite linkedin post comments --post-urn "urn:li:activity:7129384756102938" --count 10
Pipeline YAML
# pipeline.yaml — monitor prospect posts daily name: prospect-content-monitor schedule: "0 8 * * *" steps: - source: linkedin/user/posts params: user: janedoe count: 20 - filter: min_likes: 10 - output: format: json path: ./data/prospect-posts-Apr 11, 2026.json
Use Cases
How teams use LinkedIn post data to drive decisions.
Social Selling Signals
Monitor prospect posts to identify timely outreach opportunities. When a prospect posts about a challenge your product solves, you have a warm entry point. Track what topics they engage with, who they interact with, and what content they share to personalize every touchpoint.
How it works
Pull posts daily for your target accounts. Flag posts mentioning pain points, initiatives, or technologies relevant to your offering. Feed into your CRM as engagement signals for sales reps.
Competitive Content Strategy Analysis
Understand how competitors use LinkedIn for thought leadership and brand building. Measure posting frequency, engagement rates, content themes, and audience response. Identify what resonates with your shared audience and find content gaps to exploit.
How it works
Pull competitor company posts and executive posts weekly. Calculate average engagement per post, identify top-performing content themes, and compare against your own metrics. Track changes over time to spot strategy shifts early.
Influencer and Thought Leader Research
Identify industry thought leaders by engagement quality, not just follower count. Find people whose posts consistently drive meaningful comments and shares. Build partnership and co-marketing lists based on actual content performance rather than vanity metrics.
How it works
Search posts by industry keywords. Aggregate engagement by author across multiple posts. Rank by average engagement rate, comment-to-like ratio, and content consistency. Filter for authors who match your target audience profile.
Brand Reputation Monitoring
Catch every LinkedIn mention of your brand, products, or executives. Identify positive mentions to amplify, negative feedback to address, and competitive comparisons to learn from. Track brand sentiment shifts over time across the entire LinkedIn platform.
How it works
Use the content search endpoint to monitor brand keywords daily. Classify posts by sentiment (positive, negative, neutral) using NLP. Alert your PR or customer success team to high-engagement negative mentions for rapid response.
Comparison
How Anysite compares with other LinkedIn content tools.
| Feature | Anysite | Phantombuster | Shield Analytics | Taplio |
|---|---|---|---|---|
| User posts | Full text + engagement + media | Limited extraction | Own account only | Own account only |
| Company posts | Any company page | Partial support | No | No |
| Comments | Full comment threads | Limited | Own posts only | Own posts only |
| Reactions | Reactor profiles + type | Count only | Count only | Count only |
| Content search | All of LinkedIn by keyword | No | No | Limited |
| API access | REST API + MCP + CLI | REST API | No API | No API |
| Batch processing | CLI pipelines + scheduling | Phantom chains | No | No |
| Pricing | From $49/mo (15K credits) | From $69/mo | From $25/mo | From $49/mo |
Pricing
Credit costs per endpoint. All plans include access to every endpoint.
| Endpoint | Credit Cost | Items per Page |
|---|---|---|
| User Posts | 1 credit / page | 20 posts |
| Company Posts | 1 credit / page | 10 posts |
| Post Comments | 1 credit / page | 10 comments |
| Post Reactions | 1 credit / page | 10 reactions |
| User Comments | 1 credit / page | 20 comments |
| Content Search | 1 credit / page | 50 posts |
Cost Examples
| Scenario | What You Get | Credits Used |
|---|---|---|
| Monitor 50 prospects daily | 20 posts each, 30 days | 1,500 credits/month |
| Track 10 competitor companies | 100 posts each, weekly pulls | 400 credits/month |
| Brand monitoring | Daily keyword search, 150 posts/day | 90 credits/month |
Frequently Asked Questions
/api/linkedin/search/posts) searches across all public LinkedIn posts by keyword. It returns up to 50 posts per page with full engagement data, author profiles, and content text. This is ideal for brand monitoring, trend analysis, competitive intelligence, and identifying thought leaders in any industry.
Related Endpoints
Other LinkedIn data endpoints that complement post data extraction.
Start Extracting LinkedIn Content Data
7-day free trial with 1,000 credits. Full access to all six post data endpoints, plus every other LinkedIn, Instagram, Twitter, Reddit, and YouTube endpoint.