LinkedIn API for developers

The LinkedIn Page API,without the app review

Publish posts, PDF document carousels, polls and links as your Company Page. Answer comments and mentions, and read Page analytics. One API key, on OmniSocials’ approved LinkedIn app.
Webhooksyour-app.com/hooks
post.scheduledpost 1024just now200
post.publishedpost 10192 h ago200
post.approvedpost 10193 h ago200
POST/v1/posts/createapplication/json
01{
02 "content": "SDKs in 8 languages. Docs in the first comment.",
03 "accounts": ["linkedin_page"],
04 "media_urls": ["https://cdn.example.com/sdks.jpg"],
05 "schedule_at": "2026-10-22T18:00:00Z",
06 "linkedin_page": {
07 "first_comment": "https://omnisocials.com/sdk"
08 }
09}
Sending201 Created412 ms
Send
10{
11 "data": {
12 "id": "1024",
13 "status": "scheduled",
14 "app_url": "https://app.omnisocials.com/create-post/1024"
15 }
16}
A request creates a LinkedIn Page post with a first comment for Thu 22 at 18:00; it appears in the OmniSocials calendar and the webhook post.scheduled fires.
Your coding agent runs the same calls through the CLI

Skip the LinkedIn app review

LinkedIn’s own API needs a developer app with the Community Management API approved, twelve scopes, a picker for the Pages you admin and a comment webhook a Super admin subscribes per Page. OmniSocials already did that work.
On your own
w_organization_socialrw_organization_adminr_organization_social_feedr_basicprofile
w_organization_social_feedr_organization_followersr_organization_socialw_member_social
r_member_postAnalyticsr_member_profileAnalyticsw_member_social_feedr_1st_connections_size
LinkedIn appApp reviewDev tierPage pickerWebhooksTokensVersionsUploadsFirst post
On OmniSocials
Sign inAPI keyPOSTFirst postAll 12 scopes already approved

Every format, one request

Text, an image, a video, a PDF document, a poll or a link card share one request shape, posted as your Page. Add media URLs, a poll or a link and a time. OmniSocials checks the post against LinkedIn’s rules before it uploads.
OmniSocials
24 followers
Now
SDKs in 8 languages. Docs in the first comment.
media
Like
Comment
Repost
Send
POST/v1/posts/create
01{
02 "content": "SDKs in 8 languages. Docs in the first comment.",
03 "accounts": ["linkedin_page"],
04 "media_urls": ["https://cdn.example.com/sdks.jpg"],
05 "schedule_at": "2026-10-22T18:00:00Z",
06 "linkedin_page": {
07 "first_comment": "https://omnisocials.com/sdk"
08 }
09}
201 Createdstatus: "scheduled"
Posts and first comments
Text with an image or a video. Put the link in a first comment, posted as the Page right after the post goes live.
media_urlslinkedin_page.first_comment
Documents
Two or more images go out as a swipeable PDF document. A PDF you send goes out as the original file.
media_urlslinkedin_page.document_source
Polls
A question, 2 to 4 options and a duration from 1 day to 2 weeks. A poll can’t carry media or a link card.
linkedin_poll

Document carousels, without the PDF work

LinkedIn has no image carousel. Send two or more images and OmniSocials builds the swipeable PDF document. Send a PDF and LinkedIn gets the original file. Or post the images as a gallery.
OmniSocials
24 followers
Now
Sidebar update: a new Home tab, and more.
Sidebar update: a new Home tab, and more. · 2 pages
slide
Sidebar update: a new Home tab, and more. · 2 pages
1 / 2
Like
Comment
Repost
Send
POST/v1/posts/create
01{
02 "content": "Sidebar update: a new Home tab, and more.",
03 "accounts": ["linkedin_page"],
04 "media_urls": ["https://cdn.example.com/sidebar.pdf"],
05 "schedule_at": "2026-10-24T09:00:00Z",
06 "linkedin_page": {
07 "document_source": "original_pdf"
08 }
09}
201 Createdstatus: "scheduled"
Original PDF
Send a PDF URL and LinkedIn gets the file itself, with sharp text, working links and up to 300 pages. Other channels get its pages as images.
media_urlslinkedin_page.document_source
Document carousel
Two or more images become one swipeable PDF document, titled with the caption’s first line. For a PDF, slides rebuilds it from the page images.
document_source: "slides"
Image gallery
Prefer LinkedIn’s classic multi-image post? Set carousel_as_images and the images go out as a gallery instead.
carousel_as_images: true

