LinkedIn Post Details Scraper avatar

LinkedIn Post Details Scraper

Pricing

from $8.00 / 1,000 linkedin post scrapeds

Go to Apify Store
LinkedIn Post Details Scraper

LinkedIn Post Details Scraper

Get a public LinkedIn post by URL with full text, author, media, reaction and comment counts, plus an optional transcript and comments preview. No login or cookies needed.

Pricing

from $8.00 / 1,000 linkedin post scrapeds

Rating

0.0

(0)

Developer

Khadin Akbar

Khadin Akbar

Maintained by Community

Actor stats

0

Bookmarked

51

Total users

21

Monthly active users

a day ago

Last modified

Features

Limited permissions

Share

What is LinkedIn Post Details Scraper?

Get full public details for a LinkedIn post URL — text, author, media, reaction and comment counts, optional video transcript, and a comments preview. Paste one post URL (or a short list) and get one clean dataset row per post. No LinkedIn login. No cookies.

Built for AI agents and content pipelines: a known URL in, structured JSON out, predictable $0.008 per saved post.

Honest reaction contract: public no-login data exposes aggregate reaction counts (reactionCount / likeCount), not who reacted and not a LIKE vs CELEBRATE vs INSIGHTFUL split. Reactor identities stay behind LinkedIn login. When you need commenter identities, continue with LinkedIn Post Engagers Scraper.

What you get

FieldWhat it answers
text, title, headlineWhat was posted (full body; article title when it is a Pulse post)
authorName, authorUrl, authorFollowersWho posted it
reactionCount, likeCount, commentCount, shareCountHow the post is performing publicly
mediaUrl, mediaUrls, thumbnailUrl, transcriptMedia — video/image URLs plus transcript when LinkedIn exposes one
hashtags[], links[]Topics and links pulled from the post text (new in 0.1.11): hashtags without the #, and web links found in the body
commentsPreview[]Top visible comments attached to the same row (not a full thread export)
postUrl, postId, postKind, publishedAt, provider, scrapedAtProvenance — which post, when, from which provider

Who it is for (and why it matters)

  • Content and social teams — archive a specific LinkedIn post with engagement counts instead of screenshots.
  • Competitive intelligence — capture a rival's announcement post, reactions, and visible comments in one record.
  • Researchers and journalists — pull a citable public post body, timestamp, and author without a LinkedIn account.
  • AI agents — resolve a LinkedIn URL the user pasted into a tool call into structured JSON (apify--linkedin-post-details-scraper).

When to use this Actor

  • You already have a LinkedIn post, feed-update, or Pulse article URL and need the full public record.
  • You need reaction counts plus post text in the same row.
  • You want a cookieless, MCP-ready get-post tool rather than a search or feed crawler.

Best fit & sibling routing

This Actor is the get-by-URL sibling: one post in, one detail row out.

Input

FieldTypeDefaultDescription
postUrlsarray (required)1 example URLLinkedIn post / activity / pulse URLs, or a bare activity ID
maxPostsinteger100Budget cap on unique URLs processed
includeCommentsPreviewbooleantrueAttach visible comments on the post row
maxCommentsPreviewinteger10Cap comments attached per row (0–50)
includeTranscriptbooleantrueAdd the video transcript when LinkedIn shows one
outputModeenumfullfull or compact (shorter agent records: text cut to 500 characters, no transcript, no links list)
maxConcurrencyinteger2Posts fetched at once (1–5)
includeRawDatabooleanfalseAlso return the unmodified source payload under rawPost

Example input — single post URL

{
"postUrls": [
"https://www.linkedin.com/feed/update/urn:li:activity:7468770468041502720/"
]
}

Output (one row, abbreviated from a live provider payload)

{
"postUrl": "https://www.linkedin.com/posts/microsoft_activity-7468770468041502720-mGV1",
"postId": "7468770468041502720",
"postKind": "video",
"text": "Our newest AI Diffusion Report is out...",
"publishedAt": "2026-06-05T21:07:22.617Z",
"authorName": "Microsoft",
"authorUrl": "https://www.linkedin.com/company/microsoft",
"authorFollowers": 28914925,
"reactionCount": 379,
"likeCount": 379,
"commentCount": 25,
"scrapedAt": "2026-08-21T00:00:00.000Z"
}

You can download the dataset as JSON, CSV, Excel, or HTML. Every terminal run also writes OUTPUT and RUN_SUMMARY with outcome (COMPLETE / PARTIAL / VALID_EMPTY / INVALID_INPUT / UPSTREAM_FAILED / CONFIG_ERROR).

Workflow story: from a pasted post URL to an archive row

A competitive-intel analyst drops a rival's launch post URL into this Actor. The run starts, the managed provider chain fetches the public post, and one row lands with the full text, author, reactionCount 379, commentCount 25, video URL, and transcript. She exports JSON to her briefing doc, then (optionally) sends the same URL to LinkedIn Post Engagers Scraper when she needs the people who commented. Elapsed time is typically under 15 seconds; event cost is $0.008 plus the memory-based startup event, with platform usage included.

