Back to Integrations
integrationWebhook node
integrationLinkedIn node

Webhook and LinkedIn integration

Save yourself the work of writing custom integrations for Webhook and LinkedIn and use n8n instead. Build adaptable and scalable Development, Core Nodes, Marketing, and Communication workflows that work with your technology stack. All within a building experience you will love.

How to connect Webhook and LinkedIn

  • Step 1: Create a new workflow
  • Step 2: Add and configure nodes
  • Step 3: Connect
  • Step 4: Customize and extend your integration
  • Step 5: Test and activate your workflow

Step 1: Create a new workflow and add the first step

In n8n, click the "Add workflow" button in the Workflows tab to create a new workflow. Add the starting point – a trigger on when your workflow should run: an app event, a schedule, a webhook call, another workflow, an AI chat, or a manual trigger. Sometimes, the HTTP Request node might already serve as your starting point.

Webhook and LinkedIn integration: Create a new workflow and add the first step

Step 2: Add and configure Webhook and LinkedIn nodes

You can find Webhook and LinkedIn in the nodes panel. Drag them onto your workflow canvas, selecting their actions. Click each node, choose a credential, and authenticate to grant n8n access. Configure Webhook and LinkedIn nodes one by one: input data on the left, parameters in the middle, and output data on the right.

Webhook and LinkedIn integration: Add and configure Webhook and LinkedIn nodes

Step 3: Connect Webhook and LinkedIn

A connection establishes a link between Webhook and LinkedIn (or vice versa) to route data through the workflow. Data flows from the output of one node to the input of another. You can have single or multiple connections for each node.

Webhook and LinkedIn integration: Connect Webhook and LinkedIn

Step 4: Customize and extend your Webhook and LinkedIn integration

Use n8n's core nodes such as If, Split Out, Merge, and others to transform and manipulate data. Write custom JavaScript or Python in the Code node and run it as a step in your workflow. Connect Webhook and LinkedIn with any of n8n’s 1000+ integrations, and incorporate advanced AI logic into your workflows.

Webhook and LinkedIn integration: Customize and extend your Webhook and LinkedIn integration

Step 5: Test and activate your Webhook and LinkedIn workflow

Save and run the workflow to see if everything works as expected. Based on your configuration, data should flow from Webhook to LinkedIn or vice versa. Easily debug your workflow: you can check past executions to isolate and fix the mistake. Once you've tested everything, make sure to save your workflow and activate it.

Webhook and LinkedIn integration: Test and activate your Webhook and LinkedIn workflow

Extract trends, auto-generate social content with AI, Reddit, Google & post

Extract Trends and Auto-Generate Social Media Content with OpenAI, Reddit, and Google Trends: Approve and Post to Instagram, TikTok, and More

Description
What Problem Does This Solve? 🛠️
This workflow automates trend extraction and social media content creation for businesses and marketers. It eliminates manual trend research and content generation by fetching trends, scoring them with AI, and posting tailored content to multiple platforms. Target audience: Social media managers, digital marketers, and businesses aiming to streamline content strategies.

What Does It Do? 🌟
Fetches trending topics from Reddit, X and Google Trends
Scores trends for relevance using OpenAI.
Generates content for Twitter/X, LinkedIn, Instagram and Facebook
Posts to supported platforms
Stores results in Google Sheets for tracking

Key Features 📋
Real-time trend fetching from Reddit and Google Trends.
AI-driven trend scoring and content generation (OpenAI).
Automated posting to Twitter/X, LinkedIn, Instagram, and Facebook.
Persistent storage in Google Sheets.
Setup Instructions

Prerequisites ⚙️
n8n Instance**: Self-hosted or cloud n8n instance.
API Credentials**:
Reddit API: Client ID and secret from Reddit.
SerpApi (Google Trends): API key from SerpApi, stored in n8n credentials
OpenAI API: API key with GPT model access.
Twitter/X API: OAuth 1.0a credentials with write permissions.
LinkedIn API: OAuth 2.0 credentials with w_organization_social scope.
Instagram/Facebook API: Meta Developer app with posting permissions.
Google Sheets API: Credentials from Google Cloud Console.

