# n8n LinkedIn Automation: HTTP Requests and Webhooks | SalesMix

> Automate LinkedIn outreach in n8n: enroll leads with the HTTP Request node and start workflows from SalesMix webhooks like message.replied. No custom node.

URL: https://salesmix.com/integrations/n8n
Last updated: 2026-11-03

# n8n LinkedIn automation: LinkedIn outreach inside your n8n workflows.

Use two built-in n8n nodes: HTTP Request to enroll leads and manage sequences, and Webhook to react when someone accepts or replies.

**In short** 

In n8n, call the SalesMix REST API (base URL `https://api.salesmix.com/v1`) from an HTTP Request node to enroll leads, and receive SalesMix events like `message.replied` in a Webhook node. No community node or custom code is needed.

Updated November 3, 2026

## What you can build

-   **Form or CRM to LinkedIn.** A new signup, a Google Sheets row or a CRM stage change enrolls the person in a LinkedIn sequence.
-   **Reply routing.** Interested replies go to Slack, your CRM or a task tool, with the conversation attached.
-   **AI triage with a human check.** Draft a response with an LLM node, then queue it in SalesMix Approvals instead of sending it blind.
-   **Ops alerts.** Get notified when an account hits its daily limit with `account.limit_reached`.

## Step 1: Store your API key as an n8n credential

Create an API key in SalesMix, then add a Header Auth credential in n8n with the name `Authorization` and the value `Bearer YOUR_KEY`. Every HTTP Request node can reuse it.

## Step 2: Enroll leads with the HTTP Request node

Add an HTTP Request node after whatever produces your leads. Set the method to POST and the URL to your sequence's leads endpoint. Turn on "Send Body" with JSON and map fields with n8n expressions.

**POSTn8n → HTTP Request node**

```
// URL
https://api.salesmix.com/v1/sequences/seq_8Fk2/leads

// Headers (Authorization comes from the credential)
Idempotency-Key: {{ $json.id }}

// JSON body
{ "leads": [{
    "linkedin_url": "{{ $json.linkedin_url }}",
    "first_name": "{{ $json.first_name }}",
    "company": "{{ $json.company }}",
    "custom": { "source": "{{ $json.source }}" }
  }] }

// → 202 Accepted
{ "enrolled": 1, "skipped_duplicates": 0 }
```

Fields inside `custom` become message variables, so `source` is available as `{{source}}` in your sequence. The same node pattern works for any other endpoint on the [API reference](https://salesmix.com/api), such as pausing a sequence or replying to a conversation.

## Step 3: Receive SalesMix events with the Webhook node

Add a Webhook node as the trigger of a new workflow, set it to accept POST, and copy its production URL. Then subscribe that URL to the events you care about with one API call (you can make it from another HTTP Request node).

**POST/v1/webhooks**

```
{
  "url": "https://your-n8n-host/webhook/salesmix-replies",
  "events": ["message.replied", "connection.accepted"]
}
```

Each event is a signed POST with the lead, account, sequence and step attached, and replies include an intent label. Add an IF node on the intent to route interested replies one way and everything else another.

## Useful SalesMix events for n8n

| Event | Fires when | Common n8n use |
| --- | --- | --- |
| message.replied | A lead replies, with an intent label | Notify Slack, update the CRM |
| connection.accepted | A lead accepts the invite | Enrich the contact, add to a nurture list |
| lead.intent_changed | Intent moves, e.g. to interested | Create a deal or task |
| email.handoff | A lead is handed to your email sequencer | Log the handoff in a sheet |
| approval.requested | A draft waits for review | Ping the account owner |
| account.limit_reached | An account hits its daily cap | Alert ops |

The full list is on the [webhooks section of the API page](https://salesmix.com/api#webhooks). Prefer working with AI agents directly? The [SalesMix MCP server](https://salesmix.com/mcp) gives Claude or Cursor the same actions, with approvals.

## Before you scale an n8n workflow

Automations make it easy to enroll thousands of leads at once. That's fine: SalesMix queues them and sends from each account at its own safe daily pace, spread across your connected accounts. If you need more volume, add accounts rather than pushing one harder. Starter covers up to 5 accounts for $99/mo, and Unlimited has no cap. See [pricing](https://salesmix.com/pricing).

**FAQ** 

## n8n integration questions

### ### Is there a SalesMix node for n8n?

You don’t need one. The built-in HTTP Request node calls any SalesMix API endpoint, and the Webhook node receives SalesMix events. Both work on n8n Cloud and self-hosted n8n.

### ### How do I enroll leads from n8n?

Add an HTTP Request node that sends a POST to `https://api.salesmix.com/v1/sequences/<id>/leads` with your API key as a Bearer token and the lead’s LinkedIn URL in the JSON body. Up to 1,000 leads fit in one call.

### ### How do I trigger an n8n workflow when someone replies on LinkedIn?

Create a Webhook node in n8n, copy its production URL, and subscribe it to the `message.replied` event with `POST /v1/webhooks`. Every reply then starts the workflow with the lead, account, sequence and intent label.

### ### What if n8n retries a request?

Send an `Idempotency-Key` header, such as the source record ID. A retried request returns the original result instead of enrolling the lead twice.

### ### Can n8n send messages faster than LinkedIn allows?

No. The API queues work and every action still goes out inside each account’s daily limits and working hours. See the [LinkedIn limits guide](https://salesmix.com/guides/linkedin-automation-limits).

## Keep exploring

[LinkedIn automation API Endpoints, webhooks and the OpenAPI spec.](https://salesmix.com/api)[Clay LinkedIn automation Send Clay rows into sequences.](https://salesmix.com/integrations/clay)[HubSpot LinkedIn automation Import lists and sync replies.](https://salesmix.com/integrations/hubspot)

## Two nodes. Every LinkedIn account.

[Start free trial](https://app.salesmix.com/signup) [Read the API docs](https://salesmix.com/api)