Why AI agents and MCP clients choose this Actor

  • One required input. postUrls is the only required field.
  • Predictable cost. Only saved posts are billed at $0.008.
  • Structured output. Stable keys plus a published dataset schema.
  • Honest outcomes. Invalid URLs → INVALID_INPUT. Deleted posts → VALID_EMPTY. Provider outage with zero rows → UPSTREAM_FAILED.

"Get the full public details and reaction counts for this LinkedIn post URL."

MCP tool name: apify--linkedin-post-details-scraper.

Pricing — Pay per event with Apify platform usage included

Startup billing and empty runs

The apify-actor-start event costs $0.00005 per startup unit. Apify charges one startup unit per GB of allocated memory, with a minimum of one unit, so a 2 GB run incurs two units. This startup charge still applies when input is invalid, no results are found, or an upstream request fails. Statements about free, unbilled, or skipped results refer only to the corresponding result event; they do not waive the startup charge. Apify platform usage is included in the event prices and is not passed through as an additional customer charge. Check the live Pricing tab for current events, tiers, and rates. Result limits cap result events, not the entire run cost.

EventPriceCharged when
Actor start$0.00005Once per run
post-scraped$0.008One post row saved to the dataset

Not-found posts are not billed. Platform usage is included in the price: there is no extra usage bill on top.

You fetchYou pay
1 postabout $0.008
10 postsabout $0.08
100 posts (the per-run maximum)about $0.80

Set maxPosts to cap the spend: the run never fetches more unique URLs than that.

Which Actor for which job

You haveUseTypical price
One or more post URLs, want the full recordthis Actor$0.008 per post
A keyword, want posts that match itLinkedIn Posts Scrapersee its page
A person's profile URL, want their recent postsLinkedIn Profile Posts Scrapersee its page
Post URLs, want engagement numbers onlyLinkedIn Post Analytics Scrapersee its page
Post URLs, want who commentedLinkedIn Post Engagers Scrapersee its page

API example

curl -X POST "https://api.apify.com/v2/acts/khadinakbar~linkedin-post-details-scraper/runs?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"postUrls":["https://www.linkedin.com/feed/update/urn:li:activity:7468770468041502720/"]}'

Integrations and chaining

Best results guidance

  • Use a public post URL you can open while logged out.
  • Prefer one URL for agent calls; batch up to 100 for archive jobs.
  • Deleted or non-post URLs are reported per-URL instead of faking a row.

Scope, data boundary & recovery

  • Public, incognito-visible posts only.
  • Reactions are counts, not reactor identities.
  • Dual-provider fallback: a primary public-data provider, then a same-shape fallback provider. Owner secrets, never user API keys.

Evidence & freshness

Field shape is verified against live payloads from both public-data providers for public activity and Pulse URLs: aggregate likeCount/reactionCount, commentCount, author, media, optional transcript, and visible comments. Every row carries provider and scrapedAt (ISO 8601).

Builder's note

I built this after probing both providers on a real activity URL and a Pulse article. Both return the same public post object — full text, author, media, likeCount as the reaction total, comments, and sometimes a transcript — and neither exposes who clicked Like or Celebrate. That is why this Actor is a get-post-details tool with honest reaction counts.

What's new

  • 0.1.11 (2026-11-10): new hashtags and links fields on every row. Fixed: the same post pasted in different URL shapes (feed link, /posts/ link, bare ID) is now fetched and billed once, not twice. Fixed: a deleted or private post now ends the run as an empty result (nothing billed) instead of a failed run. README now lists every input, with a clearer cost table and a "which Actor for which job" guide.
  • 0.1.8 (2026-10-29): steadier billing records and a safer retry path. Same price.

FAQ

Does this return who reacted? No. Public data shows reaction counts only, not names and not the Like / Celebrate / Insightful split.

Is LinkedIn login required? No. No cookies, no account.

What if the post is deleted or private? It is reported for that URL, nothing is billed for it, and the run ends VALID_EMPTY when every URL is missing.

Can I search posts by keyword with this Actor? No. It takes URLs you already have. For keyword search use LinkedIn Posts Scraper.

Can I fetch many posts in one run? Yes, up to 100 unique URLs per run. Raise maxConcurrency (1–5) for larger batches.

Which URL shapes work? /feed/update/urn:li:activity:..., /posts/...-activity-..., Pulse article links, or a bare activity ID.

How do I use it from an AI agent? Call it as apify--linkedin-post-details-scraper with {"postUrls": ["<url>"], "outputMode": "compact"}. Compact keeps the answer short for a model's context window.

This Actor retrieves publicly available data. You are responsible for complying with LinkedIn's Terms of Service, applicable data-protection laws (GDPR/CCPA), and Apify's Exclusion Policy when using the results.