Installation Steps 📦
Import the Workflow:
Copy the workflow JSON from the "Template Code" section below.
Import it into n8n via "Import from File" or "Import from URL".
Configure Credentials:
Add API credentials in n8n’s Credentials section for Reddit, SerpApi, OpenAI, Twitter/X, LinkedIn, Instagram/Facebook, and Google Sheets.
Assign credentials to respective nodes. For example:
In the Fetch Google Trends node (HTTP Request), use n8n credentials for SerpApi instead of hardcoding the API key.
Example: Set the API key in n8n credentials as SerpApiKey and reference it in the node’s query parameter: api_key={{ $credentials.SerpApiKey }}.
Set Up Google Sheets with the following columns (exact column names are case-sensitive)
-Timestamp | Trend | Score | BrandVoice | AudienceMood |

Customize Nodes:
OpenAI Nodes** (Trend Relevance Scoring, Generate Social Media Content): Update the model (e.g., gpt-4o) and prompt as needed.
HTTP Request Nodes** (Post to Twitter/X, Post to LinkedIn, etc.): Verify URLs, authentication, and payloads.
Brand Voice/Audience Mood**: Adjust Prepare Trend Scoring Input for your desired brand_voice (e.g., "casual") and audience_mood (e.g., "curious").
Test the Workflow:
Fetch Reddit Trends to Store Selected Trends- to score and store trends.
Retrieve Latest Trends to end) to generate and post content
Check Google Sheets for posting statuses
How It Works

High-Level Steps 🔍
Fetch Trends**: Pulls trends from Reddit,X and Google Trends.
Score Trends**: Uses OpenAI to score trends for relevance.
Generate Content**: Creates platform-specific social media content.
Post Content**: Posts to LinkedIn, Facebook or X

Detailed descriptions are available in the sticky notes within the workflow screenshot above.

Node Names and Actions

Trend Extraction and Scoring
Daily Trigger Idea: Triggers the workflow daily.
Set Default Inputs: Sets default brand_voice and inputs.
Fetch Reddit Trends: Fetches Reddit posts.
Extract Reddit Trends: Extracts trends from Reddit.
Fetch Google Trends: Fetches Google Trends via SerpApi.
Extract Google Trends2: Processes Google Trends data.
Fetch Twitter Mentions: Fetches Twitter mentions.
Translate Tweets to English: Translates tweets.
Fix Tweet Translation Output: Fixes translation format.
Detect Audience Mood: Detects audience mood.
Fix Audience Mood Output: Fixes mood output format.
Analyze News Sentiment: Analyzes news sentiment.
Combine Data (Merge): Merges all data sources.
Merge Items into Single Item: Combines data into one item.
Combine Trends and UGC: Combines trends with UGC.
Prepare Trend Scoring Input: Prepares data for scoring.
Trend Relevance Scoring: Scores trends with OpenAI.
Parse Trend Scores: Parses scoring output.
Store Selected Trends: Stores trends in Google Sheets.

Content Generation and Posting
Retrieve Latest Trends: Retrieves trends from Google Sheets.
Parse Retrieved Trends: Parses retrieved trends.
Select Top Trends: Selects the top trend.
Generate Social Media Content: Generates platform-specific content.
Parse Social Media Content: Parses generated content.
Generate Images: Generates images for posts (if applicable).
-Handle Approvals/Rejection before Posting
Post to Instagram: Posts to Instagram.
Post to Facebook: Posts to Facebook.
Post to LinkedIn: Posts to LinkedIn.

Customization Tips

Add Trend Sources** 📡: Include more sources (e.g., Instagram trends) by adding nodes to Combine Data (Merge).
Change Content Tone** ✍️: Update the Generate Social Media Content prompt for a different tone (e.g., "humorous").
Adjust Schedule** ⏰: Modify Daily Trigger Idea to run hourly or weekly.
Automate TikTok/YouTube** 🎥: Add video generation (e.g., FFMPEG) to post TikTok and YouTube Shorts

Nodes used in this workflow

Popular Webhook and LinkedIn workflows

+3

Extract Trends, Auto-Generate Social Content with AI, Reddit, Google & Post

