This workflow follows the HTTP Request → Telegram 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 →
{
"name": "PROD_02_Data_Processing_Workflow",
"nodes": [
{
"parameters": {
"rule": {
"interval": [
{
"field": "hours",
"hoursInterval": 6
}
]
},
"options": {}
},
"id": "1",
"name": "Schedule_Trigger",
"type": "n8n-nodes-base.scheduleTrigger",
"typeVersion": 1,
"position": [
250,
300
]
},
{
"parameters": {
"assignments": {
"assignments": [
{
"id": "1",
"name": "batch_size",
"value": "100",
"type": "number"
},
{
"id": "2",
"name": "source",
"value": "data_lake",
"type": "string"
}
]
}
},
"id": "2",
"name": "Set_Params",
"type": "n8n-nodes-base.set",
"typeVersion": 3,
"position": [
450,
300
]
},
{
"parameters": {
"method": "GET",
"url": "https://api.example.com/data/batch",
"sendQuery": true,
"queryParameters": {
"parameters": [
{
"name": "size",
"value": "={{ $json.batch_size }}"
},
{
"name": "source",
"value": "={{ $json.source }}"
}
]
},
"options": {}
},
"id": "3",
"name": "Fetch_Batch_Data",
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4,
"position": [
650,
300
]
},
{
"parameters": {
"jsCode": "const data = $input.first().json;\nconst records = data.records || [];\nconst processed = records.map(r => ({\n id: r.id,\n value: r.value * 1.1,\n category: r.category || 'unknown',\n processed: true\n}));\nreturn { processed_records: processed, count: processed.length };"
},
"id": "4",
"name": "Transform_Data",
"type": "n8n-nodes-base.code",
"typeVersion": 2,
"position": [
850,
300
]
},
{
"parameters": {
"method": "POST",
"url": "https://api.example.com/data/store",
"sendBody": true,
"bodyParameters": {
"parameters": [
{
"name": "records",
"value": "={{ JSON.stringify($json.processed_records) }}"
}
]
},
"options": {}
},
"id": "5",
"name": "Store_Processed",
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4,
"position": [
1050,
300
]
},
{
"parameters": {
"to": "data_team",
"text": "={{ 'Data Processing Complete | Records: ' + $json.count + ' | Source: ' + $json.source }}",
"additionalFields": {}
},
"id": "6",
"name": "Telegram_Report",
"type": "n8n-nodes-base.telegram",
"typeVersion": 1,
"position": [
1250,
300
]
}
],
"connections": {
"Schedule_Trigger": {
"main": [
[
{
"node": "Set_Params",
"type": "main",
"index": 0
}
]
]
},
"Set_Params": {
"main": [
[
{
"node": "Fetch_Batch_Data",
"type": "main",
"index": 0
}
]
]
},
"Fetch_Batch_Data": {
"main": [
[
{
"node": "Transform_Data",
"type": "main",
"index": 0
}
]
]
},
"Transform_Data": {
"main": [
[
{
"node": "Store_Processed",
"type": "main",
"index": 0
}
]
]
},
"Store_Processed": {
"main": [
[
{
"node": "Telegram_Report",
"type": "main",
"index": 0
}
]
]
}
},
"settings": {
"executionOrder": "v1"
},
"versionId": "prod-02-v1",
"id": "PROD02DATAPROCESSING",
"tags": [
{
"name": "production"
},
{
"name": "data-processing"
}
]
}
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
PROD_02_Data_Processing_Workflow. Uses httpRequest, telegram. Scheduled trigger; 6 nodes.
Source: https://gist.github.com/duginsash-spec/c0128580e71defd5f25f609991be219a — 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.
Auto Hunt. Uses httpRequest, googleSheets, rssFeedRead, telegram. Scheduled trigger; 78 nodes.
Auto-Hunt. Uses httpRequest, googleSheets, rssFeedRead, telegram. Scheduled trigger; 78 nodes.
This workflow runs daily at 9 AM, uses Perplexity to compile vaping industry news, optionally captures article screenshots via Browserless, and generates a HeyGen avatar video from a template. It then
. Uses googleSheets, telegram, httpRequest, wise. Scheduled trigger; 36 nodes.
GNCA AI News Pipeline. Uses rssFeedRead, httpRequest, telegram, errorTrigger. Scheduled trigger; 31 nodes.