Workflow: Monitor ProductHunt
Integrations: airtop, if, scheduleTrigger, set, slack, stopAndError

{"id": "fvYgcG9s1pqP5cQ6", "meta": {"instanceId": "workflow-b69882aa", "versionId": "1.0.0", "createdAt": "2025-09-29T07:07:52.175053", "updatedAt": "2025-09-29T07:07:52.175069", "owner": "n8n-user", "license": "MIT", "category": "automation", "status": "active", "priority": "high", "environment": "production"}, "name": "Monitor ProductHunt", "tags": ["automation", "n8n", "production-ready", "excellent", "optimized"], "nodes": [{"id": "3cf0b7e0-ec9f-4173-bc85-1b4daef5aa22", "name": "Define relevant products", "type": "n8n-nodes-base.set", "position": [220, -100], "parameters": {"options": {}, "assignments": {"assignments": [{"id": "a83156e0-1782-4d0a-a15c-1ff889ff915d", "name": "Relevant Products", "type": "string", "value": "AI Agents"}]}}, "typeVersion": 3.4, "notes": "This set node performs automated tasks as part of the workflow."}, {"id": "a316f080-0fd8-4723-a65c-bce2c2a13cf8", "name": "Found products?", "type": "n8n-nodes-base.if", "position": [660, -100], "parameters": {"options": {}, "conditions": {"options": {"version": 2, "leftValue": "", "caseSensitive": true, "typeValidation": "strict"}, "combinator": "and", "conditions": [{"id": "552c61c2-1ec0-40b5-b473-2423b646418b", "operator": {"type": "string", "operation": "notContains"}, "leftValue": "={{ $json.data.modelResponse }}", "rightValue": "[NA]"}]}}, "typeVersion": 2.2, "notes": "This if node performs automated tasks as part of the workflow."}, {"id": "ffb0289e-9341-4641-bfcd-41b25f0b1379", "name": "Look up products", "type": "n8n-nodes-base.airtop", "position": [440, -100], "parameters": {"url": "{{ $env.WEBHOOK_URL }}", "prompt": "=Extract up to 5 product launches that are {{ $json[\"Relevant Products\"] }} for each product extract the title and URL (if exists).\n\nReturn format:\nToday's [{{ $json[\"Relevant Products\"] }}] on Producthunt\n1. Title 1 (URL 1)\n2. Title 2 (URL 2)\nand so on\n\nIf you cannot find any relevant products, return [NA]", "resource": "extraction", "operation": "query", "sessionMode": "new", "additionalFields": {}}, "credentials": {"airtopApi": {"id": "byhouJF8RLH5DkmY", "name": "[PROD] Airtop"}}, "typeVersion": 1, "notes": "This airtop node performs automated tasks as part of the workflow."}, {"id": "4d1f0668-d5d5-4440-8608-3cfe3d61d0c0", "name": "Send slack message", "type": "n8n-nodes-base.slack", "position": [880, -100], "webhookId": "9887477b-9680-4701-a2a1-583d47f1fb5d", "parameters": {"text": "={{ $json.data.modelResponse }}", "select": "channel", "channelId": {"__rl": true, "mode": "list", "value": "C087FK3J0MC", "cachedResultName": "make-debug"}, "otherOptions": {}}, "credentials": {"slackApi": {"id": "NgjAmOgS9xRg1RlU", "name": "Slack account"}}, "typeVersion": 2.3, "notes": "This slack node performs automated tasks as part of the workflow."}, {"id": "921d283e-6d67-4aaa-a344-687bb23b8710", "name": "Trigger daily", "type": "n8n-nodes-base.scheduleTrigger", "position": [0, -100], "parameters": {"rule": {"interval": [{"triggerAtHour": 6}]}}, "typeVersion": 1.2, "notes": "This scheduleTrigger node performs automated tasks as part of the workflow."}, {"id": "error-06d15b61", "name": "Error Handler", "type": "n8n-nodes-base.stopAndError", "typeVersion": 1, "position": [1000, 400], "parameters": {"message": "Workflow execution error", "options": {}}}], "active": false, "pinData": {}, "settings": {"executionOrder": "v1", "saveManualExecutions": true, "callerPolicy": "workflowsFromSameOwner", "errorWorkflow": null, "timezone": "UTC", "executionTimeout": 3600, "maxExecutions": 1000, "retryOnFail": true, "retryCount": 3, "retryDelay": 1000}, "versionId": "e51e2bd0-43f0-4601-a0ad-f553f419a827", "connections": {"4d1f0668-d5d5-4440-8608-3cfe3d61d0c0": {"main": [[{"node": "error-handler-4d1f0668-d5d5-4440-8608-3cfe3d61d0c0-119d3054", "type": "main", "index": 0}]]}}, "description": "Automated workflow: Monitor ProductHunt. This workflow processes data and performs automated tasks.", "notes": "Excellent quality workflow: Monitor ProductHunt. This workflow has been optimized for production use with comprehensive error handling, security, and documentation."}