LinkedIn Integrations for n8n, Zapier and Make
Every one of these platforms already ships a LinkedIn app, and outreach is the one thing none of them will do for you.
n8n, Zapier and Make all ship a built-in LinkedIn integration, and all three of them publish content. The n8n node has a single operation, Create a post. Zapier’s app has two share actions and no triggers at all. Make’s covers posts and follower statistics. To send a connection request or a message from a workflow you call an account-based LinkedIn API from the platform’s HTTP step.
That second half is where the account is at stake, and a workflow platform has no way to protect it: a scheduler fires whatever it was told to fire. Across 20,000+ LinkedIn accounts, gtm-api.com reports under a 1% ban rate behind server-side limits, which is the layer that has to sit between a workflow and LinkedIn.
On this page
What each platform’s LinkedIn app actually does
All three built-in apps are wrappers around LinkedIn’s official Share and Pages products, so they do what those products do: publish a post, publish to a company page, and read a few page statistics. Search, connections, messages and inbound events are outside all of them. The table is the whole picture, verified against each platform’s own documentation in August 2026.
| Route | Publish a post | Company page | Search people | Connection request | Direct message | Trigger on a LinkedIn event |
|---|---|---|---|---|---|---|
| Account-based API from an HTTP step | Yes | Yes | Yes, incl. Sales Navigator | Yes | Yes, incl. InMail | Webhooks, per event type |
| n8n LinkedIn node | Yes, as person or organization | Yes, as organization | No | No | No | No |
| Zapier LinkedIn app | Create Share Update | Create Company Update | No | No | No | No triggers at all |
| Make LinkedIn app | Text, image and video posts | Posts and follower stats | No | No | No | Watch company posts only |
n8n’s own documentation says the quiet part out loud on the node’s reference page: “If this node doesn’t support the operation you want to do, you can use the HTTP Request node to call the service’s API.” That sentence is the real integration path on every one of these platforms, and the rest of this page is about which API you point it at.
Why none of them can send a connection request
The gap is upstream of the platforms. LinkedIn documents an Invitations API and a Messages API, and both sit inside its Compliance program, which LinkedIn lists as closed to new applications. The published scopes grant no sending, and the program’s terms require the member to compose and send each message themselves. A public app on a marketplace cannot ship an action it has no legal path to call.
So a LinkedIn integration built on the official API can only reach the products that are self-serve, and those are Share on LinkedIn and Sign In with LinkedIn. That is exactly the shape of all three built-in apps. The full map of what LinkedIn opens, what needs partner approval and what is closed outright is on LinkedIn API: the developer guide, with the application paths on How to get LinkedIn API access.
Everything else in this article runs on the other model. An account-based API acts through a LinkedIn account you connect yourself, in an isolated cloud browser session with its own proxy, so the actions available are the ones a member has: search, invite, message, enrich, engage.
What an account-based API adds to a workflow
One credential and a normal HTTP step gives a workflow the outreach half of LinkedIn. The calls are typed REST, they return parsed objects, and every outward action passes a server-side budget before it reaches LinkedIn. Nothing about the platform changes: the same node, module or webhook step that talks to any other API talks to this one.
curl -X POST https://app.gtm-api.com/linkedin/v4/api/linkedin-connection-requests/send \
-H "Authorization: Bearer $GTM_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"linkedin_account_sid": "ln_ac_...", "profile_id": "ACoAA...", "note": "..."}'
Inbound events are the half a scheduler cannot fake. A polling workflow that checks for new replies every five minutes burns capacity on the account and still arrives late. Webhook subscriptions push the event instead, and each subscription names the event types it wants.
- Invitation accepted.
linkedin-connection-requests.acceptedfires when the person on the other end accepts, which is the trigger most sequences are really waiting for. - Reply received.
linkedin-messages.receivedcovers the inbound message, andlinkedin-messages.sentconfirms an outbound one landed. - Limit reached.
linkedin-account-smart-limits.limit-reachedtells the workflow the account is out of budget for that action, before the next step wastes an attempt. - Account trouble.
linkedin-accounts.login-failedandlinkedin-account-block-log.recordedsurface a session or an enforcement problem while it is still recoverable.
LinkedIn in n8n
Two routes, and which one you want depends on whether the workflow has an AI agent in it. For a deterministic workflow, use the HTTP Request node with a header-auth credential. For an agent workflow, n8n ships an MCP Client Tool node that attaches an external MCP server and hands its tools to the agent, with bearer and OAuth2 credentials supported.
The HTTP Request setup is three fields. Create a Header Auth credential with the name Authorization and the value Bearer followed by your token, set the node’s method to POST and the URL to the endpoint you want, and put the request body in as JSON. Because everything is one host and one credential, adding a second action later is a copy of the node with a new path.
For the trigger side, an n8n Webhook node gives you a public URL, and that URL goes into a webhook subscription with the event types above. The built-in LinkedIn node stays useful for what it does well, publishing posts, and the two can sit in the same workflow on separate credentials. Self-hosted instances have had a third route since late August 2026: the n8n-nodes-gtm-api community node wraps the invitation, message, enrichment and people-search calls and adds a trigger on three LinkedIn events, covered on n8n LinkedIn node.
LinkedIn in Zapier
Zapier’s LinkedIn app has no triggers, so any Zap that starts from something happening on LinkedIn needs an inbound webhook. Catch Hook in Webhooks by Zapier gives you the URL, the subscription points at it, and the Zap runs on the event rather than on a schedule. That is also the cheaper design, because a polling Zap consumes tasks whether or not anything happened.
On the action side, Webhooks by Zapier POST is the general-purpose step: your endpoint URL, JSON payload, and the token in an Authorization header. Zapier’s own LinkedIn app also carries an API Request action in beta for raw calls, and that one is scoped to LinkedIn’s official API, so it inherits the same limits as the rest of the app.
Zapier also ships an MCP Client, in beta, which connects to a remote MCP server by URL. Its help documentation is specific about the constraint: “MCP Client only supports connecting to remote MCP servers that use either Streamable HTTP and SSE for their transport methods.” Both are supported here, and the connection authenticates over OAuth, so there is no key to paste into a Zap. The app’s three actions, the plan rule that decides which route you can reach, and the task cost of each design are on Zapier LinkedIn integration.
LinkedIn in Make
Make’s LinkedIn app is the broadest of the three built-ins, with user and company posts, a Watch company posts trigger and four follower and share statistics modules. It is still a publishing app, and its Make an API call module is scoped to LinkedIn’s own API.
For an account-based API, use the generic HTTP module, which is the same pattern as the other two platforms: a POST to the endpoint, the token in an Authorization header, JSON in the body. Make’s Custom webhook module handles the inbound side and gives a URL to subscribe. Scenario scheduling stays where it is, and the send budget is enforced on the server whatever interval the scenario runs on.
Keeping the account alive when a workflow does the sending
A workflow platform is a good scheduler and a poor guardrail. It fires what it was told to fire, at the interval it was told to use, and it will happily push a 200-row spreadsheet into a LinkedIn send step at nine in the morning. LinkedIn reads that as one account doing something no member does. The protection has to live below the workflow, on the server that makes the call.
Four mechanisms do that work, and a workflow inherits all four without configuring any of them.
- Per-action daily budgets that move with the account. Each action type has its own ceiling, computed from the account’s age, history and activity, and it rises as the account warms up. A new account starts at a fraction of a seasoned one. The published caps this stays under are on LinkedIn limits.
- Randomised pacing. Bulk actions are spread over a randomised interval per item, because a fixed tick is itself a signature. Invitations, messages and engagement actions each get their own spacing.
- One session per account. Each connected account runs in a single anti-detect browser profile with a dedicated proxy, and the platform will not open a second session for it. Session and IP spread is one of the inputs that lowers an account’s own limits, which is covered on Safe LinkedIn automation.
- Counting only successes. The daily counter increments when LinkedIn confirms the action, so a failure costs no budget. When LinkedIn does refuse, the account pauses on that action for the real recovery window and the refusal feeds the next limit recompute downward.
What this means for the workflow author is that a queue is safe to hand over. Push the whole list, let the server pace it, and subscribe to the limit event if the workflow needs to know. The arithmetic of how many accounts a target volume actually needs is on Scaling LinkedIn outreach.
Frequently Asked Questions
Does n8n have a native LinkedIn node?
Yes, and it has one operation. The built-in LinkedIn node creates a post, as a person or as an organization, with text, an image or an article URL. It has no trigger and no other resource. n8n’s documentation points anything else at the HTTP Request node, which is how a third-party LinkedIn API gets called from an n8n workflow.
Can Zapier send a LinkedIn connection request?
Not through Zapier’s LinkedIn app, which offers Create Share Update, Create Company Update and a beta raw API Request action, all of them scoped to LinkedIn’s official API. It also has no triggers. A connection request from a Zap goes out through Webhooks by Zapier to an account-based LinkedIn API, or through Zapier’s MCP Client if the Zap is agent-driven.
Do I need LinkedIn API access approval to use LinkedIn in a workflow?
For the built-in apps, no. They run on LinkedIn products that are self-serve, which is also why they are limited to publishing. For search, invitations and messages there is no approval to apply for, because the LinkedIn programs that cover those actions are closed to new applicants. An account-based API needs a LinkedIn account you connect and no LinkedIn approval at all.
What LinkedIn events can trigger a workflow?
Almost none through the built-in apps: Make can watch company posts, and Zapier and n8n offer no LinkedIn trigger. Through an account-based API the workflow subscribes a webhook URL to named event types, including an invitation being accepted, a message received or sent, a per-action limit being reached, and a login or block event on the account.
Can I use the built-in LinkedIn app and an account-based API in the same workflow?
Yes. They authenticate separately and do different jobs, so a common shape is the built-in app publishing a post and an HTTP step handling the search, the invitation and the follow-up message. The two never contend for the same credential, and only the account-based half consumes the connected account’s sending budget.
Read next on this topic
Sources & Further Reading
- n8n, LinkedIn node reference (the single Post: Create operation, and the HTTP Request fallback quoted above), read 20 August 2026
- n8n, MCP Client Tool node (bearer and OAuth2 credentials for an external MCP server), read 20 August 2026
- Zapier, LinkedIn integrations (the two share actions, the beta API Request action, and the absence of triggers), read 20 August 2026
- Zapier, Connect custom MCP servers to Zapier (the MCP Client beta and the transport quote above), read 20 August 2026
- Make, LinkedIn app modules (user and company posts, Watch company posts, follower statistics), read 20 August 2026
- gtm-api.com, developer documentation (the endpoint and webhook event names used above)
- Related: LinkedIn API: the developer guide · LinkedIn MCP server · How to get LinkedIn API access · LinkedIn limits · Safe LinkedIn automation · Automate LinkedIn with n8n · n8n LinkedIn node · Zapier LinkedIn integration
Give your workflow the half LinkedIn does not open.
Search, invitations, messages and webhooks from any HTTP step, on accounts you connect, inside budgets the server enforces. On that stack, gtm-api.com reports 20,000+ accounts at under a 1% ban rate. Free plan, then from $10 per account at volume.
Last updated: September 2026 · Platform capabilities re-read on each vendor’s own documentation on 20 August 2026, the n8n community node added 2 September 2026