Extract Trends and Auto-Generate Social Media Content with OpenAI, Reddit, and Google Trends: Approve and Post to Instagram, TikTok, and More Description What Problem Does This Solve? 🛠️ This workflow automates trend extraction and social media content creation for businesses and marketers. It eliminates manual trend research and content generation by fetching trends, scoring them with AI, and posting tailored content to multiple platforms. Target audience: Social media managers, digital marketers, and businesses aiming to streamline content strategies. What Does It Do? 🌟 Fetches trending topics from Reddit, X and Google Trends Scores trends for relevance using OpenAI. Generates content for Twitter/X, LinkedIn, Instagram and Facebook Posts to supported platforms Stores results in Google Sheets for tracking Key Features 📋 Real-time trend fetching from Reddit and Google Trends. AI-driven trend scoring and content generation (OpenAI). Automated posting to Twitter/X, LinkedIn, Instagram, and Facebook. Persistent storage in Google Sheets. Setup Instructions Prerequisites ⚙️ n8n Instance**: Self-hosted or cloud n8n instance. API Credentials**: Reddit API: Client ID and secret from Reddit. SerpApi (Google Trends): API key from SerpApi, stored in n8n credentials OpenAI API: API key with GPT model access. Twitter/X API: OAuth 1.0a credentials with write permissions. LinkedIn API: OAuth 2.0 credentials with w_organization_social scope. Instagram/Facebook API: Meta Developer app with posting permissions. Google Sheets API: Credentials from Google Cloud Console. Installation Steps 📦 Import the Workflow: Copy the workflow JSON from the "Template Code" section below. Import it into n8n via "Import from File" or "Import from URL". Configure Credentials: Add API credentials in n8n’s Credentials section for Reddit, SerpApi, OpenAI, Twitter/X, LinkedIn, Instagram/Facebook, and Google Sheets. Assign credentials to respective nodes. For example: In the Fetch Google Trends node (HTTP Request), use n8n credentials for SerpApi instead of hardcoding the API key. Example: Set the API key in n8n credentials as SerpApiKey and reference it in the node’s query parameter: api_key={{ $credentials.SerpApiKey }}. Set Up Google Sheets with the following columns (exact column names are case-sensitive) -Timestamp | Trend | Score | BrandVoice | AudienceMood | Customize Nodes: OpenAI Nodes** (Trend Relevance Scoring, Generate Social Media Content): Update the model (e.g., gpt-4o) and prompt as needed. HTTP Request Nodes** (Post to Twitter/X, Post to LinkedIn, etc.): Verify URLs, authentication, and payloads. Brand Voice/Audience Mood**: Adjust Prepare Trend Scoring Input for your desired brand_voice (e.g., "casual") and audience_mood (e.g., "curious"). Test the Workflow: Fetch Reddit Trends to Store Selected Trends- to score and store trends. Retrieve Latest Trends to end) to generate and post content Check Google Sheets for posting statuses How It Works High-Level Steps 🔍 Fetch Trends**: Pulls trends from Reddit,X and Google Trends. Score Trends**: Uses OpenAI to score trends for relevance. Generate Content**: Creates platform-specific social media content. Post Content**: Posts to LinkedIn, Facebook or X Detailed descriptions are available in the sticky notes within the workflow screenshot above. Node Names and Actions Trend Extraction and Scoring Daily Trigger Idea: Triggers the workflow daily. Set Default Inputs: Sets default brand_voice and inputs. Fetch Reddit Trends: Fetches Reddit posts. Extract Reddit Trends: Extracts trends from Reddit. Fetch Google Trends: Fetches Google Trends via SerpApi. Extract Google Trends2: Processes Google Trends data. Fetch Twitter Mentions: Fetches Twitter mentions. Translate Tweets to English: Translates tweets. Fix Tweet Translation Output: Fixes translation format. Detect Audience Mood: Detects audience mood. Fix Audience Mood Output: Fixes mood output format. Analyze News Sentiment: Analyzes news sentiment. Combine Data (Merge): Merges all data sources. Merge Items into Single Item: Combines data into one item. Combine Trends and UGC: Combines trends with UGC. Prepare Trend Scoring Input: Prepares data for scoring. Trend Relevance Scoring: Scores trends with OpenAI. Parse Trend Scores: Parses scoring output. Store Selected Trends: Stores trends in Google Sheets. Content Generation and Posting Retrieve Latest Trends: Retrieves trends from Google Sheets. Parse Retrieved Trends: Parses retrieved trends. Select Top Trends: Selects the top trend. Generate Social Media Content: Generates platform-specific content. Parse Social Media Content: Parses generated content. Generate Images: Generates images for posts (if applicable). -Handle Approvals/Rejection before Posting Post to Instagram: Posts to Instagram. Post to Facebook: Posts to Facebook. Post to LinkedIn: Posts to LinkedIn. Customization Tips Add Trend Sources** 📡: Include more sources (e.g., Instagram trends) by adding nodes to Combine Data (Merge). Change Content Tone** ✍️: Update the Generate Social Media Content prompt for a different tone (e.g., "humorous"). Adjust Schedule** ⏰: Modify Daily Trigger Idea to run hourly or weekly. Automate TikTok/YouTube** 🎥: Add video generation (e.g., FFMPEG) to post TikTok and YouTube Shorts
+2

