LinkedIn API for Posts: How to Get Posts and a Feed in 2026
Can the LinkedIn API get posts? Only for pages you admin, with Community Management approval. What the Posts API allows, why there is no feed API, and the alternative.
LinkedIn's official Posts API (/rest/posts) only returns posts from organization pages you administer, or from members who sign in to your app, and reading a person's posts needs the restricted r_member_social permission. There is no official API for a member's home feed. To read public posts from any company or person, use a public-data API: crawlfeed returns them as JSON for 2 credits per page, with no partner approval.
The LinkedIn API can return posts, but only posts you already have a relationship with: pages you administer, or members who sign in to your app. As of October 2026 there is no official way to read posts from an arbitrary company or person, and no API at all for a member's home feed. This guide explains what the official Posts API does, who can get access, and how to get public LinkedIn posts as JSON when the official route does not fit.
Can the LinkedIn API get posts?
Yes, through the Posts API, which replaced the older ugcPosts and Shares APIs. It lives at https://api.linkedin.com/rest/posts and supports three reads:
- One post by its URN, such as
urn:li:share:…orurn:li:ugcPost:…. - Several posts in one batch call.
- Posts by author, with
q=author, up to 100 per page, sorted byLAST_MODIFIEDorCREATED.
The catch is the author. What you may read depends on the permission your app holds:
| Whose posts | Permission needed | Who can get it |
|---|---|---|
| A company page you administer | r_organization_social | Community Management API apps, for pages where the member has an admin role |
| A person's posts | r_member_social | Restricted, "available to approved users only" |
| Any other company or person | None | Not available |
If the signed-in member lacks the role or the scope, the API answers 403 ACCESS_DENIED. That is the wall most developers hit when they search for "LinkedIn API get posts": the API is built for managing your own presence, not for reading other people's.
Is there a LinkedIn feed API?
No. No official permission reads a member's home feed, the stream of posts they see when they open LinkedIn. The self-serve "Share on LinkedIn" product only grants w_member_social, which lets your app publish on a member's behalf but read nothing back.
LinkedIn's restricted uses for the Marketing APIs go further. Under "No Social Feeds", data from the Community Management API may not be shown in any social feed, which rules out a wall of company updates on your website or intranet. The same rules also forbid using member data for sales or recruiting, exporting it from your app, combining it with other data, and keeping member social activity for more than 48 hours.
How do you get Community Management API access?
The Community Management API is the product that carries r_organization_social. According to LinkedIn's app review guide and access tiers:
- Apply as an organization. Only registered legal organizations can apply, for commercial use, with a verified business email (personal addresses fail), a website and a privacy policy.
- Verify the app with your company page. A super admin of the company's LinkedIn Page has to approve it.
- Keep it alone on the app. Community Management must be the only product on that app, so you may need a new app just for it.
- Start on the Development tier. You get 500 calls per app and 100 calls per member every 24 hours, no batch calls and no webhooks.
- Apply for the Standard tier. You need a finished integration, test credentials and a screencast of each use case. LinkedIn can decline even when you meet the requirements, and a rejected app has to start again as a new app.
Standard-tier rate limits are not published; LinkedIn shows them per endpoint on your app's Analytics tab in the Developer Portal, and resets them at midnight UTC.
How do you call the Posts API?
Every call to the versioned API needs two headers besides your OAuth token: Linkedin-Version in YYYYMM form and X-Restli-Protocol-Version: 2.0.0. Calls without a version fail; LinkedIn does not default to the latest.
curl -G "https://api.linkedin.com/rest/posts" \
-H "Authorization: Bearer $LINKEDIN_TOKEN" \
-H "Linkedin-Version: 202610" \
-H "X-Restli-Protocol-Version: 2.0.0" \
--data-urlencode "q=author" \
--data-urlencode "author=urn:li:organization:5515715" \
--data-urlencode "count=10" \
--data-urlencode "sortBy=LAST_MODIFIED"Here 5515715 stands for an organization your signed-in member administers. LinkedIn releases a new version every month and, per its versioning page, keeps each one for at least a year. Version 202511 is due to sunset on 16 November 2026, so pin a recent version and put the upgrade in your calendar.
How do you get public LinkedIn posts from any company or person?
If you need posts from companies and people you do not administer, for competitor tracking, sales signals, research or an AI agent, the official API has no route. A public-data API is the practical option. crawlfeed reads what a logged-out visitor can see and returns it as JSON:
| Operation | Endpoint | Needs | Credits |
|---|---|---|---|
| Profile | /v1/linkedin/profile | handle | 2 |
| Posts | /v1/linkedin/posts | handle | 2 |
| Post | /v1/linkedin/post | id | 2 |
| Company | /v1/linkedin/company | handle | 2 |
| Company posts | /v1/linkedin/company/posts | handle | 2 |
| Transcript | /v1/linkedin/transcript | id | 2 |
| Summary | /v1/linkedin/summary | id | 5 |
| Search posts | /v1/linkedin/search/posts | q | 2 |
| Search ads | /v1/linkedin/ads/search | q | 2 |
| An advertiser's ads | /v1/linkedin/ads | advertiser | 2 |
| Ad | /v1/linkedin/ad | id | 2 |
Every LinkedIn call costs 2 credits, there is no partner programme to join, and new accounts get 100 free credits.
A company's posts
Pass the company slug, the part after /company/ in its page URL:
curl -G https://api.crawlfeed.dev/v1/linkedin/company/posts \
-H "Authorization: Bearer $CRAWLFEED_KEY" \
--data-urlencode "handle=openai"A person's posts
Pass the profile slug, the part after /in/:
curl -G https://api.crawlfeed.dev/v1/linkedin/posts \
-H "Authorization: Bearer $CRAWLFEED_KEY" \
--data-urlencode "handle=satyanadella"Each item is a Post with text, created_at, media, engagement and hashtags, the same shape crawlfeed returns for X, Instagram and the other 26 platforms. To page, send meta.next_cursor back as cursor until it is missing.
Posts about a topic
To build something feed-like around a keyword instead of an account, search public posts:
curl -G https://api.crawlfeed.dev/v1/linkedin/search/posts \
-H "Authorization: Bearer $CRAWLFEED_KEY" \
--data-urlencode "q=ai agents"For a walkthrough of profiles, company pages and the LinkedIn Ad Library, see how to scrape LinkedIn data, and the LinkedIn reference for every parameter.
Official API or public-data API?
| Need | LinkedIn Posts API | crawlfeed |
|---|---|---|
| Publish posts for your page or members | Yes | No |
| Read posts from pages you administer | Yes, with Community Management | Yes, if the posts are public |
| Read any company's or person's public posts | No | Yes |
| Post analytics for your own page | Yes | No |
| Approval before the first call | Yes | No |
| Same API for X, Instagram, TikTok and Reddit | No | Yes |
Use LinkedIn's API when you manage your own page or act for members who sign in: it can publish and it returns private analytics. Use a public-data API when you need to read other people's public posts. crawlfeed never logs in, returns nothing a logged-out visitor could not see, and gives you no rights over LinkedIn content. LinkedIn's User Agreement restricts automated collection, so check your use with your own counsel, and if you store posts about identifiable people you need a lawful basis under laws such as the GDPR. For a side-by-side of both routes, see LinkedIn API alternatives.
The short answer
The LinkedIn Posts API reads posts only from pages you administer, with Community Management API approval, or from members who grant the restricted r_member_social permission. There is no official feed API, and LinkedIn's rules forbid building a social feed from its API data. To read public posts from any company or person, call a public-data API such as /v1/linkedin/company/posts, at 2 credits a page.
Questions
Can I get LinkedIn posts with the official API?
Only in narrow cases. The Posts API returns posts from organization pages where the signed-in member is an administrator or content admin, using the r_organization_social permission from the Community Management API. Reading a person's posts needs r_member_social, which LinkedIn describes as restricted and available to approved users only. You cannot read posts from a company or person you have no relationship with.
Is there a LinkedIn feed API?
No. No official LinkedIn permission reads a member's home feed, and LinkedIn's restricted-use rules for the Marketing APIs also forbid showing Community Management data in a social feed, such as a wall of company updates on a website or intranet.
How do I get Community Management API access?
Apply from an app in the LinkedIn Developer Portal on behalf of a registered legal organization, with a verified business email, and have a super admin of your company page verify the app. Community Management must be the only product on that app. You start on the Development tier (500 calls per app per day) and apply for the Standard tier with a finished integration and a screencast.
What does LinkedIn-Version mean in the Posts API?
Every call to the versioned /rest API needs a Linkedin-Version header in YYYYMM format, for example 202610, plus X-Restli-Protocol-Version: 2.0.0. LinkedIn ships a version each month and supports each one for at least a year before sunsetting it.
How do I get a company's LinkedIn posts without admin access?
Use a public-data API. crawlfeed's /v1/linkedin/company/posts takes a company slug and returns its public posts as JSON, and /v1/linkedin/posts does the same for a person. Each page costs 2 credits, there is no approval queue, and new accounts get free credits.
Try it on your own data
Every example above runs as written. New accounts get 100 free credits, no card needed.
Get an API key