This workflow corresponds to n8n.io template #9874 — we link there as the canonical source.
This workflow follows the Google Sheets → 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": "ka67GgNwcbhPfmFh",
"meta": {
"templateCredsSetupCompleted": true
},
"name": "Automated Solana News Tracker with AI-Powered Weekly Summaries",
"tags": [],
"nodes": [
{
"id": "2f8e8791-4694-4496-87ec-c44a157445e9",
"name": "Run Every Day at 08:00 PT",
"type": "n8n-nodes-base.scheduleTrigger",
"position": [
-2016,
32
],
"parameters": {
"rule": {
"interval": [
{
"triggerAtHour": 7,
"triggerAtMinute": 55
}
]
}
},
"typeVersion": 1.2
},
{
"id": "e8d1761a-36fa-4a02-8a45-96d9a1344268",
"name": "Get Solana News",
"type": "n8n-nodes-base.httpRequest",
"position": [
-1696,
32
],
"parameters": {
"url": "https://cryptopanic.com/api/v1/posts/?auth_token=[your token]¤cies=sol&public=true",
"options": {
"response": {
"response": {}
}
}
},
"typeVersion": 4.2
},
{
"id": "fded8769-0a62-4455-ba2d-04a063c4379e",
"name": "Sticky Note - API",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1792,
-256
],
"parameters": {
"color": 6,
"width": 300,
"height": 456,
"content": "## \ud83c\udf10 NEWS API SOURCE\n\n**CryptoPanic API**\nFetches latest Solana (SOL) news from aggregated crypto sources.\n\n**Setup Required:**\n1. Get free API key from cryptopanic.com\n2. Replace `[your token]` in URL\n\n**Alternative APIs:**\nCoinGecko, NewsAPI, or custom RSS feeds"
},
"typeVersion": 1
},
{
"id": "d8f768a4-c316-4058-b1f3-63675807038f",
"name": "Format By Items",
"type": "n8n-nodes-base.code",
"position": [
-1472,
32
],
"parameters": {
"jsCode": "const items = $input.all();\nconst processedItems = [];\nfor (const item of items) {\n const results = item?.json?.results || [];\n for (const result of results) {\n processedItems.push({\n json: {\n title: result.title,\n description: result.description,\n published_at: result.published_at,\n },\n });\n }\n}\nreturn processedItems;"
},
"typeVersion": 2
},
{
"id": "ca698555-499d-486f-bd34-5705abe9c3da",
"name": "Check For Duplicates",
"type": "n8n-nodes-base.googleSheets",
"position": [
-1232,
-160
],
"parameters": {
"options": {},
"filtersUI": {
"values": [
{
"lookupValue": "={{ $json.title }}",
"lookupColumn": "title"
}
]
},
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1MgokGD0ieVLDqw8Ui6momu-H3x2fyCFVN1u5ZR4Se1I/edit#gid=0",
"cachedResultName": "Raw Data"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1MgokGD0ieVLDqw8Ui6momu-H3x2fyCFVN1u5ZR4Se1I",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1MgokGD0ieVLDqw8Ui6momu-H3x2fyCFVN1u5ZR4Se1I/edit?usp=drivesdk",
"cachedResultName": "Solana News Automation"
}
},
"typeVersion": 4.6,
"alwaysOutputData": true
},
{
"id": "c8420caa-32b1-4121-9e51-503a203da775",
"name": "Sticky Note - Duplicates",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1504,
-256
],
"parameters": {
"color": 7,
"width": 644,
"height": 464,
"content": "## \ud83d\udd0d DUPLICATE DETECTION\n\n**Checks:** If article title already exists in \"Raw Data\" sheet"
},
"typeVersion": 1
},
{
"id": "9817c911-e85f-4427-b139-b210dd2afe60",
"name": "Keep Non-matches",
"type": "n8n-nodes-base.merge",
"position": [
-1008,
0
],
"parameters": {
"mode": "combine",
"options": {},
"joinMode": "keepNonMatches",
"fieldsToMatchString": "title"
},
"typeVersion": 3.2,
"alwaysOutputData": true
},
{
"id": "352e9d95-f1b3-46f9-90ef-96835a81736e",
"name": "Get Rid Of Empties",
"type": "n8n-nodes-base.code",
"position": [
-784,
0
],
"parameters": {
"jsCode": "const items = $input.all();\nconst validItems = items.filter((item) => {\n return (\n item?.json?.title !== undefined &&\n item?.json?.description !== undefined &&\n item?.json?.published_at !== undefined\n );\n});\nreturn validItems.map((item) => item.json);\n"
},
"typeVersion": 2,
"alwaysOutputData": true
},
{
"id": "9f6d2283-3f33-4ab7-a13d-d0c63f0700be",
"name": "Sticky Note - Validation",
"type": "n8n-nodes-base.stickyNote",
"position": [
-864,
-256
],
"parameters": {
"color": 7,
"width": 256,
"height": 464,
"content": "## \ud83e\uddf9 DATA VALIDATION\n\n**Removes:** Items with missing fields"
},
"typeVersion": 1
},
{
"id": "11e59d5e-cf2f-4825-a994-3980a11726e4",
"name": "Append Valid Items",
"type": "n8n-nodes-base.googleSheets",
"position": [
-560,
0
],
"parameters": {
"columns": {
"value": {
"date ": "={{ $json.published_at }}",
"title": "={{ $json.title }}",
"descripton": "={{ $json.description }}"
},
"schema": [
{
"id": "date ",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "date ",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "descripton",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "descripton",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "title",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "title",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "summary",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "summary",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {
"useAppend": true
},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1MgokGD0ieVLDqw8Ui6momu-H3x2fyCFVN1u5ZR4Se1I/edit#gid=0",
"cachedResultName": "Raw Data"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1MgokGD0ieVLDqw8Ui6momu-H3x2fyCFVN1u5ZR4Se1I",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1MgokGD0ieVLDqw8Ui6momu-H3x2fyCFVN1u5ZR4Se1I/edit?usp=drivesdk",
"cachedResultName": "Solana News Automation"
}
},
"typeVersion": 4.6
},
{
"id": "059d8239-5d77-49a4-b8ca-b7747ffa45dc",
"name": "Sticky Note - Store",
"type": "n8n-nodes-base.stickyNote",
"position": [
-608,
-256
],
"parameters": {
"color": 5,
"width": 448,
"height": 468,
"content": "## \ud83d\udcbe STORE ARTICLES\n\n**Appends:** New articles to \"Raw Data\" sheet\n\n**Columns:**\n- date\n- title\n- description\n\n"
},
"typeVersion": 1
},
{
"id": "7fde7109-53b7-4ab1-a065-881f6612fdc9",
"name": "Process If Monday",
"type": "n8n-nodes-base.if",
"position": [
-352,
0
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "a2732dce-b13c-4774-809a-ba6224f552af",
"operator": {
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $now.weekday.toString() }}",
"rightValue": "2"
}
]
}
},
"typeVersion": 2.2
},
{
"id": "b6a722b9-41da-4002-909a-7e65845b7de9",
"name": "Get News",
"type": "n8n-nodes-base.googleSheets",
"position": [
-96,
0
],
"parameters": {
"options": {},
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1MgokGD0ieVLDqw8Ui6momu-H3x2fyCFVN1u5ZR4Se1I/edit#gid=0",
"cachedResultName": "Raw Data"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1MgokGD0ieVLDqw8Ui6momu-H3x2fyCFVN1u5ZR4Se1I",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1MgokGD0ieVLDqw8Ui6momu-H3x2fyCFVN1u5ZR4Se1I/edit?usp=drivesdk",
"cachedResultName": "Solana News Automation"
}
},
"typeVersion": 4.6
},
{
"id": "05e31f6a-ecb0-46df-b315-939a3c2f8371",
"name": "Sticky Note - Read News",
"type": "n8n-nodes-base.stickyNote",
"position": [
-160,
-256
],
"parameters": {
"color": 3,
"height": 472,
"content": "## \ud83d\udcd6 READ ALL ARTICLES\n\n**Retrieves:** All accumulated news from \"Raw Data\" sheet\n\n**Contains:** Week's worth of Solana articles for AI to analyze"
},
"typeVersion": 1
},
{
"id": "e24cfc87-ccfd-48b2-be2a-e6ec1093d10a",
"name": "Aggregate",
"type": "n8n-nodes-base.aggregate",
"position": [
192,
0
],
"parameters": {
"options": {},
"fieldsToAggregate": {
"fieldToAggregate": [
{
"fieldToAggregate": "descripton"
}
]
}
},
"typeVersion": 1
},
{
"id": "1dcd022a-f5c2-426c-a22a-20a85e19e159",
"name": "Sticky Note - Aggregate",
"type": "n8n-nodes-base.stickyNote",
"position": [
80,
-256
],
"parameters": {
"color": 3,
"width": 352,
"height": 472,
"content": "## \ud83d\udd17 AGGREGATE ALL ARTICLE DESCRIPTIONS\n"
},
"typeVersion": 1
},
{
"id": "1a53a77b-c501-4e46-ba5a-953b88422a40",
"name": "Summarize News",
"type": "@n8n/n8n-nodes-langchain.openAi",
"position": [
480,
0
],
"parameters": {
"modelId": {
"__rl": true,
"mode": "list",
"value": "gpt-4.1-mini",
"cachedResultName": "GPT-4.1-MINI"
},
"options": {
"maxTokens": 200,
"temperature": 0.2
},
"messages": {
"values": [
{
"role": "system",
"content": "You are a helpful, intelligent crypto news analyst"
},
{
"content": "=Your task is to take as an input Solana news at {{ $json.descripton }} and summarize all the descriptions intoa one 2-3 factual sentence summary including key takeaways for investors to understand.\n\nNo hype, no price predictions, fancy language. Your tone of voice should be spartan.\n\nOutput in JSON:\n\n{ \"summary\":\"\"} \n"
}
]
},
"jsonOutput": true
},
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
},
"typeVersion": 1.8
},
{
"id": "4068aa0a-422b-412b-89ae-f460eb894b4a",
"name": "Sticky Note - AI Summary",
"type": "n8n-nodes-base.stickyNote",
"position": [
432,
-256
],
"parameters": {
"color": 3,
"width": 308,
"height": 472,
"content": "## \ud83e\udd16 AI SUMMARIZATION\n\n**GPT-4.1-mini** analyzes week's news and creates:\n- 2-3 sentence factual summary\n- Key investor takeaways\n"
},
"typeVersion": 1
},
{
"id": "931b99fa-2360-4946-a920-a7a775f1a389",
"name": "Append Summary",
"type": "n8n-nodes-base.googleSheets",
"position": [
880,
0
],
"parameters": {
"columns": {
"value": {
"Date": "={{ $now.toFormat(\"dd/MM/yyyy\") }}",
"Summary": "={{ $json.message.content.summary }}"
},
"schema": [
{
"id": "Date",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Date",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Summary",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Summary",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {
"useAppend": true
},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 942745497,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1MgokGD0ieVLDqw8Ui6momu-H3x2fyCFVN1u5ZR4Se1I/edit#gid=942745497",
"cachedResultName": "Weekly Summary"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1MgokGD0ieVLDqw8Ui6momu-H3x2fyCFVN1u5ZR4Se1I",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1MgokGD0ieVLDqw8Ui6momu-H3x2fyCFVN1u5ZR4Se1I/edit?usp=drivesdk",
"cachedResultName": "Solana News Automation"
}
},
"typeVersion": 4.6
},
{
"id": "eb9143bd-fec9-4f5a-9219-f2704f4ae500",
"name": "Sticky Note - Save Summary",
"type": "n8n-nodes-base.stickyNote",
"position": [
736,
-256
],
"parameters": {
"color": 3,
"width": 372,
"height": 468,
"content": "## \ud83d\udcdd SAVE WEEKLY SUMMARY\n\n**Appends:** AI-generated summary to \"Weekly Summary\" sheet\n\n**Columns:**\n- Date (dd/MM/yyyy)\n- Summary (AI-generated text)\n\n"
},
"typeVersion": 1
},
{
"id": "23151f61-f161-4454-babe-36b3538743f9",
"name": "Sticky Note - Quick Start",
"type": "n8n-nodes-base.stickyNote",
"position": [
-2128,
-464
],
"parameters": {
"color": 4,
"width": 340,
"height": 656,
"content": "## \ud83d\ude80 QUICK START\n\n**1. Setup CryptoPanic**\n- Get free API key at cryptopanic.com\n- Replace `[your token]` in \"Get Solana News\" node\n\n**2. Create Google Sheet**\n- Sheet 1: \"Raw Data\" (columns: date, title, descripton, summary)\n- Sheet 2: \"Weekly Summary\" (columns: Date, Summary)\n- Connect Google Sheets credential\n\n**3. Configure OpenAI**\n- Add OpenAI API key\n- GPT-4.1-mini costs ~$0.001/summary\n\n**4. Activate Workflow**\n- Test manually first\n- Then activate for daily automation"
},
"typeVersion": 1
},
{
"id": "8da35dcb-8f6e-4b50-88bd-4a7725fc23c0",
"name": "Sticky Note - Cost",
"type": "n8n-nodes-base.stickyNote",
"position": [
-2128,
192
],
"parameters": {
"color": 4,
"width": 328,
"height": 264,
"content": "## \ud83d\udcb0 COST & PERFORMANCE\n\n**API Costs:**\n- CryptoPanic: Free (rate limits apply)\n- OpenAI: ~$0.001/summary = ~$0.05/month\n\n**Data Volume:**\n- ~20-50 articles/day\n"
},
"typeVersion": 1
}
],
"active": false,
"settings": {
"executionOrder": "v1"
},
"versionId": "a141f787-950b-413c-88e2-a636cdf3dcbe",
"connections": {
"Get News": {
"main": [
[
{
"node": "Aggregate",
"type": "main",
"index": 0
}
]
]
},
"Aggregate": {
"main": [
[
{
"node": "Summarize News",
"type": "main",
"index": 0
}
]
]
},
"Summarize News": {
"main": [
[
{
"node": "Append Summary",
"type": "main",
"index": 0
}
]
]
},
"Format By Items": {
"main": [
[
{
"node": "Check For Duplicates",
"type": "main",
"index": 0
},
{
"node": "Keep Non-matches",
"type": "main",
"index": 1
}
]
]
},
"Get Solana News": {
"main": [
[
{
"node": "Format By Items",
"type": "main",
"index": 0
}
]
]
},
"Keep Non-matches": {
"main": [
[
{
"node": "Get Rid Of Empties",
"type": "main",
"index": 0
}
]
]
},
"Process If Monday": {
"main": [
[
{
"node": "Get News",
"type": "main",
"index": 0
}
]
]
},
"Append Valid Items": {
"main": [
[
{
"node": "Process If Monday",
"type": "main",
"index": 0
}
]
]
},
"Get Rid Of Empties": {
"main": [
[
{
"node": "Append Valid Items",
"type": "main",
"index": 0
}
]
]
},
"Check For Duplicates": {
"main": [
[
{
"node": "Keep Non-matches",
"type": "main",
"index": 0
}
]
]
},
"Run Every Day at 08:00 PT": {
"main": [
[
{
"node": "Get Solana News",
"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.
openAiApi
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Never miss important Solana ecosystem updates again. This production-ready workflow automatically scrapes crypto news daily, intelligently filters duplicates, stores everything in Google Sheets, and generates AI-powered weekly summaries every Monday—completely hands-free.
Source: https://n8n.io/workflows/9874/ — 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.
AI Institutional Stock Valuation Engine with Risk Scoring & Scenario Targets
Overview This is a production-grade, fully automated stock analysis system built entirely in n8n. It combines institutional-level financial analysis, dual AI model consensus, and a self-improving back
This automation is a complete end-to-end system designed to find, qualify, and contact B2B leads — fully automated and powered by AI. Searches for target companies on LinkedIn via Ghost Genius API, us
This comprehensive n8n automation template orchestrates a complete end-to-end workflow for generating engaging short-form Point-of-View (POV) style videos using multiple AI services and automatically
A professional AI equity analysis automation built on n8n that transforms structured financial data and real-time news into disciplined, risk-adjusted price targets and actionable BUY/HOLD/SELL signal