This workflow corresponds to n8n.io template #12358 — we link there as the canonical source.
This workflow follows the Agent → HTTP Request recipe pattern — see all workflows that pair these two integrations.
The workflow JSON
Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →
{
"id": "okLHYiatkCOaqkU5",
"name": "Import products from Faire to Shopify using BrowserAct, Gemini and Telegram",
"tags": [],
"nodes": [
{
"id": "a0e2f8c1-de38-42a1-8d6c-d04100ebde05",
"name": "Validate user Input",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
-1888,
144
],
"parameters": {
"text": "={{ $json.message.text }}",
"options": {
"systemMessage": "You are an input classification engine. Your sole purpose is to analyze user text and output a JSON object based on specific criteria. Do not generate conversational text; only output the raw JSON.\n\nRules for Classification (evaluated in order of priority):\n\n1. ARTICLE & LINK PROCESSING (Priority 1):\n If the user asks to create product or blog content for some product and provide URL to the product\n - CRITICAL CHECK: Does the input contain a valid URL or web link?\n - IF YES (Link is present):\n - Set \"Type\" to \"Create_Product\".\n - Extract the faire Site URL as \"Link\".\n - Output format: {\"Type\": \"Create_Product\", \"Link\": \"extracted_link\"}\n \n - IF NO (Link is missing or link is nor form Faire (www.faire.com)):\n - Treat this strictly as \"NoData\".\n - Output format: {\"Type\": \"NoData\", \"Link\": \"Null\"}\n\n2. REGULAR CHAT (Priority 2):\n If the user input is a greeting, small talk, or general conversational filler (e.g., \"Hello,\" \"How are you?\", \"Tell me a joke\") without asking for link processing.\n - Output format: {\"Type\": \"Chat\", \"Link\": \"Null\"}\n\n3. INSUFFICIENT DATA (Priority 3):\n If the user input is gibberish, vague, or if it matched the \"Article\" intent but lacked a link (as per Rule 1).\n - Output format: {\"Type\": \"NoData\", \"Link\": \"Null\"}\n\nOutput Constraint:\nReturn ONLY the raw JSON object. Do not wrap it in markdown code blocks. Do not add explanations."
},
"promptType": "define",
"hasOutputParser": true
},
"typeVersion": 3
},
{
"id": "4d969ac5-8b39-491e-8eaf-5063b7392c3f",
"name": "Google Gemini",
"type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
"position": [
-1888,
336
],
"parameters": {
"options": {}
},
"credentials": {
"googlePalmApi": {
"name": "<your credential>"
}
},
"typeVersion": 1
},
{
"id": "271ef11f-ae43-4e60-97ca-5f5d0ab0470b",
"name": "Structured Output",
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"position": [
-1760,
320
],
"parameters": {
"autoFix": true,
"jsonSchemaExample": "{\"Type\": \"Article_Request\", \"Link\": \"extracted_link\"}"
},
"typeVersion": 1.3
},
{
"id": "c1db5076-1eb5-4198-a0a6-86756450f508",
"name": "Create a product",
"type": "n8n-nodes-base.shopify",
"position": [
560,
112
],
"parameters": {
"title": "={{ $json.output.title }}",
"resource": "product",
"authentication": "accessToken",
"additionalFields": {
"body_html": "={{ $json.output.body_html }}",
"product_type": "={{ $json.output.product_type }}"
}
},
"credentials": {
"shopifyAccessTokenApi": {
"name": "<your credential>"
}
},
"typeVersion": 1
},
{
"id": "8994219b-f674-4937-96d2-de1a7ad59106",
"name": "Structured Output Parser",
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"position": [
112,
304
],
"parameters": {
"autoFix": true,
"jsonSchemaExample": "{\n \"title\": \"EMILY & NOAH Backpack Esther #2 - Elegant Synthetic Design\",\n \"product_type\": \"Backpack\",\n \"body_html\": \"Html Output\",\n \"price\": 24,\n \"images\": [\n \"Image1\", \n \"Image2\", \n \"Image3\"\n ]\n}\n"
},
"typeVersion": 1.3
},
{
"id": "ccbf0a71-38f2-4ca6-8b6b-c35ef4e79d7e",
"name": "Human verification Switch",
"type": "n8n-nodes-base.switch",
"position": [
-912,
128
],
"parameters": {
"rules": {
"values": [
{
"conditions": {
"options": {
"version": 3,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "cea414f0-feaa-4012-9826-9feaf49d3e40",
"operator": {
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json.status }}",
"rightValue": "finished"
}
]
}
},
{
"conditions": {
"options": {
"version": 3,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "cf3a1ab6-d5dc-4641-b3d7-7e8471fe502a",
"operator": {
"name": "filter.operator.equals",
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json.status }}",
"rightValue": "paused"
}
]
}
},
{
"conditions": {
"options": {
"version": 3,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "34483eff-4611-4e27-b2b7-071d50427152",
"operator": {
"name": "filter.operator.equals",
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json.status }}",
"rightValue": "failed"
}
]
}
}
]
},
"options": {}
},
"typeVersion": 3.4
},
{
"id": "d41a82f4-306d-4469-ada5-fb5bc56019de",
"name": "User Sends Message to Bot",
"type": "n8n-nodes-base.telegramTrigger",
"position": [
-2080,
144
],
"parameters": {
"updates": [
"message"
],
"additionalFields": {}
},
"credentials": {
"telegramApi": {
"name": "<your credential>"
}
},
"typeVersion": 1.2
},
{
"id": "2f12144f-e715-4ca7-8137-2461a84e95af",
"name": "Validation Type Switch",
"type": "n8n-nodes-base.switch",
"position": [
-1536,
128
],
"parameters": {
"rules": {
"values": [
{
"conditions": {
"options": {
"version": 3,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "9e003f66-d011-459a-a313-b603c0e14551",
"operator": {
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json.output.Type }}",
"rightValue": "Create_Product"
}
]
}
},
{
"conditions": {
"options": {
"version": 3,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "2ebb24ec-bd32-4e96-a022-93d066fda17f",
"operator": {
"name": "filter.operator.equals",
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json.output.Type }}",
"rightValue": "Chat"
}
]
}
},
{
"conditions": {
"options": {
"version": 3,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "24d355dd-efec-4946-96fe-3d82f3ee4d71",
"operator": {
"name": "filter.operator.equals",
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json.output.Type }}",
"rightValue": "NoData"
}
]
}
}
]
},
"options": {}
},
"typeVersion": 3.4
},
{
"id": "2f108343-b4ef-4f9d-bf0b-2f0a10c0dd12",
"name": "Process Initialization Alert",
"type": "n8n-nodes-base.telegram",
"position": [
-1088,
-16
],
"parameters": {
"text": "=Ok, I will do it please give me a moment.",
"chatId": "={{ $('User Sends Message to Bot').item.json.message.chat.id }}",
"additionalFields": {
"parse_mode": "HTML",
"appendAttribution": false
}
},
"credentials": {
"telegramApi": {
"name": "<your credential>"
}
},
"typeVersion": 1.2
},
{
"id": "2324fe9b-7560-4633-a06d-5dd7fbadf4cc",
"name": "Scrape Product Data",
"type": "n8n-nodes-browseract.browserAct",
"position": [
-1088,
144
],
"parameters": {
"type": "WORKFLOW",
"timeout": 7200,
"workflowId": "69706501323865842",
"workflowConfig": {
"value": {
"input-faire_Target_Link": "={{ $json.output.Link }}"
},
"schema": [
{
"id": "input-faire_Target_Link",
"type": "string",
"display": true,
"removed": false,
"required": false,
"description": "If left blank, the default value defined in BrowserAct will be used.",
"displayName": "faire_Target_Link",
"defaultMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"input-faire_Target_Link"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"open_incognito_mode": false
},
"credentials": {
"browserActApi": {
"name": "<your credential>"
}
},
"typeVersion": 1
},
{
"id": "ceb58def-bb06-491c-aa9e-1254d013f822",
"name": "Send Failure Alert",
"type": "n8n-nodes-base.telegram",
"position": [
-688,
320
],
"parameters": {
"text": "=Sorry we facing problem right now.",
"chatId": "={{ $('User Sends Message to Bot').item.json.message.chat.id }}",
"additionalFields": {
"parse_mode": "HTML",
"appendAttribution": false
}
},
"credentials": {
"telegramApi": {
"name": "<your credential>"
}
},
"typeVersion": 1.2
},
{
"id": "83d13354-d22e-4037-9572-b31b5a568ce2",
"name": "Ask User for Verification",
"type": "n8n-nodes-base.telegram",
"position": [
-688,
144
],
"parameters": {
"text": "=Please complete the human varification.",
"chatId": "={{ $('User Sends Message to Bot').item.json.message.chat.id }}",
"additionalFields": {
"parse_mode": "HTML",
"appendAttribution": false
}
},
"credentials": {
"telegramApi": {
"name": "<your credential>"
}
},
"typeVersion": 1.2
},
{
"id": "a6068804-3e64-41d8-b674-adc1b5b27faf",
"name": "Give Time to Complete Verification",
"type": "n8n-nodes-base.wait",
"position": [
-464,
144
],
"parameters": {
"unit": "minutes",
"amount": 10
},
"typeVersion": 1.1
},
{
"id": "32234dfe-f785-48ae-98c8-fbb57c9e5984",
"name": "Get Data From BrowserAct",
"type": "n8n-nodes-base.httpRequest",
"position": [
-240,
144
],
"parameters": {
"url": "https://api.browseract.com/v2/workflow/get-task",
"options": {},
"sendQuery": true,
"authentication": "predefinedCredentialType",
"queryParameters": {
"parameters": [
{
"name": "task_id",
"value": "={{ $('Scrape Product Data').item.json.id }}"
}
]
},
"nodeCredentialType": "browserActApi"
},
"credentials": {
"browserActApi": {
"name": "<your credential>"
}
},
"typeVersion": 4.3
},
{
"id": "b0bba8cd-bbb9-4906-8fd8-0a9942f04a27",
"name": "Analyze Products and Generate Data",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
0,
112
],
"parameters": {
"text": "={{ $json.output.string }}",
"options": {
"systemMessage": "**Role:**\nYou are an expert Shopify SEO Copywriter and Data Processor.\n\n**Input Data:**\nYou will receive a raw JSON list containing multiple product objects.\n\n**Task:**\nYou must process **ONLY the first product** (index 0) from the input list. Ignore all other products in the list.\n\n**Output Format:**\nYou must output a single, valid JSON object. Do not wrap the output in Markdown code blocks (like ```json). Do not output any conversational text. Return only the raw JSON string.\n\n**Required JSON Fields:**\n\n1. **\"title\"**:\n * Create a descriptive, high-converting product title.\n * Include the brand name (e.g., \"EMILY & NOAH\") if mentioned in the description.\n * Include the model name and key features.\n\n2. **\"product_type\"**:\n * Analyze the description to categorize the item (e.g., \"Backpack\", \"Shoulder Bag\", \"Shopper\", etc.).\n\n3. **\"price\"**:\n * Extract the price value exactly as it appears in the input (as a number).\n\n4. **\"body_html\"**:\n * Write a persuasive product description in HTML format.\n * **Requirements:**\n * Use `<h2>` tags for section headers (e.g., \"Design\", \"Features\").\n * Use `<p>` tags for standard text.\n * Use `<ul>` and `<li>` tags to list features (material, pockets, dimensions).\n * Use `<strong>` tags to highlight key benefits.\n * Do NOT use `<html>`, `<head>`, or `<body>` wrapper tags. Only return the inner HTML content.\n\n5. **\"images\"**:\n * Extract every image URL provided in the source object (e.g., \"Image1\", \"Image2\", \"Image3\", etc.).\n * Combine them into a single list (array) of strings.\n\n**Strict Constraints:**\n* Output **only** clean JSON.\n* Process **only** the 1st item.\n\nOutput Example : \n{\n \"title\": \"EMILY & NOAH Backpack Esther #2 - Elegant Synthetic Design\",\n \"product_type\": \"Backpack\",\n \"body_html\": \"Html Output\",\n \"price\": 24,\n \"images\": [\n \"Image1\", \n \"Image2\", \n \"Image3\"\n ]\n}\n"
},
"promptType": "define",
"hasOutputParser": true
},
"executeOnce": true,
"typeVersion": 3
},
{
"id": "68fe9bcd-27a9-4357-9c75-ef6b87840216",
"name": "Add Price to Product",
"type": "n8n-nodes-base.httpRequest",
"onError": "continueRegularOutput",
"position": [
832,
112
],
"parameters": {
"url": "=https://browseract-2.myshopify.com/admin/api/2025-01/products/{{ $json.id }}/variants.json",
"method": "POST",
"options": {},
"jsonBody": "= {\n \"variant\": {\n \"option1\": \"{{ $('Analyze Products and Generate Data').first().json.output.product_type }}\",\n \"price\": \"{{ $('Analyze Products and Generate Data').first().json.output.price }}\",\n \"sku\": \"SKU-{{ $('Analyze Products and Generate Data').item.json.output.product_type }}\"\n }\n }\n",
"sendBody": true,
"specifyBody": "json",
"authentication": "predefinedCredentialType",
"nodeCredentialType": "shopifyAccessTokenApi"
},
"credentials": {
"shopifyAccessTokenApi": {
"name": "<your credential>"
}
},
"typeVersion": 4.2
},
{
"id": "c7875c1a-d3ab-444e-a0cc-2c05bbfef6bf",
"name": "Wait for All Inputs",
"type": "n8n-nodes-base.merge",
"position": [
736,
288
],
"parameters": {
"mode": "chooseBranch",
"useDataOfInput": 2
},
"typeVersion": 3.2
},
{
"id": "231584e8-0381-45b2-bed2-85e92e1e8b38",
"name": "Split Out Images",
"type": "n8n-nodes-base.splitOut",
"position": [
912,
288
],
"parameters": {
"options": {},
"fieldToSplitOut": "output.images"
},
"typeVersion": 1
},
{
"id": "f33a4ffb-2750-472c-abbc-a592f8f014a8",
"name": "Add Images to Product",
"type": "n8n-nodes-base.httpRequest",
"position": [
1072,
288
],
"parameters": {
"url": "=https://browseract-2.myshopify.com/admin/api/2025-01/products/{{ $('Create a product').first().json.id }}/images.json",
"method": "POST",
"options": {},
"jsonBody": "={\n \"image\": {\n \"src\": \"{{ $json[\"output.images\"] }}\"\n }\n}",
"sendBody": true,
"specifyBody": "json",
"authentication": "predefinedCredentialType",
"nodeCredentialType": "shopifyAccessTokenApi"
},
"credentials": {
"shopifyAccessTokenApi": {
"name": "<your credential>"
}
},
"typeVersion": 4.2
},
{
"id": "d0c15976-d8b8-4258-ade1-48bc9c57285d",
"name": "Google Gemini3",
"type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
"position": [
0,
304
],
"parameters": {
"options": {}
},
"credentials": {
"googlePalmApi": {
"name": "<your credential>"
}
},
"typeVersion": 1
},
{
"id": "689539bb-53ed-48c9-a3bc-3aa6dab1673d",
"name": "Google Gemini2",
"type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
"position": [
-1136,
720
],
"parameters": {
"options": {}
},
"credentials": {
"googlePalmApi": {
"name": "<your credential>"
}
},
"typeVersion": 1
},
{
"id": "472b9a6f-5817-447b-873f-2e64e29811ba",
"name": "Answering Agent",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
-1136,
560
],
"parameters": {
"text": "=Input type : {{ $json.output.Type }} | User Input : {{ $('User Sends Message to Bot').item.json.message.text }}",
"options": {
"systemMessage": "if the input type is Nodata ask the user to provide the Link to the Product using Faire wholesaler site.\n\nif the input type is chat, analyze the user input and generate single response\n\nsend the result out as a raw text.\navoid using any tags or notations like ```text ```"
},
"promptType": "define"
},
"typeVersion": 3
},
{
"id": "d8bb3e70-d724-4dde-ac31-30344035ea9e",
"name": "Answer the User",
"type": "n8n-nodes-base.telegram",
"position": [
-720,
560
],
"parameters": {
"text": "={{ $json.output }}",
"chatId": "={{ $('User Sends Message to Bot').item.json.message.chat.id }}",
"additionalFields": {
"parse_mode": "HTML",
"appendAttribution": false
}
},
"credentials": {
"telegramApi": {
"name": "<your credential>"
}
},
"typeVersion": 1.2
},
{
"id": "d32bc9b8-867e-40b0-b1d1-e5f8d1ff6c20",
"name": "Documentation",
"type": "n8n-nodes-base.stickyNote",
"position": [
-2496,
-448
],
"parameters": {
"width": 380,
"height": 540,
"content": "## \u26a1 Workflow Overview & Setup\n\n**Summary:** This automation takes a Faire product link from Telegram, scrapes the details using BrowserAct, and automatically creates a new product in Shopify with an AI-optimized title, description, and price.\n\n### Requirements\n* **Credentials:** Telegram, BrowserAct, Google Gemini (PaLM), Shopify.\n* **Mandatory:** BrowserAct API (Template: **Product Importer Bot for Shopify**)\n\n### How to Use\n1. **Credentials:** Set up all required credentials in the n8n settings.\n2. **BrowserAct Template:** Ensure you have the **Product Importer Bot for Shopify** template saved in your BrowserAct account.\n3. **Operation:** Send a Faire product link to your Telegram bot. The system will extract the data, rewrite it for SEO, and publish it to your Shopify store.\n\n### Need Help?\n[How to Find Your BrowserAct API Key & Workflow ID](https://docs.browseract.com)\n[How to Connect n8n to BrowserAct](https://docs.browseract.com)\n[How to Use & Customize BrowserAct Templates](https://docs.browseract.com)"
},
"typeVersion": 1
},
{
"id": "fffb577e-eb28-4b1b-8b56-de9596f7ff34",
"name": "Step 1 Explanation",
"type": "n8n-nodes-base.stickyNote",
"position": [
-2096,
-16
],
"parameters": {
"color": 7,
"width": 700,
"height": 108,
"content": "### \ud83d\udd0d Step 1: Input Analysis & Security\n\nThe workflow intercepts Telegram messages to identify Faire product links. It uses an AI agent to validate the input. If a valid link is found, it triggers a \"Human Verification Switch\" to handle potential CAPTCHA challenges during scraping."
},
"typeVersion": 1
},
{
"id": "c2b05ebf-bc24-4b22-94ab-bac6cbfdad45",
"name": "Step 2 Explanation",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1088,
-160
],
"parameters": {
"color": 7,
"width": 1356,
"height": 92,
"content": "### \ud83d\udecd\ufe0f Step 2: Scraping & Content Synthesis\n\nBrowserAct scrapes the product page for title, price, description, and images. An AI agent then rewrites the raw data into a persuasive, SEO-friendly Shopify product description with clean HTML formatting."
},
"typeVersion": 1
},
{
"id": "b1cdc391-75e7-4c8c-bcd9-3f1fe91f5726",
"name": "Step 3 Explanation",
"type": "n8n-nodes-base.stickyNote",
"position": [
432,
-64
],
"parameters": {
"color": 7,
"width": 888,
"height": 108,
"content": "### \ud83d\udce6 Step 3: Product Creation & Image Upload\n\nThe system creates the base product in Shopify using the AI-generated content. It then adds variants (like size/color) and uploads all product images to the listing via the Shopify API."
},
"typeVersion": 1
},
{
"id": "e8c60674-73f2-4c7d-b8dc-dee33115f2b1",
"name": "Step 4 Explanation",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1184,
832
],
"parameters": {
"color": 7,
"width": 676,
"height": 120,
"content": "### \ud83d\udcac Step 2-2: Conversational Fallback\n\nIf no Faire link is present in the user's message, this branch engages the user in natural conversation or prompts them to provide a Faire link for processing."
},
"typeVersion": 1
},
{
"id": "ae04ff28-5df2-4852-bcf1-600ebd720efa",
"name": "Sticky Note",
"type": "n8n-nodes-base.stickyNote",
"position": [
-2080,
-448
],
"parameters": {
"color": 6,
"width": 672,
"height": 400,
"content": "@[youtube](1Q9-XGlaoFA)"
},
"typeVersion": 1
}
],
"active": false,
"settings": {
"executionOrder": "v1"
},
"versionId": "38151f5b-87ae-44f6-b21d-4f6553d8fc5d",
"connections": {
"Google Gemini": {
"ai_languageModel": [
[
{
"node": "Validate user Input",
"type": "ai_languageModel",
"index": 0
},
{
"node": "Structured Output",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Google Gemini2": {
"ai_languageModel": [
[
{
"node": "Answering Agent",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Google Gemini3": {
"ai_languageModel": [
[
{
"node": "Analyze Products and Generate Data",
"type": "ai_languageModel",
"index": 0
},
{
"node": "Structured Output Parser",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Answering Agent": {
"main": [
[
{
"node": "Answer the User",
"type": "main",
"index": 0
}
]
]
},
"Create a product": {
"main": [
[
{
"node": "Add Price to Product",
"type": "main",
"index": 0
},
{
"node": "Wait for All Inputs",
"type": "main",
"index": 0
}
]
]
},
"Split Out Images": {
"main": [
[
{
"node": "Add Images to Product",
"type": "main",
"index": 0
}
]
]
},
"Structured Output": {
"ai_outputParser": [
[
{
"node": "Validate user Input",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"Scrape Product Data": {
"main": [
[
{
"node": "Human verification Switch",
"type": "main",
"index": 0
}
]
]
},
"Validate user Input": {
"main": [
[
{
"node": "Validation Type Switch",
"type": "main",
"index": 0
}
]
]
},
"Wait for All Inputs": {
"main": [
[
{
"node": "Split Out Images",
"type": "main",
"index": 0
}
]
]
},
"Validation Type Switch": {
"main": [
[
{
"node": "Process Initialization Alert",
"type": "main",
"index": 0
},
{
"node": "Scrape Product Data",
"type": "main",
"index": 0
}
],
[
{
"node": "Answering Agent",
"type": "main",
"index": 0
}
],
[
{
"node": "Answering Agent",
"type": "main",
"index": 0
}
]
]
},
"Get Data From BrowserAct": {
"main": [
[
{
"node": "Analyze Products and Generate Data",
"type": "main",
"index": 0
}
]
]
},
"Structured Output Parser": {
"ai_outputParser": [
[
{
"node": "Analyze Products and Generate Data",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"Ask User for Verification": {
"main": [
[
{
"node": "Give Time to Complete Verification",
"type": "main",
"index": 0
}
]
]
},
"Human verification Switch": {
"main": [
[
{
"node": "Analyze Products and Generate Data",
"type": "main",
"index": 0
}
],
[
{
"node": "Ask User for Verification",
"type": "main",
"index": 0
}
],
[
{
"node": "Send Failure Alert",
"type": "main",
"index": 0
}
]
]
},
"User Sends Message to Bot": {
"main": [
[
{
"node": "Validate user Input",
"type": "main",
"index": 0
}
]
]
},
"Analyze Products and Generate Data": {
"main": [
[
{
"node": "Create a product",
"type": "main",
"index": 0
},
{
"node": "Wait for All Inputs",
"type": "main",
"index": 1
}
]
]
},
"Give Time to Complete Verification": {
"main": [
[
{
"node": "Get Data From BrowserAct",
"type": "main",
"index": 0
}
]
]
}
}
}
Credentials you'll need
Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.
browserActApigooglePalmApishopifyAccessTokenApitelegramApi
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
This workflow acts as an automated dropshipping assistant. It allows you to send product links from Faire.com to a Telegram bot, which then scrapes the product data, rewrites it for SEO using AI, and imports it directly into your Shopify store—handling images, pricing, and…
Source: https://n8n.io/workflows/12358/ — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
Creators, marketers, and brands that want to turn a single product photo into premium motion clips, then optionally publish to Instagram/TikTok/YouTube via LATE. No editing skills required.
Product to Social Video (xCodeWraith Edition). Uses telegram, agentTool, telegramTrigger, httpRequest. Event-driven trigger; 83 nodes.
This workflow transforms your Telegram bot into an intelligent creative assistant. It can chat conversationally, fetch trending image prompts from PromptHero for inspiration, or perform a deep "remix"
This automation is designed to help you generate AI-powered music tracks, cover art, and fully rendered music videos — all triggered from a simple Telegram chat and managed via Google Sheets.
LinkedIn URL → Scrape → Match → Screen → Decide, all automated