Workflow: Manualtrigger Workflow
Integrations: function, htmlExtract, httpRequest, itemLists, manualTrigger, respondToWebhook, set, webhook

{"nodes": [{"id": "35c4aa9f-7535-4315-9174-fe97afc6de2e", "name": "On clicking 'execute'", "type": "n8n-nodes-base.manualTrigger", "position": [240, 300], "parameters": {}, "typeVersion": 1, "notes": "This manualTrigger node performs automated tasks as part of the workflow."}, {"id": "ed1f4f78-733f-4dd5-9785-969c9ec0d637", "name": "Get overview page", "type": "n8n-nodes-base.httpRequest", "position": [460, 300], "parameters": {"url": "{{ $env.WEBHOOK_URL }}", "options": {}, "responseFormat": "string"}, "typeVersion": 2, "notes": "This httpRequest node performs automated tasks as part of the workflow."}, {"id": "28333c78-aa8f-401a-8033-2007a5e6991c", "name": "Extract links", "type": "n8n-nodes-base.htmlExtract", "position": [680, 300], "parameters": {"options": {}, "extractionValues": {"values": [{"key": "YOUR_CREDENTIAL_HERE", "attribute": "href", "cssSelector": "a[href*=\"/episode/\"]", "returnArray": true, "returnValue": "attribute"}]}}, "typeVersion": 1, "notes": "This htmlExtract node performs automated tasks as part of the workflow."}, {"id": "58840494-4208-49ce-b82a-d7cf8abd3b29", "name": "Remove duplicate links", "type": "n8n-nodes-base.itemLists", "position": [1120, 300], "parameters": {"operation": "removeDuplicates"}, "typeVersion": 1, "notes": "This itemLists node performs automated tasks as part of the workflow."}, {"id": "17efb905-b947-4538-ab34-d50bf7fdbd75", "name": "Split out lists", "type": "n8n-nodes-base.itemLists", "position": [900, 300], "parameters": {"options": {"destinationFieldName": "link"}, "fieldToSplitOut": "links"}, "typeVersion": 1, "notes": "This itemLists node performs automated tasks as part of the workflow."}, {"id": "59a69e64-ebba-42cb-b8d0-8dd73f0ae962", "name": "Get episode page", "type": "n8n-nodes-base.httpRequest", "position": [1340, 300], "parameters": {"url": "{{ $env.BASE_URL }}", "options": {}, "responseFormat": "string"}, "typeVersion": 2, "notes": "This httpRequest node performs automated tasks as part of the workflow."}, {"id": "68749bff-1499-4ef5-aefd-c4b6233d0fa7", "name": "Extract script", "type": "n8n-nodes-base.htmlExtract", "position": [1560, 300], "parameters": {"options": {}, "extractionValues": {"values": [{"key": "YOUR_CREDENTIAL_HERE", "cssSelector": "script:nth-of-type(2)", "returnValue": "html"}]}}, "typeVersion": 1, "notes": "This htmlExtract node performs automated tasks as part of the workflow."}, {"id": "158e7b18-f58d-453f-80f8-97e65f0b1fde", "name": "Parse JSON", "type": "n8n-nodes-base.set", "position": [1780, 300], "parameters": {"values": {"string": [{"name": "data", "value": "={{ JSON.parse($json.script) }}"}]}, "options": {}, "keepOnlySet": true}, "typeVersion": 1, "notes": "This set node performs automated tasks as part of the workflow."}, {"id": "a613c52e-395b-4d88-ab7d-b1cf2b664b43", "name": "Define feed items", "type": "n8n-nodes-base.function", "position": [2000, 300], "parameters": {"functionCode": "const escapeHTML = str => str.replace(/[&<>'\"]/g, \n  tag => ({\n      '&': '&amp;',\n      '<': '&lt;',\n      '>': '&gt;',\n      \"'\": '&#39;',\n      '\"': '&quot;'\n    }[tag]));\n\nlet feedItems = [];\nfor (item of items) {\n  feedItems.push(`<item>\n  <title>${escapeHTML(item.json.data.name)}</title>\n  <enclosure url=\"${item.json.data.associatedMedia.contentUrl}\" length=\"${item.json.data.timeRequired * 20 * 1000}\" type=\"${item.json.data.encodingFormat}\"/>\n  <guid isPermaLink=\"false\">${item.json.data.identifier}</guid>\n  <pubDate>${DateTime.fromISO(item.json.data.datePublished).toRFC2822()}</pubDate>\n  <description>${escapeHTML(item.json.data.description)}</description>\n</item>`);\n}\n\nreturn [{\n  data: `<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<rss version=\"2.0\" xmlns:itunes=\"{{ $env.WEBHOOK_URL }}\" xmlns:content=\"{{ $env.WEBHOOK_URL }}\">\n  <channel>\n    <title>${escapeHTML(items[0].json.data.partOfSeries.name)}</title>\n    <description>${escapeHTML(items[0].json.data.partOfSeries.about)}</description>\n    <itunes:image href=\"${escapeHTML(items[0].json.data.image)}\" />\n    <language>${items[0].json.data.inLanguage}</language>\n    <itunes:category text=\"Comedy\" />\n    <itunes:explicit>no</itunes:explicit>\n    <link>${items[0].json.data.partOfSeries.url}</link>\n    <copyright>\u00a9 ${$now.toFormat('yyyy')} ${escapeHTML(items[0].json.data.productionCompany)}</copyright>\n    <itunes:author>${escapeHTML(items[0].json.data.productionCompany)}</itunes:author>\n    ${feedItems.join('\\n')}\n  </channel>\n</rss>\n`\n}];\n"}, "typeVersion": 1, "notes": "This function node performs automated tasks as part of the workflow."}, {"id": "cbdc367d-a685-4f0b-a9f3-0aedc2c8b3c1", "name": "Feed", "type": "n8n-nodes-base.webhook", "position": [240, 100], "webhookId": "3fbd94de-2fb3-4b32-a46e-c237865479b9", "parameters": {"path": "3fbd94de-2fb3-4b32-a46e-c237865479b9.rss", "options": {}, "responseMode": "responseNode"}, "typeVersion": 1, "notes": "This webhook node performs automated tasks as part of the workflow."}, {"id": "0dfb02cc-1944-4542-b5c5-9e0b198e143d", "name": "Serve feed", "type": "n8n-nodes-base.respondToWebhook", "position": [2220, 300], "parameters": {"options": {"responseCode": 200, "responseHeaders": {"entries": [{"name": "Content-Type", "value": "application/rss+xml"}]}}, "respondWith": "text", "responseBody": "={{ $json[\"data\"] }}"}, "typeVersion": 1, "notes": "This respondToWebhook node performs automated tasks as part of the workflow."}], "connections": {"ed1f4f78-733f-4dd5-9785-969c9ec0d637": {"main": [[{"node": "error-handler-ed1f4f78-733f-4dd5-9785-969c9ec0d637", "type": "main", "index": 0}], [{"node": "error-handler-ed1f4f78-733f-4dd5-9785-969c9ec0d637-6c1af96d", "type": "main", "index": 0}], [{"node": "error-handler-ed1f4f78-733f-4dd5-9785-969c9ec0d637-66893a58", "type": "main", "index": 0}], [{"node": "error-handler-ed1f4f78-733f-4dd5-9785-969c9ec0d637-b0bf00d5", "type": "main", "index": 0}], [{"node": "error-handler-ed1f4f78-733f-4dd5-9785-969c9ec0d637-2d8ed599", "type": "main", "index": 0}], [{"node": "error-handler-ed1f4f78-733f-4dd5-9785-969c9ec0d637-fbd73249", "type": "main", "index": 0}], [{"node": "error-handler-ed1f4f78-733f-4dd5-9785-969c9ec0d637-f5b16c51", "type": "main", "index": 0}], [{"node": "error-handler-ed1f4f78-733f-4dd5-9785-969c9ec0d637-71fcf743", "type": "main", "index": 0}], [{"node": "error-handler-ed1f4f78-733f-4dd5-9785-969c9ec0d637-41d84856", "type": "main", "index": 0}]]}, "59a69e64-ebba-42cb-b8d0-8dd73f0ae962": {"main": [[{"node": "error-handler-59a69e64-ebba-42cb-b8d0-8dd73f0ae962", "type": "main", "index": 0}], [{"node": "error-handler-59a69e64-ebba-42cb-b8d0-8dd73f0ae962-55d875dc", "type": "main", "index": 0}], [{"node": "error-handler-59a69e64-ebba-42cb-b8d0-8dd73f0ae962-018d7e84", "type": "main", "index": 0}], [{"node": "error-handler-59a69e64-ebba-42cb-b8d0-8dd73f0ae962-af19bcd2", "type": "main", "index": 0}], [{"node": "error-handler-59a69e64-ebba-42cb-b8d0-8dd73f0ae962-e6796f88", "type": "main", "index": 0}], [{"node": "error-handler-59a69e64-ebba-42cb-b8d0-8dd73f0ae962-1a2b7fd8", "type": "main", "index": 0}], [{"node": "error-handler-59a69e64-ebba-42cb-b8d0-8dd73f0ae962-7af5c3d7", "type": "main", "index": 0}], [{"node": "error-handler-59a69e64-ebba-42cb-b8d0-8dd73f0ae962-2a5d5f98", "type": "main", "index": 0}], [{"node": "error-handler-59a69e64-ebba-42cb-b8d0-8dd73f0ae962-84af17a8", "type": "main", "index": 0}]]}, "cbdc367d-a685-4f0b-a9f3-0aedc2c8b3c1": {"main": [[{"node": "error-handler-cbdc367d-a685-4f0b-a9f3-0aedc2c8b3c1", "type": "main", "index": 0}], [{"node": "error-handler-cbdc367d-a685-4f0b-a9f3-0aedc2c8b3c1-246702c1", "type": "main", "index": 0}], [{"node": "error-handler-cbdc367d-a685-4f0b-a9f3-0aedc2c8b3c1-844d5a2a", "type": "main", "index": 0}], [{"node": "error-handler-cbdc367d-a685-4f0b-a9f3-0aedc2c8b3c1-a3937649", "type": "main", "index": 0}], [{"node": "error-handler-cbdc367d-a685-4f0b-a9f3-0aedc2c8b3c1-30f7f8c9", "type": "main", "index": 0}], [{"node": "error-handler-cbdc367d-a685-4f0b-a9f3-0aedc2c8b3c1-15619b93", "type": "main", "index": 0}], [{"node": "error-handler-cbdc367d-a685-4f0b-a9f3-0aedc2c8b3c1-417dfded", "type": "main", "index": 0}], [{"node": "error-handler-cbdc367d-a685-4f0b-a9f3-0aedc2c8b3c1-433b5687", "type": "main", "index": 0}], [{"node": "error-handler-cbdc367d-a685-4f0b-a9f3-0aedc2c8b3c1-c5b8922c", "type": "main", "index": 0}]]}, "0dfb02cc-1944-4542-b5c5-9e0b198e143d": {"main": [[{"node": "error-handler-0dfb02cc-1944-4542-b5c5-9e0b198e143d", "type": "main", "index": 0}], [{"node": "error-handler-0dfb02cc-1944-4542-b5c5-9e0b198e143d-e71123bb", "type": "main", "index": 0}], [{"node": "error-handler-0dfb02cc-1944-4542-b5c5-9e0b198e143d-768fdd82", "type": "main", "index": 0}], [{"node": "error-handler-0dfb02cc-1944-4542-b5c5-9e0b198e143d-d0d722ba", "type": "main", "index": 0}], [{"node": "error-handler-0dfb02cc-1944-4542-b5c5-9e0b198e143d-a7ca09a9", "type": "main", "index": 0}], [{"node": "error-handler-0dfb02cc-1944-4542-b5c5-9e0b198e143d-11c75616", "type": "main", "index": 0}], [{"node": "error-handler-0dfb02cc-1944-4542-b5c5-9e0b198e143d-663573e2", "type": "main", "index": 0}], [{"node": "error-handler-0dfb02cc-1944-4542-b5c5-9e0b198e143d-7f6403b3", "type": "main", "index": 0}], [{"node": "error-handler-0dfb02cc-1944-4542-b5c5-9e0b198e143d-588aa656", "type": "main", "index": 0}]]}}, "name": "Manualtrigger Workflow", "description": "Automated workflow: Manualtrigger Workflow. This workflow processes data and performs automated tasks.", "settings": {"executionOrder": "v1", "saveManualExecutions": true, "callerPolicy": "workflowsFromSameOwner", "errorWorkflow": null, "timezone": "UTC", "executionTimeout": 3600, "maxExecutions": 1000, "retryOnFail": true, "retryCount": 3, "retryDelay": 1000}, "meta": {"instanceId": "workflow-17fb5a98", "versionId": "1.0.0", "createdAt": "2025-09-29T07:08:00.101429", "updatedAt": "2025-09-29T07:08:00.101452", "owner": "n8n-user", "license": "MIT", "category": "automation", "status": "active", "priority": "high", "environment": "production"}, "tags": ["automation", "n8n", "production-ready", "excellent", "optimized"], "notes": "Excellent quality workflow: Manualtrigger Workflow. This workflow has been optimized for production use with comprehensive error handling, security, and documentation."}