API guide

The LinkedIn API in 2026.Posting is open. Pages and stats are vetted.

LinkedIn's API is free. Posting to your own profile takes Share on LinkedIn, a self-serve product with the w_member_social permission. Posting to a Company Page or reading post stats takes the Community Management API, open only to registered companies after a review with no published timeline. Every access token lasts 60 days, and the API can't schedule.

Checked October 6, 2026. Breakreach is our product.
# 1. The member id: "sub"curl https://api.linkedin.com/v2/userinfo \  -H "Authorization: Bearer $TOKEN" # 2. An upload URL for the imagecurl -X POST "https://api.linkedin.com/rest/images?action=initializeUpload" \  -H "Authorization: Bearer $TOKEN" \  -H "Linkedin-Version: 202609" \  -H "X-Restli-Protocol-Version: 2.0.0" \  -H "Content-Type: application/json" \  -d '{"initializeUploadRequest": {"owner": "urn:li:person:'$SUB'"}}' # 3. The image itselfcurl --upload-file roastery.jpg "$UPLOAD_URL" \  -H "Authorization: Bearer $TOKEN" # 4. The postcurl -X POST https://api.linkedin.com/rest/posts \  -H "Authorization: Bearer $TOKEN" \  -H "Linkedin-Version: 202609" \  -H "X-Restli-Protocol-Version: 2.0.0" \  -H "Content-Type: application/json" \  -d '{    "author": "urn:li:person:'$SUB'",    "commentary": "We planned three blends for the fall. We launched one.",    "visibility": "PUBLIC",    "distribution": {"feedDistribution": "MAIN_FEED",      "targetEntities": [], "thirdPartyDistributionChannels": []},    "content": {"media": {"id": "'$IMAGE_URN'"}},    "lifecycleState": "PUBLISHED"  }'
1/4 GET /v2/userinfoSending
Published · now
Northbeam Coffee
Just now·

We planned three blends for the fall. We launched one.

Like Comment Repost Send

The LinkedIn API at a glanceWhat it takes before the first post.

Price
Free. LinkedIn's API terms say it may charge in the future
Post to a personal profile
Share on LinkedIn: self-serve, permission w_member_social
Post to a Company Page
Community Management API: registered companies only, vetted, then a second review with a screencast
Review time
None for Share on LinkedIn. No published timeline for Community Management
Rate limit
150 requests per member and 100,000 per app a day (Share on LinkedIn)
Access tokens
60 days. Refresh tokens only for approved partners
Scheduling
None: a post is published when you create it
Version header
Linkedin-Version: 202609. A version is supported for at least a year

Checked on October 6, 2026, from LinkedIn's developer documentation and terms.

Our recommendation

To post to LinkedIn from your product, use Breakreach's API.We built it, so here's the case.

See the request
  • Scheduling LinkedIn's API doesn't have: send scheduledAt or take the next free slot, and Breakreach publishes at that time, with retries
  • One JSON body instead of four requests: the member id, the image upload and the version header are handled
  • A warning 14 days before a LinkedIn connection lapses, and the same request posts to 11 other networks

When to use LinkedIn's API directly. Breakreach posts to personal profiles only, text with one image, and reads no LinkedIn stats. For Company Pages, video, documents, polls or post analytics, apply for LinkedIn's Community Management API.

How to get access to the LinkedIn APIFrom a developer account to your first real post.

  1. 1Create an appAt linkedin.com/developers/apps, associated with a LinkedIn Page.
  2. 2Add Share on LinkedIn and Sign In with LinkedIn using OpenID ConnectBoth are open permissions, with no approval: w_member_social to post, openid and profile to read the member's id.
  3. 3Send each member through OAuthThe authorization code flow: the code is valid for 30 minutes, the access token for 60 days. Store tokens with room for at least 1,000 characters.
  4. 4For Company Pages, request the Community Management APIOn a new app where it's the only product, as a registered legal organization with a verified business email, and with a super admin of your LinkedIn Page verifying the app. The vetting survey must be sent within 21 days.
  5. 5Build on the Development tier, then ask for StandardDevelopment allows 500 calls per app and 100 per member a day, for up to 12 months. Standard needs a finished integration and a screencast of each use case, OAuth included. A rejected app can't apply again.

LinkedIn publishes no turnaround for Community Management reviews: restricted APIs are "evaluated on a case-by-case basis with no fixed timeline". The only official figure is for the Advertising API's upgrade to Standard, which can take up to 30 business days.

How to post with the LinkedIn APIThe requests in the demo above, one by one.

  1. 1Get the member idGET /v2/userinfo returns sub. The post's author is urn:li:person:{sub}.
  2. 2Initialize the image uploadPOST /rest/images?action=initializeUpload with the author as owner returns an uploadUrl and an image URN.
  3. 3Upload the filePUT the bytes to the uploadUrl, with the same Authorization header. JPG, GIF or PNG.
  4. 4Create the postPOST /rest/posts with author, commentary, visibility, distribution and lifecycleState PUBLISHED, plus content.media.id for the image. LinkedIn answers 201, with the post's URN in the x-restli-id header.

Every call needs Linkedin-Version (YYYYMM) and X-Restli-Protocol-Version: 2.0.0. Video takes three steps (initialize, PUT 4 MB parts, finalize), documents go through /rest/documents, and a link post needs you to set the article's title, description and thumbnail, because LinkedIn doesn't read the page.

Common LinkedIn API errorsWhat they mean and how to fix them.

