Review HeyReach campaign performance and tune Twain agents from Slack
Ready for 3.0Ready for 3.0. This template uses no nodes that n8n 3.0 removes. No removed nodes, versions or helpers found. Static check, last run 2026-10-19.
What this workflow does
This workflow has 21 nodes and runs on a schedule (every day at 07:00). Along the way it connects Slack.
How it runs
Trigger: On a schedule (every day at 07:00).
- Settings (Edit Fields (Set)): sets 4 fields: campaigns, twain_base_url, heyreach_base_url…
- Split Campaigns (Split Out): splits a list into separate items
- Each Campaign (Loop Over Items (Split in Batches)): loops over the items in batches
- HeyReach: Campaign (HTTP Request): calls an HTTP API
- HeyReach: Overall Stats (HTTP Request): calls an HTTP API (POST)
- HeyReach: Conversations (HTTP Request): calls an HTTP API (POST)
- Wait for HeyReach (Merge): merges the data from its input branches
- Build Analyze Request (Code): runs custom JavaScript code
- Twain: Analyze Campaign (HTTP Request): calls an HTTP API (POST)
- Build Digest (Code): runs custom JavaScript code
…plus 10 more steps. See the full node list below.
Services it uses
Before you upgrade to n8n 3.0
Nothing in this workflow is removed in n8n 3.0, so it should import and run after the upgrade.
Nodes used (9)
- Schedule Trigger
n8n-nodes-base.scheduleTrigger - Edit Fields (Set)
n8n-nodes-base.set - Split Out
n8n-nodes-base.splitOut - HTTP Request
n8n-nodes-base.httpRequest - Merge
n8n-nodes-base.merge - Loop Over Items (Split in Batches)
n8n-nodes-base.splitInBatches - Code
n8n-nodes-base.code - If
n8n-nodes-base.if - Slack
n8n-nodes-base.slack
From the author
Quick overview This workflow runs daily, pulls campaign stats and reply conversations from HeyReach, sends them to Twain for performance analysis, and posts a digest to Slack with optional one-click approval to apply Twain’s suggested agent updates. How it…