Linkedin native node not working

Describe the problem/error/question

This was working until yesterday! Can you please check and advise

Your request is invalid or could not be processed by the service

Requested version 20250401 is not active

What is the error message (if any)?

Please share your workflow

(Select the nodes on your canvas and use the keyboard shortcuts CMD+C/CTRL+C and CMD+V/CTRL+V to copy and paste the workflow.)

Share the output returned by the last node

Information on your n8n setup

  • n8n version: 2.16.1
  • Database (default: SQLite):
  • n8n EXECUTIONS_PROCESS setting (default: own, main): https://github.com/n8n-io/n8n
  • Running n8n via (Docker, npm, n8n cloud, desktop app): on Hostinger VPS
  • Operating system:

Hi @Benjamin_Behrens , thanks for your response.

  1. n8n_version: 2.16.1
  2. This is the latest version of the node as is the n8n version. I am on Hostinger VPS.
  3. This is the native LinkedIn Node

Hello, I hope you’re doing well!

Root cause: LinkedIn periodically deactivates older API versions. The LinkedIn node on n8n sends a LinkedIn-Version: 20250401 header in all requests. LinkedIn has deactivated this version, causing all requests to fail with the following message:

The requested version 20250401 is not active

Two options to fix this:


Option 1 — Update n8n (permanent fix recommended)

The n8n maintainers usually fix this issue quickly. Since you are using a Hostinger VPS with Docker:

docker pull n8nio/n8n:latest
docker-compose down && docker-compose up -d

Check https://github.com/n8n-io/n8n/releases to confirm if a fix has been released. Also check the reported issues on GitHub to find a PR with the fix.


Option 2 — Workaround with HTTP Request Node (immediate)

Replace the LinkedIn node with an HTTP Request node:

  1. Add an HTTP Request node
  2. Set AuthenticationGeneric Credential Type → select your LinkedIn OAuth2 credential
  3. Set the endpoint (e.g., https://api.linkedin.com/v2/ugcPosts for publishing)
  4. Manually add a Header:
  1. Set your Body to JSON with the same payload you were using before

This completely bypasses The version coded in the native node.


Check the active LinkedIn API version at:
https://learn.microsoft.com/en-us/linkedin/shared/api-guide/changelog

Relevant documentation: https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.linkedin/

I hope this helps! If it solved your problem, mark this answer as a solution.

I hope this helps.

Mark this answer as resolved if it solved your problem. This way, it prevents the community from having to answer the same question.

Leave your like by clicking the heart button.

All the best!

I’m running into the same issue here. I’ve already updated n8n to the latest version, but the problem still persists. Has anyone found a working fix or workaround for this?

Thanks @anon61017519, I have raised the issue Linkedin native node not working · Issue #28559 · n8n-io/n8n
Have been following it for updates. Seems like they have implemented the fix. Will wait for it to update.

Hello !

Même problème ici, n8n mis à jour à la dernière version également mais rien n’y fait. fuck

Fixed mine — here’s the assumed complete fix for every install type AFAIK

Same issue hit me today and last year but this year the fix is way more complicated!! The root cause is that the LinkedIn node has the API version hardcoded as 202504, which LinkedIn deactivated after its one-year support window. PR #28564 has been opened to fix it but until that ships here is how to fix it yourself depending on how you have n8n installed.


How to figure out which fix applies to you

Run this:

docker ps | grep n8n

If you see your n8n container listed, you are on Docker. If nothing comes back, you are running n8n natively via npm/node.


Option 1 — Docker (self-hosted)

The file is compiled JavaScript buried inside the container at a pnpm hash path that is different for every n8n version. The container filesystem is also read-only so you cannot edit in place. You have to copy the file out, edit it on your host machine, then copy it back.

Save this as fix-linkedin.sh and run it from your host machine (not inside the container):

#!/bin/bash

CONTAINER="n8n"

# Find the file regardless of pnpm hash path
FILE_PATH=$(docker exec $CONTAINER find /usr/local/lib/node_modules/n8n/node_modules/.pnpm -path "*/LinkedIn/GenericFunctions.js" 2>/dev/null)

if [ -z "$FILE_PATH" ]; then
  echo "Could not find GenericFunctions.js inside container!"
  exit 1
fi

echo "Found file at: $FILE_PATH"

docker cp $CONTAINER:$FILE_PATH ~/GenericFunctions.js

# Detect OS and run the correct sed command
if [[ "$OSTYPE" == "darwin"* ]]; then
  # Mac
  sed -i '' "s/'LinkedIn-Version': '202504'/'LinkedIn-Version': '202604'/" ~/GenericFunctions.js
elif [[ "$OSTYPE" == "msys"* ]] || [[ "$OSTYPE" == "cygwin"* ]] || [[ "$OSTYPE" == "win32"* ]]; then
  # Windows (Git Bash, Cygwin, or WSL)
  sed -i "s/'LinkedIn-Version': '202504'/'LinkedIn-Version': '202604'/" ~/GenericFunctions.js
else
  # Linux
  sed -i "s/'LinkedIn-Version': '202504'/'LinkedIn-Version': '202604'/" ~/GenericFunctions.js
fi

docker cp ~/GenericFunctions.js $CONTAINER:$FILE_PATH
docker restart $CONTAINER

echo "Done! LinkedIn API version updated to 202604."

Mac/Linux — to run it:

chmod +x fix-linkedin.sh && ./fix-linkedin.sh

Windows — run it in Git Bash or WSL:

bash fix-linkedin.sh

Note: if your container name is not n8n, change the CONTAINER variable at the top. Run docker ps to check your container name.


Option 2 — npm / native Node install

If you installed n8n globally via npm you have the TypeScript source available and can edit it directly. Find the file:

Mac/Linux:

find / -path "*/LinkedIn/GenericFunctions.ts" 2>/dev/null

Windows (PowerShell):

Get-ChildItem -Path "C:\" -Recurse -Filter "GenericFunctions.ts" -ErrorAction SilentlyContinue | Where-Object { $_.FullName -like "*LinkedIn*" }

Open the file in any text editor, find this line:

'LinkedIn-Version': '202504',

Change it to:

'LinkedIn-Version': '202604',

Save the file and restart n8n.


Why 202604 and not 20260401?

LinkedIn versions use YYYYMM format (6 digits, no day). So 202604 means April 2026 and will be valid for a full year. The 20250401 format in the error message is a red herring, that is just how the old n8n node was formatting it incorrectly.


Permanent fix: once n8n releases a version with PR #28564 merged, just update your instance normally and this will be fixed for good. If you pay for cloud hosting with n8n directly your stuck with a broken node and will have to use the API node as previously suggested by @anon61017519, or wait till they push the fix out to the cloud edition/version.

In addition to my suggested manual fix above if anybody working at N8N reads this then I would highly suggest and almost beg you guys to have a proactive tickler knowing that this thing breaks every year… this is the 2nd year this is broken for me an others. So, if we could have a proactive fix for 2027 that would be absolutely awesome!! Build it into your CI/CD build process and when X date elapses to Y then automatically update the repo with the updated line, so that the code that gets posted, is then proactivly fixed…( please??? ).

@Ray007 while you wait on that PR to ship, bypass the native node with an HTTP Request node using Linkedin-Version: 202604 which is the current active version, 202504 got sunset which is why you’re getting that error

plug your LinkedIn OAuth2 creds into the HTTP Request node and swap YOUR_PERSON_ID with your LinkedIn person URN, you can grab it from https://api.linkedin.com/v2/userinfo with your token

Looks like they implemented the fix.