ErrorWhat it meansFix
401 Expired access tokenThe token is older than 60 days, or the member revoked it.Send the member through OAuth again.
403 ACCESS_DENIEDThe app lacks w_member_social or w_organization_social, or the member has no posting role on the Page.Add the product, or ask a Page admin for the Content admin role.
422 Content is a duplicate of urn:li:share:…The same text went out a moment ago.Change the text, or wait 10 minutes.
429 …a share limit has been reachedThe member's daily limit or the app's throttle.Back off until the reset at midnight UTC.
400 VERSION_MISSINGNo Linkedin-Version header.Send one, such as 202609.
426 NONEXISTENT_VERSIONThe version was sunset. 202510 stops on October 15, 2026.Move to a supported version.

LinkedIn API limitsRate limits, text and media.

  • RequestsShare on LinkedIn: 150 requests per member and 100,000 per app a day, reset at midnight UTC. LinkedIn emails you at 75% of the app's limit.
  • Text3,000 characters. Reserved characters (| { } @ [ ] ( ) < > # \ * _ ~) must be escaped with a backslash, even as plain text.
  • ImagesJPG, GIF or PNG under 36,152,320 pixels, GIFs up to 250 frames. A multi-image post takes 2 to 20 images.
  • VideoMP4, 3 seconds to 30 minutes and 75 KB to 500 MB, uploaded in 4 MB parts.
  • Documents and pollsPDF, PPT, PPTX, DOC or DOCX up to 100 MB and 300 pages. Polls take 2 to 4 options of up to 30 characters and run 1 to 14 days.

Is the LinkedIn API free?

Yes. LinkedIn's API Terms of Use say the APIs are currently provided for free, and that LinkedIn may charge for them later. The developer docs have no price list.

What costs is access. Share on LinkedIn is open to any developer but only posts to the member's own profile. Company Pages, post analytics and refresh tokens sit behind the Community Management API and partner programs, which only registered companies can request, through reviews with no published timeline.

Through Breakreach, a LinkedIn account counts like any other network: the first 2 connected accounts are free, then $5 a month each up to 20, $3 up to 100 and $2 after that.

Ways to post to LinkedIn from code

What you set upPricePosts to LinkedIn
BreakreachAn API key. Accounts connect through Breakreach's reviewed apps, or your users connect theirs on a hosted pageFirst 2 accounts free, then $5 a month per account (less from 21)Yes, Personal profiles
LinkedIn's own APIA LinkedIn app; Community Management vetting for PagesFreeYes
Upload-PostAn API keyFree for 2 profiles and 10 uploads a month; Basic $24 a month for 5 profilesYes
ZernioAn API keyFirst 2 accounts free, then $6 per account up to 10, $3 up to 100, $1 afterYes
AyrshareAn API keyFrom $149 a month for 1 profile, no free planYes
OutstandAn API key$19 a month for 3,000 posts, then per postYes
Checked on October 6, 2026, from LinkedIn's developer documentation and each company's pricing page. Breakreach is our product.

What the LinkedIn API can't do

  • Schedule: the only lifecycleState accepted on create is PUBLISHED
  • Read your own posts: r_member_social is closed to new requests
  • Post analytics or Company Page posts with Share on LinkedIn alone
  • Organic carousels: carousels are for ads only
  • Fetch a link preview: you set the article's title, description and thumbnail

Post to LinkedIn with Breakreach's APIOne request, scheduled, with retries.

POST /v1/posts
curl https://api.breakreach.com/v1/posts \  -H "Authorization: Bearer $BREAKREACH_API_KEY" \  -H "Content-Type: application/json" \  -d '{    "content": "We planned three blends for the fall. We launched one.",    "accountIds": ["6701a2f4c9e84b0012a3b4c6"],    "media": ["https://cdn.northbeam.coffee/roastery.jpg"],    "scheduledAt": "2026-10-07T09:00:00"  }'

What it posts on LinkedIn

  • Text postsUp to 3,000 characters on the member's personal profile.
  • An imageOne image with the text. If LinkedIn refuses the image, the text still goes out.
  • SchedulingscheduledAt in your workspace's timezone, useNextSlot, publishNow, or a draft to approve in the app.
  • Connection healthGET /v1/accounts warns 14 days before a LinkedIn connection lapses, so you can ask for a reconnect.

Not yet

  • Company Pages
  • Video, documents and polls
  • Post stats and comments

The full reference, webhooks and the price per connected account are on the developers page, and the OpenAPI spec is at api.breakreach.com/v1/openapi.json.

FAQ

Questions, answered.

Short answers about the LinkedIn API.

Yes. LinkedIn's API Terms of Use say the APIs are currently free, with the right to charge later. Access is what's limited: Company Pages and analytics need the Community Management API, for registered companies only.

Yes. Share on LinkedIn gives any app the w_member_social permission to post on the signed-in member's profile, with no review. Posts go through POST /rest/posts.

Only with the Community Management API (w_organization_social), which LinkedIn opens to registered legal organizations after vetting, and with a member who's an admin or content admin of the Page.

Share on LinkedIn needs none. For the Community Management API, LinkedIn publishes no timeline: restricted APIs are evaluated case by case. Its only official figure is up to 30 business days for the Advertising API's Standard upgrade.

60 days. Programmatic refresh tokens, valid 365 days, are only for a limited set of approved partners; other apps send the member through OAuth again.

Not with LinkedIn's API: a post is published when you create it. Scheduling means running your own job, or using an API like Breakreach that holds the post until scheduledAt.

The first 2 connected accounts are free; from the third it's $5 a month per account up to 20, $3 up to 100, then $2. You pay per connected account, never per post or per request.

Instagram
TikTok
LinkedIn
YouTube
X
Facebook
Threads

Put your socials on autopilot.Live in two minutes.

Plans from $29 a month. Cancel anytime.