Générer des publications LinkedIn à partir de pages web v5 (révisé)

Avancé

Ceci est unContent Creation, Multimodal AIworkflow d'automatisation du domainecontenant 25 nœuds.Utilise principalement des nœuds comme Set, Slack, Airtop, FormTrigger, ExecuteWorkflow. Générer des publications LinkedIn et images IA à partir de pages web avec Airtop et GPT-4

Prérequis
  • Token Bot Slack ou URL Webhook
  • Clé API OpenAI
Aperçu du workflow
Visualisation des connexions entre les nœuds, avec support du zoom et du déplacement
Exporter le workflow
Copiez la configuration JSON suivante dans n8n pour importer et utiliser ce workflow
{
  "id": "9yTau3SmI0UCovxq",
  "meta": {
    "instanceId": "28a947b92b197fc2524eaba16e57560338657b2b0b5796300b2f1cedc1d0d355",
    "templateCredsSetupCompleted": true
  },
  "name": "Generate Linekdin Post from Web Page v5 (revisions)",
  "tags": [],
  "nodes": [
    {
      "id": "e790b122-c9ca-421a-8001-8eaa4e315e85",
      "name": "À la soumission du formulaire",
      "type": "n8n-nodes-base.formTrigger",
      "position": [
        -4280,
        1040
      ],
      "webhookId": "d1b457e1-b266-4102-b77c-6610da4e72bb",
      "parameters": {
        "options": {},
        "formTitle": "LinkedIn Post Generator",
        "formFields": {
          "values": [
            {
              "fieldLabel": "Page URL",
              "placeholder": "https://www.airtop.ai/automations/ai-web-agent-n8n",
              "requiredField": true
            },
            {
              "fieldType": "textarea",
              "fieldLabel": "Instructions"
            }
          ]
        },
        "formDescription": "Fill out these fields and you'll have a full LinkedIn post ready to go in a minute. "
      },
      "typeVersion": 2.2
    },
    {
      "id": "3a34d1e6-85c9-4ae2-924d-0883f8055bc9",
      "name": "Note adhésive",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -4020,
        820
      ],
      "parameters": {
        "width": 2040,
        "height": 480,
        "content": "# Content Generation & Revisions"
      },
      "typeVersion": 1
    },
    {
      "id": "1bbae834-8dc7-4a55-a0f5-4a85630de0f2",
      "name": "Note adhésive 4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1920,
        820
      ],
      "parameters": {
        "color": 3,
        "width": 1640,
        "height": 480,
        "content": "# Image Generation & Revisions\n"
      },
      "typeVersion": 1
    },
    {
      "id": "eda10c0b-00e9-459c-a124-b160f246d3c8",
      "name": "Note adhésive 5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -4500,
        820
      ],
      "parameters": {
        "color": 6,
        "width": 440,
        "height": 480,
        "content": "# To generate post and visual - start here!"
      },
      "typeVersion": 1
    },
    {
      "id": "91ea946a-30a8-4d0f-958b-4a1417295363",
      "name": "OpenAI Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        -2560,
        1100
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4.1",
          "cachedResultName": "gpt-4.1"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "id": "S7GD73j3sNZEA58V",
          "name": "OpenAi account 3"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "e4e324b5-8e0d-41c8-980b-3490501aead5",
      "name": "Définir le post",
      "type": "n8n-nodes-base.set",
      "position": [
        -3160,
        920
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "346bd2cf-743b-4b13-a34e-528a95e1a617",
              "name": "URL",
              "type": "string",
              "value": "={{ $('Set Params').item.json.URL }}"
            },
            {
              "id": "8430fd16-f865-4b37-b7bc-7e910badbb19",
              "name": "Instructions",
              "type": "string",
              "value": "= - "
            },
            {
              "id": "35a9e113-ea92-438d-ac25-41ed9a74071f",
              "name": "Post",
              "type": "string",
              "value": "={{ $json.output }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "b6435124-f7d0-466c-9f11-908fddabd9b8",
      "name": "Définir les paramètres",
      "type": "n8n-nodes-base.set",
      "position": [
        -3760,
        1040
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "346bd2cf-743b-4b13-a34e-528a95e1a617",
              "name": "URL",
              "type": "string",
              "value": "={{ $('On form submission').item.json['Page URL'] }}"
            },
            {
              "id": "8430fd16-f865-4b37-b7bc-7e910badbb19",
              "name": "Instructions",
              "type": "string",
              "value": "={{ $('On form submission').item.json.Instructions }}"
            },
            {
              "id": "35a9e113-ea92-438d-ac25-41ed9a74071f",
              "name": "Post",
              "type": "string",
              "value": "= - "
            },
            {
              "id": "cd1fac8d-6b57-4072-966f-67e3cf1b9cc4",
              "name": "=Webpage_content",
              "type": "string",
              "value": "={{ $json.data.modelResponse.scrapedContent.text }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "b36ddef0-15fe-47b3-ae0b-cf75a7e88695",
      "name": "Définir le post 1",
      "type": "n8n-nodes-base.set",
      "position": [
        -2280,
        580
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "346bd2cf-743b-4b13-a34e-528a95e1a617",
              "name": "URL",
              "type": "string",
              "value": "={{ $('Set Params').item.json.URL }}"
            },
            {
              "id": "8430fd16-f865-4b37-b7bc-7e910badbb19",
              "name": "Instructions",
              "type": "string",
              "value": "={{ $json.data.text }}"
            },
            {
              "id": "35a9e113-ea92-438d-ac25-41ed9a74071f",
              "name": "Post",
              "type": "string",
              "value": "={{ $('Set Post').item.json.Post }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "77eb23ab-77e5-4ccb-bb51-73afc935f856",
      "name": "Générateur de prompt d'image",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        -1660,
        920
      ],
      "parameters": {
        "text": "=# Overview\nYou are an AI agent that transforms LinkedIn posts into visual prompt descriptions for generating graphic marketing materials. These visuals are designed to be paired with the post on LinkedIn, helping communicate the message in a visually engaging, brand-aligned way.\n\n## Objective:\n- Read and analyze the given LinkedIn post.\n- If Image Prompt and User Instructions are provided. Follow the user instructions closely and modify the image prompt based on those instructions\n- Identify the main message, insight, or takeaway from the post.\n- Create a clear and compelling graphic prompt that can be used with a text-to-image generator.\n- The result should be a marketing-style graphic — not a literal scene or hyperrealistic photo — that:\n1) Visually supports or illustrates the key idea of the post\n2) Looks appropriate for use in a professional LinkedIn feed\n3) Feels polished, modern, and engaging\n4) Don't be salesy, Don't say things like \"Save hours weekly — Grab Your Free Template!”. be more technical, focus on how it works\n\n## Output Instructions:\n- Output only the final image prompt. Do not output quotation marks.\n- Do not repeat or rephrase the LinkedIn post.\n- Do not add any explanations or extra content — just the image prompt.\n- Never leave things blank like \"Header area reserved for customizable callout text\"\n- Output numeric stats when available in the original post\n\n## Style Guidelines:\n- Think like a brand designer or marketing creative.\n- Visuals may include: text, charts, icons, abstract shapes, overlays, modern illustrations, motion-like effects, bold typography elements (described, not rendered), or metaphorical concepts.\n- You can mention layout suggestions (e.g., \"split screen design,\" \"header with bold title and subtle background illustration\").\n- Assume the output will be generated using AI image tools — your prompt should guide those tools effectively.\n- When the post is a template giveaway, add small, gentle \"free template\"\nstamp\n\n## Example Prompt Format:\nA modern flat-style graphic showing a human brain connected to mechanical gears, representing the fusion of AI and automation. Minimalist background, soft gradients, clean sans-serif text placement space at the top.\n\n# LINKEDIN POST:\n{{ $json.Post }}\n\n# LATEST IMAGE PROMPT\n{{ $json.Image_prompt }}\n\n# USER IMAGE INSTRUCTIONS\n{{ $json.Image_user_instructions }}\n",
        "prompt": "define",
        "options": {},
        "resource": "assistant",
        "assistantId": {
          "__rl": true,
          "mode": "list",
          "value": "asst_aYEHuzWeFxMBN2qu4FnXRsJ4",
          "cachedResultName": "Social Media Writer"
        }
      },
      "credentials": {
        "openAiApi": {
          "id": "G7GIqTr0ghwb5P24",
          "name": "OpenAi Airtop Email Writer"
        }
      },
      "typeVersion": 1.8
    },
    {
      "id": "63b748f9-6884-4c37-97cf-00372a8b9653",
      "name": "Définir le prompt d'image",
      "type": "n8n-nodes-base.set",
      "position": [
        -1860,
        920
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "a4111b78-af26-41ca-8a0e-184ebabffe66",
              "name": "Image_prompt",
              "type": "string",
              "value": " "
            },
            {
              "id": "62a444c9-1400-4789-b2d0-a1daeb417e52",
              "name": "Post",
              "type": "string",
              "value": "={{ $json.Post || $('Set Post').item.json.Post}}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "51025a08-3034-435c-a3c5-0950cf540d17",
      "name": "Vérifier les retours sur le texte du post",
      "type": "@n8n/n8n-nodes-langchain.textClassifier",
      "position": [
        -2560,
        920
      ],
      "parameters": {
        "options": {
          "multiClass": false
        },
        "inputText": "={{ $json.data.text }}",
        "categories": {
          "categories": [
            {
              "category": "Edit",
              "description": "The email has been reviewed, but the human requests modifications to the post text before it is sent like tweaks, removing parts, rewording, etc. This could include suggested edits, rewording, or major revisions to the post text. |Example phrases include:\"Can we tweak this part of the post?\"\"Needs some changes to this sentence.\"\"I’d like to reword the post.\"\"Not quite right—let’s revise the text.\"\"Can you adjust the text before sending?\"\"Don't mention Make in the text\"\"change the style of the writing\"\"tone of voice is not consistent with our branding\""
            },
            {
              "category": "Approved",
              "description": "The email has been reviewed and accepted as-is. The human explicitly or implicitly expresses approval, indicating that no changes are needed. |Example phrases include:\"Looks good.\"\"Go ahead and send it.\"\"This works for me.\"\"Approved.\"\"No changes needed.\"\"ok\""
            },
            {
              "category": "Declined",
              "description": "The email has been reviewed, but the human requests not to proceed with the post. |Example phrases include:\"Let's cancel this post.\"\"Don't post\""
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "id": "b59b8989-1e22-4496-a2b9-1803897ba50e",
      "name": "Vérifier les retours sur l'image",
      "type": "@n8n/n8n-nodes-langchain.textClassifier",
      "position": [
        -680,
        920
      ],
      "parameters": {
        "options": {
          "multiClass": false
        },
        "inputText": "={{ $json.data.text }}",
        "categories": {
          "categories": [
            {
              "category": "Edit",
              "description": "The email has been reviewed, but the human requests modifications to the image prompt before it is sent like tweaks, removing parts, rewording, etc. This could include suggested edits, rewording, or major revisions to the image prompt. |Example phrases include:\"Can we tweak this part of the image?\"\"Needs some changes to the image.\"\"I’d like to reword the image prompt.\"\"Not quite right—let’s revise the visual.\"\"Can you adjust the picture before sending?\"\"Don't display logos in the image\"\"change the image style\"\"image is not consistent with our branding\""
            },
            {
              "category": "Approved",
              "description": "The email has been reviewed and accepted as-is. The human explicitly or implicitly expresses approval, indicating that no changes are needed. |Example phrases include:\"Looks good.\"\"Go ahead and send it.\"\"This works for me.\"\"Approved.\"\"No changes needed.\""
            },
            {
              "category": "Declined",
              "description": "The email has been reviewed, but the human requests not to proceed with the post. |Example phrases include:\"Let's cancel this post.\"\"Don't post\""
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "id": "76323ea2-9c7a-41f7-a9a1-dd375dc3c373",
      "name": "Définir le prompt d'image 1",
      "type": "n8n-nodes-base.set",
      "position": [
        -1300,
        920
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "a4111b78-af26-41ca-8a0e-184ebabffe66",
              "name": "Image_prompt",
              "type": "string",
              "value": "={{ $json.output }}"
            },
            {
              "id": "5ed10820-68c9-41fd-9cc6-3f11df89ce7e",
              "name": "Image_id",
              "type": "string",
              "value": ""
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "ac381668-70d7-4cd1-9a71-8e0ac55a9f31",
      "name": "Définir le prompt d'image 2",
      "type": "n8n-nodes-base.set",
      "position": [
        -320,
        600
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "a4111b78-af26-41ca-8a0e-184ebabffe66",
              "name": "Image_prompt",
              "type": "string",
              "value": "=ORIGINAL IMAGE PROMPT\n{{ $('Set Image Prompt1').item.json.Image_prompt }}\n\nUSER REQUESTED REVISION: \n{{ $json.data.text }}\n  \n"
            },
            {
              "id": "ef6ef374-4efd-4270-a856-2f4b64355909",
              "name": "=Image_id",
              "type": "string",
              "value": "={{ $('Generate on-brand image').item.json.Unbranded_image_id[0] }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "e1d23987-51d7-464b-ab1e-974a5ca5285c",
      "name": "OpenAI Chat Model 1",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        -680,
        1120
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4.1",
          "cachedResultName": "gpt-4.1"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "id": "S7GD73j3sNZEA58V",
          "name": "OpenAi account 3"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "2997f0cb-9554-4c8e-b68c-32add0a9624a",
      "name": "Note adhésive 6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -220,
        820
      ],
      "parameters": {
        "color": 4,
        "width": 440,
        "height": 480,
        "content": "# Send Final Post and Visual"
      },
      "typeVersion": 1
    },
    {
      "id": "6c0705d9-73a0-4e9c-b1b5-6dd1cdadf24b",
      "name": "Note adhésive 7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1900,
        280
      ],
      "parameters": {
        "color": 6,
        "width": 440,
        "height": 480,
        "content": "# To generate just a branded visual - start here!"
      },
      "typeVersion": 1
    },
    {
      "id": "54ccdc45-6790-4faa-bbc6-d1cc5299d521",
      "name": "Note adhésive 1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -4500,
        -480
      ],
      "parameters": {
        "color": 5,
        "width": 1060,
        "height": 1140,
        "content": "README\n# Generate LinkedIn Posts from Any Webpage (With Visuals)\n## Use Case\nTurn any web page into a compelling LinkedIn post — complete with an AI-generated image. This automation is ideal for sharing content like blog posts, case studies, or product updates in a polished and engaging format.\n\n## What This Automation Does\nGiven a page URL and optional user instructions, this automation:\n- Scrapes the content of the webpage\n- Uses AI to write a clear, educational, and LinkedIn-optimized post\n- Generates a brand-aligned visual that matches the content\n- Sends both to Slack for review and approval\n- Handles feedback and revisions via Slack interactions\n\nInput:\n- **Page URL** — The link to the webpage (required)\n- **Instructions** — Optional notes on tone, emphasis, or format\n\nOutput:\n- LinkedIn post text\n- AI-generated visual prompt and image\n- Slack message with review/approval options\n\n## How It Works\n1. **Form Submission**: User inputs a web page and optional instructions.\n2. **Web Scraping**: Uses Airtop to extract page content.\n3. **Post Generation**: AI agent writes a post based on the page and instructions.\n4. **Visual Generation**: Another AI model creates an image prompt; this is sent to a sub-workflow for image rendering.\n5. **Slack Review Flow**:\n   - Post and image sent to Slack for feedback\n   - User can approve, request revisions, or decline\n   - Revisions trigger reprocessing steps automatically\n6. **Final Post Delivery**: Approved post and image are sent back to Slack, ready to publish.\n\n## Setup Requirements\n1. Airtop API key\n2. OpenAI credentials for post and image prompt generation\n3. Slack OAuth integration with a review channel\n4. A sub-workflow for branded image generation\n\n## Next Steps\n- **Post Directly**: Add LinkedIn publishing to automate the full content workflow.\n- **Template Variations**: Offer post style presets (e.g., technical, story-driven, short-form).\n- **CRM Sync**: Save approved posts and stats in Airtable or Notion for team use.\n"
      },
      "typeVersion": 1
    },
    {
      "id": "85fcea76-f016-49d2-97fa-d1d5a2652559",
      "name": "Générer une image conforme à la marque",
      "type": "n8n-nodes-base.executeWorkflow",
      "position": [
        -1100,
        920
      ],
      "parameters": {
        "mode": "each",
        "options": {
          "waitForSubWorkflow": true
        },
        "workflowId": {
          "__rl": true,
          "mode": "list",
          "value": "hYnqsBhAjnEFvKSk",
          "cachedResultName": "AIRTOP — Generate and Edit On-Brand Images - V3"
        },
        "workflowInputs": {
          "value": {
            "Prompt": "={{ $json.Image_prompt }}",
            "Image_drive_id": "={{ $json.Image_id }}"
          },
          "schema": [
            {
              "id": "Prompt",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Prompt",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Image_drive_id",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Image_drive_id",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "Prompt"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": true
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "79c5ba3a-573c-46cc-a592-4dc3c87abb37",
      "name": "Version finale",
      "type": "n8n-nodes-base.slack",
      "position": [
        -40,
        1000
      ],
      "webhookId": "845afb67-751d-47c3-9113-4d8897cf6c5e",
      "parameters": {
        "text": "=----------------  \nFINAL POST AND VISUAL\n\n{{ $('Set Image Prompt').item.json.Post }}\n\n{{ $('Generate on-brand image').item.json.Branded_view_url[0] }}\n\n",
        "select": "channel",
        "channelId": {
          "__rl": true,
          "mode": "list",
          "value": "C08QUB9N5FX",
          "cachedResultName": "gen-social-posts"
        },
        "otherOptions": {
          "unfurl_links": false,
          "unfurl_media": false
        },
        "authentication": "oAuth2"
      },
      "credentials": {
        "slackOAuth2Api": {
          "id": "SDxCef2uzWkOV8Q2",
          "name": "Slack account 3"
        }
      },
      "typeVersion": 2.3
    },
    {
      "id": "ac358c88-f9a6-42c0-ba2b-8574a6551047",
      "name": "Générer l'image",
      "type": "n8n-nodes-base.formTrigger",
      "position": [
        -1780,
        500
      ],
      "webhookId": "5f900ce4-d362-4f5c-a7a4-db7812e66c27",
      "parameters": {
        "options": {},
        "formTitle": "Generate Image",
        "formFields": {
          "values": [
            {
              "fieldType": "textarea",
              "fieldLabel": "Post",
              "requiredField": true
            }
          ]
        },
        "formDescription": "Start here if you have the post and just want to generate and revise the visual for it"
      },
      "typeVersion": 2.2
    },
    {
      "id": "2e528d15-8d3c-4c1f-884c-570b4133df11",
      "name": "Révision humaine du texte",
      "type": "n8n-nodes-base.slack",
      "position": [
        -2860,
        920
      ],
      "webhookId": "f14b7adf-f493-411f-a8ba-15a20856dac7",
      "parameters": {
        "select": "channel",
        "message": "=----------------\n\n{{ $json.Post }}\n\n-----------------\nBased on: {{ $json.URL }}",
        "options": {
          "limitWaitTime": {
            "values": {
              "resumeUnit": "days",
              "resumeAmount": 3
            }
          },
          "appendAttribution": false,
          "responseFormTitle": "Image Feedback"
        },
        "channelId": {
          "__rl": true,
          "mode": "list",
          "value": "C08QUB9N5FX",
          "cachedResultName": "gen-social-posts"
        },
        "operation": "sendAndWait",
        "responseType": "freeText",
        "authentication": "oAuth2"
      },
      "credentials": {
        "slackOAuth2Api": {
          "id": "SDxCef2uzWkOV8Q2",
          "name": "Slack account 3"
        }
      },
      "typeVersion": 2.3
    },
    {
      "id": "1c1cffaf-0ba4-4ef9-9c4b-46cc509360ed",
      "name": "Révision humaine du visuel",
      "type": "n8n-nodes-base.slack",
      "position": [
        -880,
        920
      ],
      "webhookId": "d7954847-96c1-4fe9-87e3-76b0d7483882",
      "parameters": {
        "select": "channel",
        "message": "=----------------\nPOST \n\n{{ $('Set Image Prompt').item.json.Post }}\n\nIMAGE PROMPT\n\n{{ $('Set Image Prompt1').item.json.Image_prompt }}\n\nIMAGE\n\n{{ $('Generate on-brand image').item.json.Branded_view_url[0] }}\n\n-----------------\n",
        "options": {
          "limitWaitTime": {
            "values": {
              "resumeUnit": "days",
              "resumeAmount": 3
            }
          },
          "appendAttribution": false,
          "responseFormTitle": "Image Feedback"
        },
        "channelId": {
          "__rl": true,
          "mode": "list",
          "value": "C08QUB9N5FX",
          "cachedResultName": "gen-social-posts"
        },
        "operation": "sendAndWait",
        "responseType": "freeText",
        "authentication": "oAuth2"
      },
      "credentials": {
        "slackOAuth2Api": {
          "id": "SDxCef2uzWkOV8Q2",
          "name": "Slack account 3"
        }
      },
      "typeVersion": 2.3
    },
    {
      "id": "f2ac9ab6-d48e-494a-80c1-d79660fedf85",
      "name": "Générer le texte du post",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        -3540,
        1040
      ],
      "parameters": {
        "text": "=Write a helpful educational, and engaging LinkedIn posts based on a webpage scraped content below or the Post text below and according to the instructions provided by the user.\n\nInstructions: {{ $json.Instructions }}\n\n{{ $json.Post }}\n\n{{ $json.Webpage_content }}",
        "prompt": "define",
        "options": {},
        "resource": "assistant",
        "assistantId": {
          "__rl": true,
          "mode": "list",
          "value": "asst_aYEHuzWeFxMBN2qu4FnXRsJ4",
          "cachedResultName": "Social Media Writer"
        }
      },
      "credentials": {
        "openAiApi": {
          "id": "G7GIqTr0ghwb5P24",
          "name": "OpenAi Airtop Email Writer"
        }
      },
      "typeVersion": 1.8
    },
    {
      "id": "32074dfb-45bd-4031-b00d-d8da9a95157c",
      "name": "Obtenir la page",
      "type": "n8n-nodes-base.airtop",
      "position": [
        -3980,
        1040
      ],
      "parameters": {
        "url": "={{ $json['Page URL'] }}",
        "resource": "extraction",
        "operation": "scrape",
        "sessionMode": "new"
      },
      "credentials": {
        "airtopApi": {
          "id": "Yi4YPNnovLVUjFn5",
          "name": "Airtop Official Org"
        }
      },
      "typeVersion": 1
    }
  ],
  "active": true,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "aaba088d-91e4-4f56-bc20-7de6db109448",
  "connections": {
    "32074dfb-45bd-4031-b00d-d8da9a95157c": {
      "main": [
        [
          {
            "node": "b6435124-f7d0-466c-9f11-908fddabd9b8",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "e4e324b5-8e0d-41c8-980b-3490501aead5": {
      "main": [
        [
          {
            "node": "2e528d15-8d3c-4c1f-884c-570b4133df11",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b36ddef0-15fe-47b3-ae0b-cf75a7e88695": {
      "main": [
        [
          {
            "node": "f2ac9ab6-d48e-494a-80c1-d79660fedf85",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b6435124-f7d0-466c-9f11-908fddabd9b8": {
      "main": [
        [
          {
            "node": "f2ac9ab6-d48e-494a-80c1-d79660fedf85",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ac358c88-f9a6-42c0-ba2b-8574a6551047": {
      "main": [
        [
          {
            "node": "63b748f9-6884-4c37-97cf-00372a8b9653",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "63b748f9-6884-4c37-97cf-00372a8b9653": {
      "main": [
        [
          {
            "node": "77eb23ab-77e5-4ccb-bb51-73afc935f856",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "91ea946a-30a8-4d0f-958b-4a1417295363": {
      "ai_languageModel": [
        [
          {
            "node": "51025a08-3034-435c-a3c5-0950cf540d17",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "76323ea2-9c7a-41f7-a9a1-dd375dc3c373": {
      "main": [
        [
          {
            "node": "85fcea76-f016-49d2-97fa-d1d5a2652559",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ac381668-70d7-4cd1-9a71-8e0ac55a9f31": {
      "main": [
        [
          {
            "node": "85fcea76-f016-49d2-97fa-d1d5a2652559",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "f2ac9ab6-d48e-494a-80c1-d79660fedf85": {
      "main": [
        [
          {
            "node": "e4e324b5-8e0d-41c8-980b-3490501aead5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "e790b122-c9ca-421a-8001-8eaa4e315e85": {
      "main": [
        [
          {
            "node": "32074dfb-45bd-4031-b00d-d8da9a95157c",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "e1d23987-51d7-464b-ab1e-974a5ca5285c": {
      "ai_languageModel": [
        [
          {
            "node": "b59b8989-1e22-4496-a2b9-1803897ba50e",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "b59b8989-1e22-4496-a2b9-1803897ba50e": {
      "main": [
        [
          {
            "node": "ac381668-70d7-4cd1-9a71-8e0ac55a9f31",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "79c5ba3a-573c-46cc-a592-4dc3c87abb37",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "1c1cffaf-0ba4-4ef9-9c4b-46cc509360ed": {
      "main": [
        [
          {
            "node": "b59b8989-1e22-4496-a2b9-1803897ba50e",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2e528d15-8d3c-4c1f-884c-570b4133df11": {
      "main": [
        [
          {
            "node": "51025a08-3034-435c-a3c5-0950cf540d17",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "77eb23ab-77e5-4ccb-bb51-73afc935f856": {
      "main": [
        [
          {
            "node": "76323ea2-9c7a-41f7-a9a1-dd375dc3c373",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "85fcea76-f016-49d2-97fa-d1d5a2652559": {
      "main": [
        [
          {
            "node": "1c1cffaf-0ba4-4ef9-9c4b-46cc509360ed",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "51025a08-3034-435c-a3c5-0950cf540d17": {
      "main": [
        [
          {
            "node": "b36ddef0-15fe-47b3-ae0b-cf75a7e88695",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "63b748f9-6884-4c37-97cf-00372a8b9653",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Foire aux questions

Comment utiliser ce workflow ?

Copiez le code de configuration JSON ci-dessus, créez un nouveau workflow dans votre instance n8n et sélectionnez "Importer depuis le JSON", collez la configuration et modifiez les paramètres d'authentification selon vos besoins.

Dans quelles scénarios ce workflow est-il adapté ?

Avancé - Création de contenu, IA Multimodale

Est-ce payant ?

Ce workflow est entièrement gratuit et peut être utilisé directement. Veuillez noter que les services tiers utilisés dans le workflow (comme l'API OpenAI) peuvent nécessiter un paiement de votre part.

Workflows recommandés

AI驱动dee-mail分诊与automatique回复系统,intégrationOpenAIagentetGmail
AI驱动dee-mail分诊与automatique回复系统,intégrationOpenAIagentetGmail
If
Set
Gmail
+
If
Set
Gmail
68 NœudsAbdullahi Ahmed
Création de contenu
Utiliser Airtop, GPT-4 Mini et Gmail pour analyser l'UX et la qualité SEO d'un site
Utiliser Airtop, GPT-4 Mini et Gmail pour analyser l'UX et la qualité SEO d'un site web
Set
Code
Html
+
Set
Code
Html
33 NœudsLukaszB
Création de contenu
Version professionnelle de l'automatisation de blog WordPress (recherche approfondie) v2.1 sur le marché
Automatisation de la création de blog optimisé pour le SEO avec GPT-4o, Perplexity AI et support multilingue
If
Set
Xml
+
If
Set
Xml
125 NœudsDaniel Ng
Création de contenu
Automatisation de la création de contenu viral avec OpenAI, ElevenLabs et Fal.ai pour les vidéos, les podcasts et l'ASMR
Automatiser la création de contenu viral pour la vidéo, les podcasts et l'ASMR avec OpenAI, ElevenLabs et Fal.ai
Set
Code
Wait
+
Set
Code
Wait
97 NœudsAdam Crafts
Création de contenu
Créer des campagnes publicitaires Meta générées par l'IA à partir d'URL de produits en utilisant OpenAI et Firecrawl
Créer des campagnes publicitaires Meta générées par l'IA à partir d'URL de produits avec OpenAI et Firecrawl
If
Set
Code
+
If
Set
Code
40 NœudsAdam Crafts
Création de contenu
Créer un blog WordPress optimisé pour le référencement avec des mots-clés et des médias en utilisant Perplexity et GPT
Créer un blog SEO optimisé pour WordPress avec des mots-clés et des supports média en utilisant Perplexity et GPT
Set
Code
Limit
+
Set
Code
Limit
124 NœudsPaul
Création de contenu
Informations sur le workflow
Niveau de difficulté
Avancé
Nombre de nœuds25
Catégorie2
Types de nœuds9
Description de la difficulté

Adapté aux utilisateurs avancés, avec des workflows complexes contenant 16+ nœuds

Auteur

Airtop provides an intelligent browser automation API for AI agents, enabling seamless web interaction, including login, navigation, and data extraction from any site, even those with complex authentication - all with natural language instructions.In simple terms, we allow you to automate anything humans can do online, on any site with just words

Liens externes
Voir sur n8n.io

Partager ce workflow

Catégories

Catégories: 34