Connect your Page once, post from code

Sign in with LinkedIn once inside OmniSocials and pick the Page. Create an API key, and your code posts, replies and reports for that Page.
OmniSocials
Name, icon, social channels and who can open this workspace.
GeneralMembersClientsApproval workflowsAPI
Workspace iconJPG or PNG, up to 2 MB.
Workspace nameOmniSocials
Social channels
The accounts this workspace posts to.
Connected
@omnisocials_
Instagram
@omnisocials_
Threads
@omnisocials_
X
Add a channel
LinkedIn PagePosts & Carousels
FacebookPosts, Stories & Reels
LinkedIn ProfilePosts & Carousels
YouTubeShorts
TikTokVideos & Photo posts
PinterestPins & Carousels
BlueskyPosts & Threads
MastodonAny server
Google BusinessUpdates, Events & Offers
TelegramChannels and groups
Coming soonDiscordTumblrWordPressWhopSlack
Danger zone
Delete workspace
Deletes this workspace with its posts, media and settings for good. This cannot be undone.
OmniSocials
Name, icon, social channels and who can open this workspace.
GeneralMembersClientsApproval workflowsAPI
API keys
Keys that can only reach this workspace.
NameKeyLast used
Claude
omsk_live_••••7c2eOct 20, 2026
GET/v1/accounts?platform=linkedin_page
200 OK88 ms
01{
02 "data": [
03 {
04 "id": "4127_linkedin_page",
05 "platform": "linkedin_page",
06 "display_name": "OmniSocials",
07 "content_types": ["post"],
08 "status": "active"
09 }
10 ],
11 "workspace_name": "OmniSocials"
12}
Authorization: Bearer $OMNISOCIALS_API_KEY
Pick the Page
Sign in with LinkedIn and pick a Page you’re an admin of. With one admin Page, it’s picked for you.
A key per workspace
A key only reaches its own workspace. Inbox access is switched on per key.
What the Page can post
The accounts call lists the Page with the formats it takes, and says when it needs a reconnect.
GET /v1/accountscontent_types

Answer comments and mentions

List the comments on your Page’s posts and the posts that mention your Page, then reply as the Page from your own code. LinkedIn’s API has no DMs.
Social Inbox
AllUnread3CommentsDMs
LinkedInNew: Manage the Social Inbox through the API14mPrivate and 2 others: And from our AI agent?2 newLinkedInMentioned you in a post1hPrivate: Mentioned your organization in a post1 newLinkedInNew: LinkedIn in the Social InboxYesterdayPrivate: Finally, LinkedIn comments in one place.LinkedInNew: Mastodon threadsYesterdayPrivate: Do threads work through the API too?1 new
Comments on your postLinkedIn post · 4 commentsOpen post
LinkedInYour post
New: Manage the Social Inbox through the API
4 comments2 new since you looked
Private accountYesterday
Does the inbox API cover Page comments too?
OmniSocialsYouYesterday
It does. Comments and mentions.
2 new
Private account13:20
Can we reply from our own help desk?
Private account13:58
And from our AI agent?
Yes. The MCP server has the same inbox tools.
Replies are public on LinkedIn and post as OmniSocials
GET/v1/inbox/conversations?platform=linkedin&type=comment
200 OK104 ms
01{
02 "data": [
03 {
04 "conversation_id": "linkedin_comment_urn:li:share:7386",
05 "platform": "linkedin",
06 "type": "comment",
07 "participant": {
08 "name": "Private account"
09 },
10 "unread_count": 2,
11 "last_message": {
12 "id": "90388",
13 "direction": "incoming",
14 "text": "And from our AI agent?"
15 }
16 }
17 ]
18}
Authorization: Bearer $OMNISOCIALS_API_KEY
Comments
Reply under the comment, as the Page. LinkedIn’s API shares no commenter names, so they show as a private account.
/conversations/:id/replymessage_id
Mentions
Posts that mention your Page show up in the same list, next to the comments on your own posts.
type=mention
Next unanswered
Ask for the next comment still waiting for an answer, then reply. Your agent does the same over MCP.
/inbox/nextreply_to_inbox

