This workflow corresponds to n8n.io template #12694 — we link there as the canonical source.
This workflow follows the Agent → Googlegemini 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 →
{
"meta": {
"templateCredsSetupCompleted": true
},
"nodes": [
{
"id": "7e36d543-57f2-4fa9-bd51-939c14a606c9",
"name": "Shopify Trigger1",
"type": "n8n-nodes-base.shopifyTrigger",
"position": [
592,
160
],
"parameters": {
"topic": "collections/create",
"authentication": "accessToken"
},
"credentials": {
"shopifyAccessTokenApi": {
"name": "<your credential>"
}
},
"typeVersion": 1
},
{
"id": "ab40f1b2-45a3-4e5a-82f5-472c68f44ff4",
"name": "data allocation",
"type": "n8n-nodes-base.set",
"position": [
768,
160
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "447cb551-3d99-4e40-9c25-e8cdfb0abf3d",
"name": "id",
"type": "string",
"value": "={{ $json.node.id }}"
},
{
"id": "5b7333d9-1974-40ea-ac17-db16bcb8d963",
"name": "title",
"type": "string",
"value": "={{ $json.node.title }}"
},
{
"id": "4a2107e1-c680-4ae4-a395-2481cc709b2e",
"name": "handle",
"type": "string",
"value": "={{ $json.node.handle }}"
},
{
"id": "f819b79b-6a88-4b74-aa4e-9912c4e4c19c",
"name": "description",
"type": "string",
"value": "={{ $json.node.description }}"
},
{
"id": "27c1f82b-9939-4576-aa46-e0a6f59a7b8e",
"name": "updatedAt",
"type": "string",
"value": "={{ $json.node.updatedAt }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "c84c209e-2e72-4712-b070-e3dbd45978d7",
"name": "data allocation1",
"type": "n8n-nodes-base.set",
"position": [
2416,
176
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "447cb551-3d99-4e40-9c25-e8cdfb0abf3d",
"name": "id",
"type": "string",
"value": "={{ $json.node.id }}"
},
{
"id": "5b7333d9-1974-40ea-ac17-db16bcb8d963",
"name": "title",
"type": "string",
"value": "={{ $json.node.title }}"
},
{
"id": "4a2107e1-c680-4ae4-a395-2481cc709b2e",
"name": "handle",
"type": "string",
"value": "={{ $json.node.handle }}"
},
{
"id": "f819b79b-6a88-4b74-aa4e-9912c4e4c19c",
"name": "description",
"type": "string",
"value": "={{ $json.node.description }}"
},
{
"id": "27c1f82b-9939-4576-aa46-e0a6f59a7b8e",
"name": "updatedAt",
"type": "string",
"value": "={{ $json.node.updatedAt }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "261ab445-e722-4c74-9bc6-5c8a24aadbcc",
"name": "collection API call",
"type": "n8n-nodes-base.httpRequest",
"position": [
1744,
160
],
"parameters": {
"url": "https://{store-name}.myshopify.com/admin/api/2025-10/graphql.json",
"method": "POST",
"options": {},
"jsonBody": "{\n \"query\": \"query GetCollections($first: Int!, $after: String) { collections(first: $first, after: $after) { edges { cursor node { id title handle description updatedAt } } pageInfo { hasNextPage endCursor } } }\",\n \"variables\": {\n \"first\": 2,\n \"after\": null\n }\n}",
"sendBody": true,
"specifyBody": "json",
"authentication": "predefinedCredentialType",
"nodeCredentialType": "shopifyAccessTokenApi"
},
"credentials": {
"shopifyAccessTokenApi": {
"name": "<your credential>"
}
},
"typeVersion": 4.3
},
{
"id": "c7034b4b-a01f-4d83-afa9-20decc7dde52",
"name": "START",
"type": "n8n-nodes-base.manualTrigger",
"position": [
1536,
160
],
"parameters": {},
"typeVersion": 1
},
{
"id": "74a291ad-a58e-454f-8f67-c1298251c935",
"name": "collection data storing",
"type": "n8n-nodes-base.googleSheets",
"position": [
2640,
176
],
"parameters": {
"columns": {
"value": {
"id": "={{ $json.id }}",
"type": "old collections",
"title": "={{ $json.title }}",
"handle": "={{ $json.handle }}",
"status": "pending",
"updatedAt": "={{ $json.updatedAt }}",
"description": "={{ $json.description }}",
"collection_url": "=www.astools.nl/collections/{{ $json.handle }}"
},
"schema": [
{
"id": "id",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "id",
"defaultMatch": true,
"canBeUsedToMatch": true
},
{
"id": "title",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "title",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "handle",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "handle",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "description",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "description",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "updatedAt",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "updatedAt",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "type",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "type",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "collection_url",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "collection_url",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "ai_title",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "ai_title",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "ai_tags",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "ai_tags",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "ai_description",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "ai_description",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "image_prompt",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "image_prompt",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "image_url",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "image_url",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "article_url",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "article_url",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "status",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "status",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"id"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 953467342,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1mKEh5BO9v8bY1iJNQDxu8Kvy1GMaTFheifvhCenfZOQ/edit#gid=953467342",
"cachedResultName": "Collection_data"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1mKEh5BO9v8bY1iJNQDxu8Kvy1GMaTFheifvhCenfZOQ",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1mKEh5BO9v8bY1iJNQDxu8Kvy1GMaTFheifvhCenfZOQ/edit?usp=drivesdk",
"cachedResultName": "AsTools_shopify_to_blog"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 4.7
},
{
"id": "59b0c005-e77a-4cab-84d2-b540d2a55545",
"name": "collection data storing1",
"type": "n8n-nodes-base.googleSheets",
"position": [
944,
160
],
"parameters": {
"columns": {
"value": {
"id": "={{ $json.id }}",
"type": "just added",
"title": "={{ $json.title }}",
"handle": "={{ $json.handle }}",
"status": "pending",
"updatedAt": "={{ $json.updatedAt }}",
"description": "={{ $json.description }}",
"collection_url": "=www.astools.nl/collections/{{ $json.handle }}"
},
"schema": [
{
"id": "id",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "id",
"defaultMatch": true,
"canBeUsedToMatch": true
},
{
"id": "title",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "title",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "handle",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "handle",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "description",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "description",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "updatedAt",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "updatedAt",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "type",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "type",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "collection_url",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "collection_url",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "ai_title",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "ai_title",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "ai_tags",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "ai_tags",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "ai_description",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "ai_description",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "image_prompt",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "image_prompt",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "image_url",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "image_url",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "article_url",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "article_url",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "status",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "status",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"id"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 953467342,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1mKEh5BO9v8bY1iJNQDxu8Kvy1GMaTFheifvhCenfZOQ/edit#gid=953467342",
"cachedResultName": "Collection_data"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1mKEh5BO9v8bY1iJNQDxu8Kvy1GMaTFheifvhCenfZOQ",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1mKEh5BO9v8bY1iJNQDxu8Kvy1GMaTFheifvhCenfZOQ/edit?usp=drivesdk",
"cachedResultName": "AsTools_shopify_to_blog"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 4.7
},
{
"id": "ec3f7fed-7f4b-43e3-b716-362f21a80b08",
"name": "Sticky Note4",
"type": "n8n-nodes-base.stickyNote",
"position": [
528,
-144
],
"parameters": {
"color": 7,
"width": 3104,
"height": 576,
"content": "# 1. Collect new collection data and old collection data to sheet also create a custom blog for collection if required.\n## It will automatic start working to collecting **collection listing details** from the shopify store and maintain the google sheet."
},
"typeVersion": 1
},
{
"id": "9b0ac32f-6daf-43a6-a829-2f5934e75e7f",
"name": "Sticky Note6",
"type": "n8n-nodes-base.stickyNote",
"position": [
528,
32
],
"parameters": {
"color": 7,
"width": 912,
"height": 320,
"content": "## When new data added to Store"
},
"typeVersion": 1
},
{
"id": "86122942-e8e4-4fed-8584-f4689350f9cc",
"name": "Sticky Note7",
"type": "n8n-nodes-base.stickyNote",
"position": [
1472,
32
],
"parameters": {
"color": 7,
"width": 1360,
"height": 320,
"content": "## All previous collection data available in Shopify Store"
},
"typeVersion": 1
},
{
"id": "820fa104-e7dc-46b6-a842-9964477e1513",
"name": "Gemini2",
"type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
"position": [
2368,
672
],
"parameters": {
"options": {},
"modelName": "models/gemini-3-flash-preview"
},
"credentials": {
"googlePalmApi": {
"name": "<your credential>"
}
},
"typeVersion": 1
},
{
"id": "2d4e4d86-c742-404d-9279-b7f36ae8481e",
"name": "web search2",
"type": "n8n-nodes-base.perplexity",
"position": [
1904,
656
],
"parameters": {
"options": {},
"messages": {
"message": [
{
"content": "=# E-commerce Collection Research AI Agent \n**(Structured Research for Blog Generation | Neutral & Analytical)**\n\nYou are an **e-commerce market researcher and SEO strategist**.\n\nYour role is to **analyze a Shopify product collection conceptually** and return **structured research insights** that will later be used by another AI agent to write a blog post.\n\nYou must **NOT write the blog post itself**.\n\nYour output should focus on **why customers search for this collection, how they think about the purchase, and what information they need to decide**, while remaining neutral and research-driven.\n\n---\n\n## Ground Truth (Primary Source of Truth)\n\nUse the following Shopify collection data as the **primary source of truth**:\n\n- **Collection Title:** `{{ $json.title }}`\n- **Collection Description:** `{{ $json.description }}`\n- **Collection URL:** `{{ $json.collection_url }}`\n\nYou MAY:\n- Supplement with **general, non-brand-specific domain knowledge** about similar product categories\n- Infer buyer intent, use cases, and decision drivers logically\n\nYou MUST NOT:\n- Invent technical specifications, certifications, benchmarks, or performance claims\n- Add competitive comparisons or brand superiority claims\n- Introduce facts not reasonably implied by the collection data\n\n---\n\n## \ud83c\udfaf Objective\n\nAnalyze this collection from a **buyer-intent and search perspective** and produce **structured research insights** that help answer:\n\n- What core problems this collection addresses\n- Who typically buys products from this collection and why\n- How customers evaluate options before purchasing\n- What objections, risks, or uncertainties delay decisions\n- How this collection fits into real-world usage scenarios\n- How people search for this type of collection online\n\nThis research will directly inform:\n- Buying guides\n- SEO-driven blog content\n- Conversion-focused educational articles\n\nTone must remain **neutral, analytical, and research-focused** (not promotional).\n\n---\n\n## \ud83d\udd0e Focus Areas (MANDATORY)\n\nYour analysis must explicitly cover:\n\n### 1. Core Problems & Motivation\n- The underlying problems this collection solves\n- Triggers that cause customers to search for this category\n- Risks or consequences of choosing the wrong product\n\n### 2. Target Audiences & Decision Drivers\n- Primary and secondary buyer segments\n- Their priorities (e.g., reliability, compatibility, cost control, ease of use)\n- How motivations differ across audience types\n\n### 3. Real-World Usage Context\n- Practical, realistic situations where these products are used\n- Professional, home, or field-use considerations where relevant\n- How critical or frequent the usage typically is\n\n### 4. Feature \u2192 Benefit Logic\n- Features or characteristics implied by the collection\n- The practical benefits buyers expect from those features\n- Avoid technical exaggeration or marketing language\n\n### 5. Objections, Risks & Uncertainty\n- Common doubts or hesitation points before purchase\n- Concerns around fit, compatibility, longevity, or total cost\n- Information gaps buyers try to resolve before buying\n\n### 6. Search Intent & SEO Opportunity\n- Likely search intent patterns (informational, commercial, transactional, or mixed)\n- Keyword themes buyers use at different decision stages\n- Content angles that would genuinely help buyers make decisions\n\n---\n\n## \ud83d\udce4 Output Format (STRICT)\n\nReturn your findings **ONLY as a valid JSON object** using the schema below.\n\n- Do NOT include explanations\n- Do NOT include markdown in the output\n- Do NOT include commentary outside the JSON\n- Keep language neutral and research-focused\n\n```json\n{\n \"collectionSummary\": \"2\u20133 sentence neutral summary describing what this collection includes and its general purpose.\",\n \"targetAudience\": [\n \"Short description of a primary audience segment and their main priority\",\n \"Short description of a secondary audience segment and how their needs differ\"\n ],\n \"customerGoals\": [\n \"Clear, practical goals customers aim to achieve by purchasing products from this collection\"\n ],\n \"painPoints\": [\n \"3\u20137 concrete problems, frustrations, risks, or inefficiencies this collection helps address\"\n ],\n \"usageScenarios\": [\n \"3\u20137 realistic real-world situations where these products are commonly used\"\n ],\n \"featureToBenefitMap\": [\n {\n \"feature\": \"Feature or characteristic implied by the collection\",\n \"benefit\": \"Practical, real-world benefit delivered to the customer\"\n }\n ],\n \"objectionsAndConcerns\": [\n \"3\u20137 common doubts, questions, or hesitations customers consider before purchasing\"\n ],\n \"faqIdeas\": [\n \"5\u201310 realistic FAQ-style questions shoppers commonly ask about this type of collection\"\n ],\n \"seoResearch\": {\n \"searchIntent\": \"Primary search intent category (informational, commercial, transactional, or mixed) with a brief explanation.\",\n \"primaryKeyword\": \"One inferred main keyword phrase relevant to this collection.\",\n \"secondaryKeywords\": [\n \"3\u201310 related, long-tail, or semantic keyword ideas without search volume claims\"\n ],\n \"contentAngleIdeas\": [\n \"3\u20137 high-level content or blog angle ideas focused on helping buyers make decisions\"\n ]\n }\n}\n\n## Final Instruction\nThink like:\n- A buyer trying to avoid a bad purchase \n- An SEO strategist mapping content to decision stages \n- A researcher feeding a downstream blog-writing AI agent \nBe **accurate**, **restrained**, and **insight-driven**.\n\n**Output ONLY valid JSON.** \n**No explanations.** \n**No markdown.**"
}
]
},
"simplify": true,
"requestOptions": {}
},
"credentials": {
"perplexityApi": {
"name": "<your credential>"
}
},
"typeVersion": 1
},
{
"id": "243ca2b5-521f-46d9-8b78-d82e543f1030",
"name": "content generator2",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
2096,
656
],
"parameters": {
"text": "=## Input Data\nYou are given:\n\nproduct_title : {{ $('set batch size').item.json.title }}\nproduct_description : {{ $('set batch size').item.json.description }}\nwebsearch_data : {{ $json.message }}",
"options": {
"systemMessage": "=# Conversion-Focused Product Collection Blog AI Agent \n**(Extended Output Schema | Long-Form | High-Intent Buyers)**\n\nYou are a **senior B2B/B2C e-commerce content strategist and buying-guide copywriter**.\n\nYou specialize in **long-form, conversion-focused product collection articles** that help professionals and serious buyers:\n- Avoid costly mistakes \n- Understand real trade-offs \n- Confidently shortlist the right products \n\nYour writing prioritizes **decision clarity over promotion**.\n\n---\n\n## Writing Principles (MANDATORY)\n\nWrite in a **buyer-first, problem\u2013solution buying guide style**.\n\nAlways:\n- Explain real risks, trade-offs, and limitations\n- Clarify what truly matters vs what can be ignored\n- Address common objections and hesitation points\n- Emphasize workflow fit, reliability, and total cost of ownership\n- Use checklists, frameworks, and simple rules of thumb\n- Avoid hype, buzzwords, clich\u00e9s, or exaggerated claims\n\nAssume the reader is:\n- A professional or serious buyer\n- Time-constrained but willing to read practical guidance\n- Trying to choose correctly the first time\n\n---\n\n## Objective\n\nUsing the provided **research JSON as your ONLY factual source**, generate a **conversion-optimized product collection article** that:\n\n- Clearly explains the buyer\u2019s problem\n- Guides decision-making step by step\n- Positions the collection as a low-risk, practical solution\n- Builds trust before asking for action\n- Supports SEO, internal linking, and visual merchandising\n\n---\n\n## Strict Rules\n\nYou MUST NOT:\n- Perform new research\n- Browse the web\n- Invent specifications, certifications, benchmarks, or competitors\n- Add claims not implied by the research\n\nYou MUST:\n- Use ONLY the provided research JSON\n- Write original wording\n- Maintain a neutral, advisory tone\n- Output ONLY valid JSON\n- Respect all character and item limits exactly\n\n---\n\n## REQUIRED OUTPUT STRUCTURE (EXPANDED)\n\nReturn **ONE valid JSON object** with **EXACTLY these fields**:\n\n```json\n{\n \"article_title\": \"\",\n \"introduction\": \"\",\n \"buyer_context\": \"\",\n \"problem_title\": \"\",\n \"problem_paragraph\": \"\",\n \"problem_pointers\": [\n { \"name\": \"\", \"value\": \"\" }\n ],\n \"decision_factors\": [\n { \"name\": \"\", \"why_it_matters\": \"\", \"what_to_prioritize\": \"\" }\n ],\n \"solution_title\": \"\",\n \"solution_paragraph\": \"\",\n \"features_and_benefits\": [\n { \"name\": \"\", \"value\": \"\" }\n ],\n \"technical_specifications\": [\n { \"name\": \"\", \"value\": \"\" }\n ],\n \"use_case_segments\": [\n {\n \"segment\": \"\",\n \"description\": \"\",\n \"top_priorities\": [\n { \"name\": \"\", \"value\": \"\" }\n ]\n }\n ],\n \"real_life_usage\": [\n {\n \"title\": \"\",\n \"description\": \"\",\n \"points\": [\n { \"name\": \"\", \"value\": \"\" }\n ]\n }\n ],\n \"common_mistakes_to_avoid\": [\n { \"mistake\": \"\", \"impact\": \"\" }\n ],\n \"objections_and_clarifications\": [\n { \"concern\": \"\", \"clarification\": \"\" }\n ],\n \"faqs\": [\n {\n \"question\": \"\",\n \"answer\": \"\",\n \"key_points\": [\n { \"name\": \"\", \"value\": \"\" }\n ]\n }\n ],\n \"selection_checklist\": [\n \"\"\n ],\n \"seo_tags\": [\n \"\"\n ],\n \"image_generation_prompt\": \"\",\n \"recommendations_and_cta\": {\n \"title\": \"\",\n \"description\": \"\"\n }\n}\n\n# Field-Level Writing Guidance (Conversion-Focused)\n\n## article_title\n- Start with the **collection or brand name**\n- Include a clear **buying-intent hook** (e.g., \u201cHow to Choose\u201d, \u201cBuying Guide\u201d, \u201cProfessional Use\u201d)\n- Max: **100 characters OR 15 words**\n\n---\n\n## introduction\n- One short paragraph\n- Clearly state:\n - What the category is used for\n - Why buyers feel uncertain or overwhelmed\n - What decision this article helps them make\n- Max: **500 characters OR ~100 words**\n\n---\n\n## buyer_context\nExplain:\n- Who typically buys this collection\n- In what professional situations it\u2019s used\n- Why choosing the wrong option feels risky\n- Max: **~120 words**\n\n---\n\n## problem_paragraph & problem_pointers\nFocus on real-world pain points:\n- Downtime\n- Compatibility issues\n- Inefficiency\n- Cost of the wrong choice\n\n**problem_pointers**\n- **3\u20135 concrete risks or mistakes**\n- Each should describe a real consequence buyers want to avoid\n\n---\n\n## decision_factors\n- **3\u20135 core buying levers**\n- Each factor must include:\n - `why_it_matters` \u2192 business or workflow impact\n - `what_to_prioritize` \u2192 practical guidance, not specs\n\n---\n\n## solution_paragraph\n- Explain **HOW** the collection reduces risk\n- Reference:\n - Reliability\n - Compatibility\n - Efficiency\n - Longevity\n- Emphasize **fit-for-purpose**, not superiority\n- Max: **600 characters OR ~120 words**\n\n---\n\n## features_and_benefits\n- **5\u20137 items**\n- Derived **ONLY** from the provided research\n- Tie each feature directly to a **buyer outcome**\n\n---\n\n## technical_specifications\n- **5\u20137 items**\n- High-level, professional descriptors\n- Avoid exact numbers unless explicitly provided\n- Focus on **what the spec enables**, not raw data\n\n---\n\n## use_case_segments\n- **2\u20134 buyer segments**\n- Each represents a distinct workload or environment\n- Helps readers self-identify quickly and understand relevance\n\n---\n\n## real_life_usage\n- **2\u20133 scenarios**\n- Each must highlight:\n - Different operational contexts\n - Changing priorities based on use\n- Points should emphasize **decision logic**, not storytelling fluff\n\n---\n\n## common_mistakes_to_avoid\n- **3\u20135 mistakes**\n- Tie each mistake to a real consequence:\n - Downtime\n - Inefficiency\n - Re-purchase or wasted spend\n\n---\n\n## objections_and_clarifications\n- **3\u20135 common buyer concerns**\n- Respond with calm, factual, and reassuring explanations\n- No sales pressure or exaggeration\n\n---\n\n## faqs\n- **5\u20137 high-intent questions**\n- Each FAQ must include:\n - `question` \u2192 real buyer doubt, **\u2264 60 characters**\n - `answer` \u2192 clear, neutral clarification, **\u2264 300 characters**\n- `key_points` (optional):\n - **3\u20135 bullets max**\n - Use only when it adds decision clarity\n\nFocus on:\n- Fit, compatibility, and limitations \n- Trade-offs and \u201cwho this is not for\u201d \n- Long-term usage, maintenance, or replacement risk \n\nAvoid:\n- Definitions already covered \n- Pricing or claims not in research \n- Promotional or SEO-filler questions \n\nPurpose: resolve **last-mile hesitation** before shortlisting.\n\n\n---\n\n## selection_checklist\n- **5\u20138 short, scannable checklist items**\n- Designed to move the buyer toward confident action\n\n---\n\n## seo_tags\n- **5\u20136 tags**\n- Lowercase\n- **1\u20133 words each**\n- Reflect:\n - Product type\n - Use-case\n - Profession\n - Buying intent\n\n---\n\n## image_generation_prompt\nGenerate a professional product collection image prompt that:\n- Shows multiple related products as a **comparison-ready collection**\n- Reflects real professional usage context\n- Uses a clean studio or professional workspace background\n- Realistic lighting and sharp focus\n- **No people**\n- **No logos**\n- **No text overlays**\n\n---\n\n## recommendations_and_cta\n- Advisory close, **not salesy**\n- Recap key decision priorities\n- Encourage shortlisting and comparison\n- Mandetory Position **AsTools** as a knowledgeable supplier\n- Description length: **180\u2013200 characters**\n\n---\n\n## Final Instruction\nThis article should feel written by someone who has:\n- Seen buyers make expensive mistakes\n- Helped professionals choose correctly many times\n- Prioritized confidence and clarity over persuasion\n\n**Output ONLY valid JSON. \nNo explanations. \nNo markdown.**\n"
},
"promptType": "define",
"hasOutputParser": true
},
"typeVersion": 3.1
},
{
"id": "772aef6d-9512-4b6a-84fc-b86c16505cdf",
"name": "Memory2",
"type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
"position": [
2480,
672
],
"parameters": {
"sessionKey": "={{ $now.minute }}",
"sessionIdType": "customKey"
},
"typeVersion": 1.3
},
{
"id": "0a493126-c753-40d3-8d70-35c685b1058e",
"name": "Gemini5",
"type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
"position": [
2864,
672
],
"parameters": {
"options": {}
},
"credentials": {
"googlePalmApi": {
"name": "<your credential>"
}
},
"typeVersion": 1
},
{
"id": "4cac6c47-b9d2-461a-a223-c10989b3d6f6",
"name": "Structured2",
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"position": [
2976,
672
],
"parameters": {
"schemaType": "manual",
"inputSchema": "{\n \"article_title\": \"\",\n \"introduction\": \"\",\n \"buyer_context\": \"\",\n \"problem_title\": \"\",\n \"problem_paragraph\": \"\",\n \"problem_pointers\": [\n { \"name\": \"\", \"value\": \"\" }\n ],\n \"decision_factors\": [\n { \"name\": \"\", \"why_it_matters\": \"\", \"what_to_prioritize\": \"\" }\n ],\n \"solution_title\": \"\",\n \"solution_paragraph\": \"\",\n \"features_and_benefits\": [\n { \"name\": \"\", \"value\": \"\" }\n ],\n \"technical_specifications\": [\n { \"name\": \"\", \"value\": \"\" }\n ],\n \"use_case_segments\": [\n {\n \"segment\": \"\",\n \"description\": \"\",\n \"top_priorities\": [\n { \"name\": \"\", \"value\": \"\" }\n ]\n }\n ],\n \"real_life_usage\": [\n {\n \"title\": \"\",\n \"description\": \"\",\n \"points\": [\n { \"name\": \"\", \"value\": \"\" }\n ]\n }\n ],\n \"common_mistakes_to_avoid\": [\n { \"mistake\": \"\", \"impact\": \"\" }\n ],\n \"objections_and_clarifications\": [\n { \"concern\": \"\", \"clarification\": \"\" }\n ],\n \"faqs\": [\n {\n \"question\": \"\",\n \"answer\": \"\",\n \"key_points\": [\n { \"name\": \"\", \"value\": \"\" }\n ]\n }\n ],\n \"selection_checklist\": [\n \"\"\n ],\n \"seo_tags\": [\n \"\"\n ],\n \"image_generation_prompt\": \"\",\n \"recommendations_and_cta\": {\n \"title\": \"\",\n \"description\": \"\"\n }\n}"
},
"typeVersion": 1.3
},
{
"id": "35a7861c-512b-4b14-83db-580f729e4d64",
"name": "Sticky Note10",
"type": "n8n-nodes-base.stickyNote",
"position": [
528,
448
],
"parameters": {
"color": 7,
"width": 3104,
"height": 496,
"content": "# 2. Create blog article using collection data "
},
"typeVersion": 1
},
{
"id": "654f851e-05c9-4f20-a645-17766c932eee",
"name": "time 3",
"type": "n8n-nodes-base.scheduleTrigger",
"position": [
624,
640
],
"parameters": {
"rule": {
"interval": [
{}
]
}
},
"typeVersion": 1.3
},
{
"id": "17255981-9abf-47c9-b4be-e5b408b0a33b",
"name": "data allocation8",
"type": "n8n-nodes-base.set",
"position": [
1120,
640
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "447cb551-3d99-4e40-9c25-e8cdfb0abf3d",
"name": "id",
"type": "string",
"value": "={{ $json.id }}"
},
{
"id": "5b7333d9-1974-40ea-ac17-db16bcb8d963",
"name": "title",
"type": "string",
"value": "={{ $json.title }}"
},
{
"id": "4a2107e1-c680-4ae4-a395-2481cc709b2e",
"name": "handle",
"type": "string",
"value": "={{ $json.handle }}"
},
{
"id": "f819b79b-6a88-4b74-aa4e-9912c4e4c19c",
"name": "description",
"type": "string",
"value": "={{ $json.description }}"
},
{
"id": "27c1f82b-9939-4576-aa46-e0a6f59a7b8e",
"name": "updatedAt",
"type": "string",
"value": "={{ $json.updatedAt }}"
},
{
"id": "5a406d3a-fc53-4cb8-a1b7-7d87c46ae487",
"name": "type",
"type": "string",
"value": "={{ $json.type }}"
},
{
"id": "952e0823-70fe-4c1a-aebf-6f6a03ecece1",
"name": "status",
"type": "string",
"value": "={{ $json.status }}"
},
{
"id": "889cafbf-67ba-444c-9ff2-956faa39aebb",
"name": "collection_url",
"type": "string",
"value": "={{ $json.collection_url }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "890c88d0-c250-49ce-a324-0a97ae87db51",
"name": "get old collection1",
"type": "n8n-nodes-base.googleSheets",
"position": [
864,
640
],
"parameters": {
"options": {
"returnFirstMatch": true
},
"filtersUI": {
"values": [
{
"lookupValue": "old collections",
"lookupColumn": "type"
},
{
"lookupValue": "pending",
"lookupColumn": "status"
}
]
},
"sheetName": {
"__rl": true,
"mode": "list",
"value": 953467342,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1mKEh5BO9v8bY1iJNQDxu8Kvy1GMaTFheifvhCenfZOQ/edit#gid=953467342",
"cachedResultName": "Collection_data"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1mKEh5BO9v8bY1iJNQDxu8Kvy1GMaTFheifvhCenfZOQ",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1mKEh5BO9v8bY1iJNQDxu8Kvy1GMaTFheifvhCenfZOQ/edit?usp=drivesdk",
"cachedResultName": "AsTools_shopify_to_blog"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 4.7
},
{
"id": "c93da868-b9d4-49e0-956a-b9f13dce9b4b",
"name": "update content3",
"type": "n8n-nodes-base.googleSheets",
"position": [
3424,
656
],
"parameters": {
"columns": {
"value": {
"id": "={{ $('set batch size').item.json.id }}",
"status": "generated",
"ai_tags": "={{ $json.seo_tags }}",
"ai_title": "={{ $json.article_title }}",
"image_prompt": "={{ $json.image_prompt }}",
"ai_description": "={{ $json.body_html }}"
},
"schema": [
{
"id": "id",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "id",
"defaultMatch": true,
"canBeUsedToMatch": true
},
{
"id": "title",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "title",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "handle",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "handle",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "description",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "description",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "updatedAt",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "updatedAt",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "type",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "type",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "collection_url",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "collection_url",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "ai_title",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "ai_title",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "ai_tags",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "ai_tags",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "ai_description",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "ai_description",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "image_prompt",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "image_prompt",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "image_url",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "image_url",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "article_url",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "article_url",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "status",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "status",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "row_number",
"type": "number",
"display": true,
"removed": true,
"readOnly": true,
"required": false,
"displayName": "row_number",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"id"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "update",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 953467342,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1mKEh5BO9v8bY1iJNQDxu8Kvy1GMaTFheifvhCenfZOQ/edit#gid=953467342",
"cachedResultName": "Collection_data"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1mKEh5BO9v8bY1iJNQDxu8Kvy1GMaTFheifvhCenfZOQ",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1mKEh5BO9v8bY1iJNQDxu8Kvy1GMaTFheifvhCenfZOQ/edit?usp=drivesdk",
"cachedResultName": "AsTools_shopify_to_blog"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 4.7
},
{
"id": "6bb9fdda-c615-406c-8c8c-c18142cdbdaf",
"name": "get img prompt",
"type": "n8n-nodes-base.googleSheets",
"position": [
1088,
1152
],
"parameters": {
"options": {},
"filtersUI": {
"values": [
{
"lookupValue": "generated",
"lookupColumn": "status"
},
{
"lookupColumn": "image_url"
}
]
},
"sheetName": {
"__rl": true,
"mode": "list",
"value": 953467342,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1mKEh5BO9v8bY1iJNQDxu8Kvy1GMaTFheifvhCenfZOQ/edit#gid=953467342",
"cachedResultName": "Collection_data"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1mKEh5BO9v8bY1iJNQDxu8Kvy1GMaTFheifvhCenfZOQ",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1mKEh5BO9v8bY1iJNQDxu8Kvy1GMaTFheifvhCenfZOQ/edit?usp=drivesdk",
"cachedResultName": "AsTools_shopify_to_blog"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
},
"executeOnce": true,
"typeVersion": 4.7
},
{
"id": "54646209-5919-453a-b048-7f387f6654d5",
"name": "Update row in sheet",
"type": "n8n-nodes-base.googleSheets",
"position": [
3408,
1152
],
"parameters": {
"columns": {
"value": {
"id": "={{ $('set batch size1').item.json.id }}",
"status": "image updated",
"image_url": "={{ $json.data.node.preview.image.url }}"
},
"schema": [
{
"id": "id",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "id",
"defaultMatch": true,
"canBeUsedToMatch": true
},
{
"id": "title",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "title",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "handle",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "handle",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "description",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "description",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "updatedAt",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "updatedAt",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "type",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "type",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "collection_url",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "collection_url",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "ai_title",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "ai_title",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "ai_tags",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "ai_tags",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "ai_description",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "ai_description",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "image_prompt",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "image_prompt",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "image_url",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "image_url",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "article_url",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "article_url",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "status",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "status",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "row_number",
"type": "number",
"display": true,
"removed": true,
"readOnly": true,
"required": false,
"displayName": "row_number",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"id"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "update",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 953467342,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1mKEh5BO9v8bY1iJNQDxu8Kvy1GMaTFheifvhCenfZOQ/edit#gid=953467342",
"cachedResultName": "Collection_data"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1mKEh5BO9v8bY1iJNQDxu8Kvy1GMaTFheifvhCenfZOQ",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1mKEh5BO9v8bY1iJNQDxu8Kvy1GMaTFheifvhCenfZOQ/edit?usp=drivesdk",
"cachedResultName": "AsTools_shopify_to_blog"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 4.7
},
{
"id": "ae60f0a0-8f1f-41e9-b102-92ba55e56179",
"name": "time 6",
"type": "n8n-nodes-base.scheduleTrigger",
"position": [
2928,
160
],
"parameters": {
"rule": {
"interval": [
{}
]
}
},
"typeVersion": 1.3
},
{
"id": "6c0c2928-3ec6-4400-85a0-a83fa5bfea16",
"name": "data allocation14",
"type": "n8n-nodes-base.set",
"position": [
3168,
160
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "7cd0a695-2e44-4f61-abc0-bb3f5a22e771",
"name": "title",
"type": "string",
"value": "Collections Blog"
},
{
"id": "a4e963c0-3c31-48b2-8c4f-aa5304ec5f41",
"name": "handle",
"type": "string",
"value": "collections-blog"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "03f1787e-298d-4c9a-a69c-3b79c1f48f7a",
"name": "article creation7",
"type": "n8n-nodes-base.httpRequest",
"position": [
3392,
160
],
"parameters": {
"url": "https://{store-name}.myshopify.com/admin/api/2026-01/graphql.json",
"method": "POST",
"options": {},
"jsonBody": "={\n \"query\": \"mutation CreateBlog($blog: BlogCreateInput!) { blogCreate(blog: $blog) { blog { id title handle templateSuffix commentPolicy } userErrors { code field message } } }\",\n \"variables\": {\n \"blog\": {\n \"title\": \"{{ $json.title }}\",\n \"handle\": \"{{ $json.handle }}\",\n \"templateSuffix\": \"standard\",\n \"commentPolicy\": \"MODERATED\"\n }\n }\n}",
"sendBody": true,
"specifyBody": "json",
"authentication": "predefinedCredentialType",
"nodeCredentialType": "shopifyAccessTokenApi"
},
"credentials": {
"shopifyAccessTokenApi": {
"name": "<your credential>"
}
},
"typeVersion": 4.2
},
{
"id": "5567420e-639e-4c62-a14b-bf93c8b1aac8",
"name": "Sticky Note12",
"type": "n8n-nodes-base.stickyNote",
"position": [
2864,
32
],
"parameters": {
"color": 7,
"width": 768,
"height": 320,
"content": "## Blog creation (One time only)"
},
"typeVersion": 1
},
{
"id": "426958e4-9013-4b20-934b-60547289f551",
"name": "get old collection6",
"type": "n8n-nodes-base.googleSheets",
"position": [
1984,
1712
],
"parameters": {
"options": {
"returnFirstMatch": true
},
"filtersUI": {
"values": [
{
"lookupValue": "old collections",
"lookupColumn": "type"
},
{
"lookupValue": "sent for approval",
"lookupColumn": "status"
}
]
},
"sheetName": {
"__rl": true,
"mode": "list",
"value": 953467342,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1mKEh5BO9v8bY1iJNQDxu8Kvy1GMaTFheifvhCenfZOQ/edit#gid=953467342",
"cachedResultName": "Collection_data"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1mKEh5BO9v8bY1iJNQDxu8Kvy1GMaTFheifvhCenfZOQ",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1mKEh5BO9v8bY1iJNQDxu8Kvy1GMaTFheifvhCenfZOQ/edit?usp=drivesdk",
"cachedResultName": "AsTools_shopify_to_blog"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 4.7
},
{
"id": "2e2f94a6-ffac-40b2-9a53-8f07202b6e49",
"name": "article creation8",
"type": "n8n-nodes-base.httpRequest",
"position": [
2432,
1712
],
"parameters": {
"url": "=https://{store-name}.myshopify.com/admin/api/2025-07/blogs/{{ $json.blog_id }}/articles.json",
"method": "POST",
"options": {},
"jsonBody": "={\n \"article\": {\n \"title\": \"{{ $json.title }}\",\n \"author\": \"{{ $json.author }}\",\n \"tags\": \"{{ $json.tags }}\",\n \"body_html\": \"{{ $json.body_html }}\",\n \"published_at\": \"{{ $json.published_at }}\"\n }\n}",
"sendBody": true,
"specifyBody": "json",
"authentication": "predefinedCredentialType",
"nodeCredentialType": "shopifyAccessTokenApi"
},
"credentials": {
"shopifyAccessTokenApi": {
"name": "<your credential>"
}
},
"typeVersion": 4.2
},
{
"id": "e00ab219-553a-484f-b5a0-926816545c64",
"name": "HTML structuring3",
"type": "n8n-nodes-base.code",
"position": [
3168,
656
],
"parameters": {
"jsCode": "const data = $input.first().json.output;\n\n// ---------- helpers ----------\nconst renderList = (items = []) => {\n if (!items.length) return '';\n return (\n '<ul>' +\n items.map(i =>\n '<li><strong>' + i.name + ':</strong> ' + i.value + '</li>'\n ).join('') +\n '</ul>'\n );\n};\n\nconst renderSimpleList = (items = []) => {\n if (!items.length) return '';\n return (\n '<ul>' +\n items.map(i =>\n '<li>' + i + '</li>'\n ).join('') +\n '</ul>'\n );\n};\n\nconst renderFeaturesTable = (features = []) => {\n if (!features.length) return '';\n return (\n '<table border=\\\\\"1\\\\\" cellpadding=\\\\\"8\\\\\" cellspacing=\\\\\"0\\\\\" width=\\\\\"100%\\\\\">' +\n '<thead>' +\n '<tr>' +\n '<th align=\\\\\"left\\\\\">Feature</th>' +\n '<th align=\\\\\"left\\\\\">Benefit</th>' +\n '</tr>' +\n '</thead>' +\n '<tbody>' +\n features.map(f =>\n '<tr>' +\n '<td>' + f.name + '</td>' +\n '<td>' + f.value + '</td>' +\n '</tr>'\n ).join('') +\n '</tbody>' +\n '</table>'\n );\n};\n\nconst renderRealLifeUsage = (usage = []) => {\n if (!usage.length) return '';\n return usage.map(u =>\n '<br><br>' +\n '<strong>' + u.title + '</strong>' +\n '<p>' + u.description + '</p>' +\n '<ul>'
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.
googlePalmApigoogleSheetsOAuth2ApiperplexityApishopifyAccessTokenApi
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
This Shopify AI automation is an advanced n8n-powered workflow that transforms Shopify product collections into SEO-optimized blog articles with images, while maintaining full visibility and control through Google Sheets.
Source: https://n8n.io/workflows/12694/ — 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.
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.
This workflow contains community nodes that are only compatible with the self-hosted version of n8n.
Categories: Business Automation, Content Creation, SEO, AI
This workflow transforms text-based resume data into visually stunning images by leveraging Google Gemini's reasoning and vision capabilities. It autonomously analyzes the candidate's profile, selects
This workflow automatically creates AI product review videos from a product image and short description using n8n and Veo 3.