Automate Blog-to-Social Media with GPT-4 for LinkedIn, X, and Reddit

Turn your blog into a set-and-forget content engine: every new article is instantly repurposed into channel-specific social posts with visuals, keeping your brand visible on LinkedIn, X, and Reddit without extra copywriting time. Perfect for lean marketing teams who want consistent, always-on distribution from a single source of content. How it works • Watches your blog RSS feed (or receives a single URL) and detects new articles. • Saves each post in Postgres so every article is only processed once. • Fetches the article HTML, extracts the main body content and sends it to OpenAI (GPT-4.1). • OpenAI creates platform-optimized copy: 1 LinkedIn post, 1 X/Twitter post, 1 Reddit post + image prompts. • Generates on-brand images with OpenAI and publishes everything automatically to LinkedIn, X, and Reddit. • You can also trigger it manually or via webhook whenever you want to push a specific campaign. Setup Steps • Time: around 20–40 minutes for someone familiar with n8n and the platforms. • Create a Postgres table “rss_items” with fields: guid (PRIMARY KEY), title, link, published_at. • Add credentials in n8n for: – Postgres – OpenAI – LinkedIn OAuth2 – X/Twitter OAuth2 + OAuth1 (for media upload) – Reddit OAuth2 • In the RSS node, set your blog feed URL (for example: https://yourblog.com/feed). • In the webhook node, confirm the URL/path you want external tools or other workflows to call with a “link” field. • Run the manual trigger with one test blog URL to verify: – Article content is extracted correctly. – AI returns LinkedIn/X/Reddit posts and image prompts. – Posts and images appear correctly on all social accounts. • Once tests look good, enable the Schedule Trigger so Blog2Social AI runs automatically at your chosen interval.
+5

Automate RSS Content to Blog Posts with GPT-4o, WordPress & LinkedIn Publishing

Automated Blog Post Review and Multi-Platform Publishing Workflow with RSS Feeds Description This workflow automates the process of generating, reviewing, and publishing blog posts across multiple platforms, now enhanced with support for RSS Feeds as a content source. It streamlines the management of blog posts by fetching content from RSS Feeds, formatting, storing, reviewing, templating, and publishing to platforms like LinkedIn and WordPress. The workflow is split into three key flows: Initial Flow**: Fetches content from RSS Feeds, prepares and stores blog post data, sends a review email with approval/rejection links. Approval Flow**: Handles review actions via a webhook to update the status in Google Sheets. Status Update Flow**: Monitors status changes and publishes approved posts. Target Audience Content creators, bloggers, and digital marketers. Teams managing multi-platform content publishing. Users familiar with n8n, Google Sheets, LinkedIn, and RSS Feeds. Problem Solved Manually managing blog posts, especially when sourcing content from RSS Feeds, can be time-consuming and error-prone This workflow addresses: Content Sourcing**: Fetches blog posts from RSS Feeds for automated processing Content Formatting**: Automatically formats and stores blog posts. Review Process**: Simplifies approval with email notifications and webhook triggers. Multi-Platform Publishing**: Publishes to LinkedIn, WordPress and optionally Medium) with delays to avoid rate limits Status Tracking**: Tracks approval and publishing status in Google Sheets. Setup Instructions Prerequisites n8n Instance**: Ensure you have an active n8n instance RSS Feed URL**: Identify an RSS Feed URL (e.g., a blog’s feed like https://example.com/feed) Google Sheets**: Create a spreadsheet with columns: Title, Blogpost, Publication Date, Keywords, Status, Published, Featured Image, articleUrl, Rendered Blog. Sheet Name: Posts Initial Add a dropdown for Status: Pending, Approved, Rejected. Gmail Account**: For sending review and notification emails. LinkedIn Account**: For publishing posts (OAuth credentials needed). Optional**: WordPress.com or Medium account for additional publishing. Customization Guidance Below is a detailed breakdown of each flow and node, including setup instructions. 🔹 Initial Flow: Fetch from RSS Feeds, Prepare, and Send for Review. Purpose: Fetches blog posts from an RSS Feed, formats them, extracts images, stores data, and sends a review email. Fetch from RSS Feed Type: RSS Feed Purpose: Retrieves blog posts from an RSS Feed Configuration: URL: https://example.com/feed (replace with your RSS Feed URL) Limit: 1 (or adjust based on your needs) Setup: Ensure the RSS Feed URL is valid and accessible; test the node to verify it fetches posts Set Fields Type: Set Purpose: Maps RSS Feed data to blog post fields Setup: Adjust field mappings based on your RSS Feed’s structure Format Blog Post for Storage Type: Code Purpose: Cleans up the blog post content. Extract Featured Image Type: Code Purpose: Extracts or generates a featured image URL. Setup: Ensure originalHtml contains image data; otherwise, it uses a placeholder. Store Blog Posts Initial Type: Google Sheets Purpose: Stores initial blog post data Setup: Ensure Google Sheets credentials are set up and the spreadsheet has the required columns. Set Fields for Email Type: Set Purpose: Prepares fields for the review email. Setup: Replace https://your-n8n-instance with your n8n instance URL. Prepare Email HTML Type: Code Purpose: Generates HTML email content with conditional image display Setup: No additional configuration needed Notify for Review (Gmail) Type: Gmail Purpose: Sends a review email with approval/rejection links 🔹 Approval Flow: Handle Review Actions Purpose: Updates the blog post status based on approval/rejection Webhook Trigger Type: Webhook Purpose: Triggers on approval/rejection link clicks Configuration: HTTP Method: GET Path: approve-post Response Code: 200 Response Data: {"message": "Status updated"} Setup: Ensure the webhook URL matches the one in Set Fields for Email Find Row to Update Type: Google Sheets Purpose: Retrieves all rows to find the matching blog post Filter Row by Title Type: Code Purpose: Filters the row matching the blog post title Setup: No additional configuration needed Update Status on Approval Type: Google Sheets Purpose: Updates the status to Approved or Rejected 🔹 Status Update Flow: Publish Approved Posts Purpose: Monitors status changes and publishes approved posts Google Sheets Trigger (Fetch Row) Type: Google Sheets Trigger Purpose: Triggers when a row’s status is updated Configuration: Event: Update Sheet Name: Posts Initial Output Fields: title, status, published, featuredImage, articleUrl Setup: Ensure Google Sheets credentials are set up Router (Check Status) Type: Router Purpose: Routes based on status and published state Configuration: Route 1: Approved and Not Published Condition: status equals Approved AND published equals NO Route 2: Rejected Condition: status equals Rejected Route 3: Pending Condition: status equals Pending Setup: No additional configuration needed Apply Blog Template Store Blog Posts Final Type: Google Sheets Purpose: Stores the final HTML content Configuration: Operation: Update Row Setup: Ensure the Rendered Blog column exists Loop Over Blog Posts Type: Split in Batches Purpose: Processes each blog post individually Configuration: Default settings Setup: No additional configuration needed Delay Between Posts Type: Wait Purpose: Adds a delay to avoid rate limits Configuration: Wait Type: Delay Amount: 1 second Setup: Adjust delay as needed for LinkedIn rate limits Publish to LinkedIn Type: LinkedIn Purpose: Publishes the blog post to LinkedIn Configuration: Operation: Share Post Author: urn:li:person:YOUR_PERSONAL_URN Setup: Set up LinkedIn OAuth credentials and replace YOUR_PERSONAL_URN with your LinkedIn URN Update Published State Type: Google Sheets Purpose: Updates the published status Configuration: Operation: Update Row Setup: Ensure the Published column exists Notify Team Type: Gmail Purpose: Notifies the team of successful publishing Configuration: The blog post "{{ $json.title }}" has been successfully published Setup: Set up Gmail credentials; replace [Link] with the LinkedIn URL if captured Notify Rejection (Gmail) (Route 2) Type: Gmail Purpose: Notifies on rejection The blog post "{{ $json.title }}" has been rejected Suggestions: Rewrite with more engaging content, adjust keywords, or verify facts Please update the status in Google Sheets if you wish to revise and resubmit Setup: Set up Gmail credentials Wait for Status Update (Route 3) Type: Wait Purpose: Delays for status recheck Configuration: Wait Type: Delay Duration: 24h Setup: Adjust delay as needed Conclusion This workflow streamlines blog post management with RSS Feeds, making it ideal for busy content creators and teams. Customize it by adding more platforms adjusting delays, or enhancing notifications. Share your feedback in the n8n community to help others benefit from this automation.

Create and post AI social captions from WordPress blogs to Facebook, Instagram, X, and LinkedIn with GPT-4o via OpenRouter

Every time you publish a blog post on WordPress, this workflow automatically creates unique, platform-optimised captions for Facebook, Instagram, Twitter and LinkedIn — and publishes them all simultaneously without any manual effort. Built for content creators, digital marketing agencies, SEO agencies, bloggers, and businesses that publish blog content regularly and want to maximise reach across social media without spending hours manually writing different versions for each platform. The Problem This Solves Most businesses publish a blog post and then either copy and paste the same text to every social media platform — which performs poorly because each platform has different audience expectations, character limits, tone and algorithm preferences — or they skip social media promotion entirely because writing four different captions for one post takes too much time. The result is wasted content. Hours of writing a great blog post go unnoticed because the distribution is manual, inconsistent, or nonexistent. This workflow solves that completely. One WordPress publish triggers everything. The AI writes platform-specific captions that actually match how each platform works. Every post gets promoted everywhere automatically. How It Works Step 1 — WordPress Webhook Trigger The workflow starts the instant you publish a post on WordPress. This requires a webhook plugin installed on your WordPress site — the recommended free option is WP Webhooks (available on WordPress.org plugin directory). When you publish or update a post to published status, WP Webhooks sends a POST request to your n8n webhook URL with the full post data including title, content, permalink, thumbnail URL, and post type. No polling. No scheduled checks. The workflow fires in real time the moment your post goes live. Step 2 — Post Type and Status Filter Before any processing happens, the workflow checks two conditions: The post type must be post (not page, product, or custom post type) The post status must be publish (not draft, pending, or scheduled) This ensures the workflow only runs for actual published blog posts and ignores everything else — drafts, page updates, WooCommerce products, and any other WordPress content types. Step 3 — HTML to Markdown Conversion WordPress post content arrives as raw HTML with tags, shortcodes, and formatting markup. Before sending this to an AI model, the workflow converts the HTML content to clean Markdown text using the built-in Markdown node. This removes HTML tags, cleans up formatting, and gives the AI clean, readable text that produces significantly better caption quality than feeding raw HTML. Step 4 — Data Normalization A Set node extracts and organises all the data needed for the rest of the workflow into clean variables: post_title — the blog post title post_content — the cleaned Markdown content post_link — the full permalink URL to the published post post_thumbnail — the featured image URL used for visual posts on Facebook and Instagram facebook_page_id — your Facebook Page ID for the Graph API call instagram_id — your Instagram Business Account ID for the Graph API call Step 5 — AI Caption Generator An AI agent powered by OpenRouter (GPT-4o) reads the post title, link, and the first 800 characters of the post content, then generates four completely different captions — one for each platform — in a single API call. Each caption is written according to strict platform-specific guidelines: Twitter/X caption: Maximum 220 characters. One punchy insight or hook from the post. One to two hashtags only. Ends with the post link. Short, direct, and conversational. Facebook caption: Starts with a bold question or statement. Three to five bullet points of what readers will learn. Ends with the post link. Friendly and conversational tone. Maximum three hashtags. Instagram caption: Opens with a bold hook in the first 125 characters to survive the truncation. Three to five key takeaways as short bullet points. Ends with "Link in bio to read the full guide." Three to five relevant hashtags. Does not include the URL in the body since Instagram does not make links clickable in captions. LinkedIn caption: Professional tone throughout. Hook or surprising statement to open. Three to four short paragraphs covering the problem, what the post covers, the key insight, and a call to action with the link. Two to three professional hashtags. Between 800 and 1200 characters total for maximum LinkedIn algorithmic reach. The output is enforced as strict JSON via a Structured Output Parser — ensuring reliable, parseable data for the downstream publishing nodes every time. Step 6 — Simultaneous Publishing to All Platforms After caption generation, the workflow publishes to all four platforms in parallel: Twitter/X: The Twitter node posts the caption directly using OAuth2 authentication. No additional steps required. Facebook: An HTTP Request node calls the Facebook Graph API /{page_id}/photos endpoint, sending the Facebook caption as the message and the WordPress featured image URL as the photo. This creates a photo post with the caption on your Facebook Page, which performs significantly better than link-only posts in terms of reach and engagement. Instagram: Instagram publishing requires two steps as per the official Meta Graph API requirements. First, an HTTP Request node calls /{instagram_id}/media to create a media container with the caption and featured image URL. Second, another HTTP Request node calls /{instagram_id}/media_publish with the container ID returned from the first step. This is the official two-step publishing flow required by Meta. LinkedIn: The thumbnail image is first downloaded via an HTTP Request node (LinkedIn requires binary image data, not just a URL). Then the LinkedIn node creates a post using the downloaded image binary along with the LinkedIn caption. The post is published to your company organisation page using OAuth2 authentication. WordPress Plugin Required This workflow requires a webhook plugin installed on your WordPress site to send post data to n8n when a post is published. Recommended: WP Webhooks (Free) Available at wordpress.org/plugins/wp-webhooks After installing WP Webhooks on your WordPress site: Go to Settings → WP Webhooks in your WordPress dashboard Click Send Data tab Add a new webhook Select trigger: Post Published or Post Updated Paste your n8n webhook URL as the delivery URL Save and test The plugin will send a POST request to n8n with the full post data every time you publish a blog post. Alternative options: WPBrutha Webhooks Bit Integrations (free plugin with webhook sending) Custom code using WordPress transition_post_status hook if you prefer a code-based approach Payload Structure Your n8n webhook node expects this data structure from WordPress: { "post": { "post_title": "Your Blog Post Title", "post_content": "Your full HTML post content", "post_type": "post", "post_status": "publish" }, "post_permalink": "https://yoursite.com/your-post-slug/", "post_thumbnail": "https://yoursite.com/wp-content/uploads/featured-image.jpg" } The exact field names depend on which WordPress webhook plugin you use. Adjust the Set node field mappings to match the payload structure sent by your chosen plugin. Requirements WordPress website with admin access WP Webhooks plugin (free) or any WordPress webhook plugin installed and configured n8n instance (self-hosted or cloud) with a publicly accessible webhook URL OpenRouter API key (supports GPT-4o, Claude, Gemini, and 200+ other models) Twitter/X Developer account with OAuth2 app credentials Facebook Page with a System User token from Meta Business Portfolio or a long-lived Page Access Token Instagram Business Account connected to your Facebook Page via Meta Business Portfolio LinkedIn Company Page with OAuth2 app credentials Setup Steps Install and activate WP Webhooks on your WordPress site Copy the n8n webhook URL from the Webhook node in this workflow Configure WP Webhooks to send to your n8n webhook URL on post publish Add your OpenRouter API key to n8n credentials Connect your Twitter/X OAuth2 credentials in the Create Tweet node Add your Facebook Page Access Token or System User Token to the HTTP Query Auth credential used in Post on FB node Add the same token to the Instagram nodes — Create Media Container and Post On IG Update the facebook_page_id value in the Clean Data node with your actual Facebook Page ID Update the instagram_id value in the Clean Data node with your actual Instagram Business Account ID Connect your LinkedIn OAuth2 credentials in the Create a post node Update the LinkedIn organisation URN in the Create a post node with your actual company page URN Publish a test post on WordPress and verify all four platforms receive their posts Customization Options Change the AI model** — swap GPT-4o for any OpenRouter model including Claude Sonnet, Gemini Flash, or Mistral to reduce cost per run Adjust caption length and style** — edit the platform guidelines in the system prompt to match your brand voice or preferred posting style Add more platforms** — extend the workflow with TikTok, Pinterest, Threads, or YouTube community posts by adding nodes after the AI Agent Filter by category or tag** — add an IF node after the filter to only trigger for posts in specific WordPress categories Add a delay between platforms** — add Wait nodes between publishing steps if you prefer staggered posting Schedule posts instead of immediate publishing** — replace the direct publishing nodes with a scheduling tool like Postiz or Buffer API Content length control** — the AI currently reads the first 800 characters of post content. Increase or decrease this slice in the user prompt to give the AI more or less context Language support** — the AI will match the language of your blog post automatically. Write in Urdu, Arabic, French, or any other language and captions will be generated in the same language Use Cases SEO and digital marketing agencies** promoting client blog content across all platforms automatically Bloggers and content creators** who publish regularly and want consistent social media presence without manual effort ecommerce businesses** promoting product guides, how-to articles, and SEO content SaaS companies** distributing thought leadership content and product updates Local businesses** sharing informative blog posts about their services News and media sites** distributing articles to social audiences in real time Nodes Used Webhook — receives WordPress post data on publish IF — filters for published blog posts only Markdown — converts HTML post content to clean text Set — normalizes and extracts post data into clean variables AI Agent (LangChain) — generates four platform-specific captions simultaneously Structured Output Parser — enforces JSON output from the AI agent OpenRouter Chat Model — powers the AI caption generation Twitter node — publishes to Twitter/X HTTP Request (Facebook) — posts photo with caption to Facebook Page via Graph API HTTP Request (Instagram container) — creates Instagram media container via Graph API HTTP Request (Instagram publish) — publishes Instagram container to feed HTTP Request (LinkedIn image) — downloads featured image binary for LinkedIn LinkedIn node — publishes image post to LinkedIn company page Built with Meta Graph API v25.0, OpenRouter, Twitter API v2, and LinkedIn API. Compatible with any WordPress site running version 4.7 or above with the WordPress REST API enabled.

Create LinkedIn image posts with captions using Google Gemini and LinkedIn

Transform your quotes into stunning LinkedIn posts with AI! This workflow automatically generates professional image designs and engaging captions from your text input using Google Gemini AI. Simply enter your quote on the custom HTML interface, and the workflow creates a beautiful visual design paired with a compelling LinkedIn caption. Edit the caption to match your style, then post directly to LinkedIn, all from one seamless interface. Perfect for content creators, marketers, and professionals who want to maintain an active LinkedIn presence without spending hours on design and copywriting. What you'll need: Google Gemini API credentials LinkedIn API credentials Custom HTML website (included in setup) Watch the full setup tutorial: Watch now
+4

Repurpose YouTube videos into blogs and social posts with GPT-4o, WordPress, LinkedIn, X and Instagram

Overview This workflow turns a single YouTube video into multiple content formats and publishes them across different platforms with an optional human approval step. It helps content creators, marketers, and agencies repurpose long-form video content into blog posts and social media updates automatically. How it works Fetches the transcript from a YouTube video Uses AI to generate blog and social media content Optionally waits for manual approval Publishes content to selected platforms Logs the result for tracking Setup steps Add your API credentials (AI, transcript, and social platforms) Paste a YouTube video URL Choose auto-publish or approval mode Run the workflow Use cases Content repurposing for YouTube creators Automated blog and social media publishing Marketing automation for agencies AI-assisted content production pipelines 🧑‍💻 Creator Information Developed by: Adem Tasin 🌐 Website: ademtasin.com 💼 LinkedIn: Adem Tasin

Build your own Webhook and LinkedIn integration

Create custom Webhook and LinkedIn workflows by choosing triggers and actions. Nodes come with global operations and settings, as well as app-specific parameters that can be configured. You can also use the HTTP Request node to query data from any app or service with a REST API.

LinkedIn supported actions

Create
Create a new post

Webhook and LinkedIn integration details

integrationWebhook node
Webhook

Webhooks are automatic notifications that apps send when something occurs. They are sent to a certain URL, which is effectively the app's phone number or address, and contain a message or payload. Polling is nearly never quicker than webhooks, and it takes less effort from you.

Use case

Save engineering resources

Reduce time spent on customer integrations, engineer faster POCs, keep your customer-specific functionality separate from product all without having to code.

Learn more
Use case

Automate lead management

Using too many marketing tools? n8n lets you orchestrate all your apps into one cohesive, automated workflow.

Learn more

FAQs

  • Can Webhook connect with LinkedIn?

  • Can I use Webhook’s API with n8n?

  • Can I use LinkedIn’s API with n8n?

  • Is n8n secure for integrating Webhook and LinkedIn?

  • How to get started with Webhook and LinkedIn integration in n8n.io?

Need help setting up your Webhook and LinkedIn integration?

Discover our latest community's recommendations and join the discussions about Webhook and LinkedIn integration.
Benjamin Hatton
Albert Ashkhatoyan
Víctor González
Salomão
sg tech

Looking to integrate Webhook and LinkedIn in your company?

Over 3000 companies switch to n8n every single week

Why use n8n to integrate Webhook with LinkedIn

Build complex workflows, really fast

Build complex workflows, really fast

Handle branching, merging and iteration easily.
Pause your workflow to wait for external events.

Code when you need it, UI when you don't

Simple debugging

Your data is displayed alongside your settings, making edge cases easy to track down.

Use templates to get started fast

Use 1000+ workflow templates available from our core team and our community.

Reuse your work

Copy and paste, easily import and export workflows.

Implement complex processes faster with n8n

red iconyellow iconred iconyellow icon