“The MCP is the real game changer for me. It makes the whole workflow feel much faster and less messy.”

Ansub Khan
Founder of Supafast

Read what your Page reports

Impressions, unique impressions, reactions by type, comments, shares, clicks and LinkedIn’s engagement rate per post. The Page adds followers, new followers and page views per day.
AnalyticsReports
AllInstagramFacebookTikTokThreadsBlueskyLinkedIn PageX
AddEdit
Last 30 days
Followers
2426.3%
Impressions
1,03928.0%
Engagements
13438.1%
Engagement Rate
12.9%1.0pt
Posts8Accounts7
Post
Channels
Impressions
Likes
Comments
Shares
Clicks
Eng. rate
Post thumbnail
New: Mastodon threads
Oct 21, 2026
linkedin_page
38200313.2%
Post thumbnail
New: Manage the Social Inbox through the API
Oct 20, 2026
linkedin_page
1427411216.9%
Post thumbnail
New: LinkedIn in the Social Inbox
Oct 19, 2026
linkedin_page
21411421715.9%
Post thumbnail
New: 1GB video uploads
Oct 14, 2026
linkedin_page
17681169.1%
Post thumbnail
New: PDF uploads
Oct 7, 2026
linkedin_page
1639211114.1%
Building on OmniSocials? Start with the API docs.
Oct 2, 2026
linkedin_page
88310712.5%
Post thumbnail
New: Alt text on every image
Sep 29, 2026
linkedin_page
12150169.9%
Post thumbnail
New in OmniSocials: Notable Days
Sep 24, 2026
linkedin_page
9741049.3%
GET/v1/analytics/posts/1019
Authorization: Bearer $OMNISOCIALS_API_KEY
200 OK143 ms
01{
02 "data": {
03 "post_id": "1019",
04 "platforms": {
05 "linkedin_page": {
06 "metrics": {
07 "impressions": 214,
08 "unique_impressions": 131,
09 "likes": 11, "comments": 4,
10 "shares": 2, "clicks": 17,
11 "engagement_rate": 15.8879,
12 "reactions": {
13 "like": 8, "praise": 2,
14 "interest": 1
15 }
16 }
17 }
18 }
19 }
20}
Per post
Impressions, unique impressions, reactions by type, comments, shares, clicks and LinkedIn’s own engagement rate. Videos add views and watch time.
/analytics/posts/:id
Per Page and workspace
Followers, new followers, impressions, clicks and page views per day. Follower demographics are collected once a week.
/analytics/accounts/analytics/overview
Best times to post
Days and hours worked out from your own Page history, once 15 of your posts are analyzed.
/analytics/best-times
Under the hood

Built for production

Signed webhooks, automatic retries, SDKs in 8 languages and a key per workspace. Create a key and send your first request in minutes.
Webhooks
Signed events for every post
Retries
Failed posts retry on their own
SDKs
One request shape in 8 languages
API keys
One key per workspace
Agents
Your coding agent posts too

LinkedIn’s rules, in one place

OmniSocials checks every post against them before it reaches LinkedIn, so a bad file fails in your request, not at publish time.
Text3,000 characters
First comment1,250 characters
ImagesJPEG, PNG, GIF or WebP, up to 10 MB each
MediaImages or one video per post, not both
PDF documentsThe original file up to 100 MB, 300 pages
VideoMP4 or MOV, up to 30 minutes
PollA 140-character question, 2 to 4 options of 30
Replies1,000 a day per workspace
Rate limit100 requests a minute per API key
AccountsOne Company Page per workspace

Your first Page post in three steps

About five minutes from sign-up to a scheduled post on your Company Page. Then hand the key to your coding agent.
Create an API key
Start your trial, open Settings, API and create a key. It is shown once.
Settings › API
Step 1
Connect your Page
Sign in with LinkedIn in OmniSocials once and pick the Page. Then list it from your code.
GET /v1/accounts
Step 2
Send your first post
Post now with create-and-publish, or add schedule_at to plan it.
POST /v1/posts/create
Step 3

Frequently
Asked Questions

Robert Ligthart
Robert LigthartFounder of OmniSocials
Ask me a question

Robert Ligthart
Still have a question?Ask Robert, the founder
Ask

Ship your LinkedIn
integration this week.

From $10 per seat a month, API included. 14-day free trial.
https://docs.omnisocials.com