HeyReach sender account health and campaign control room

By General Input

See every LinkedIn sender account, its connection status and its campaign fuel on one board, and pause or resume campaigns without leaving it.

Integrations

  • HeyReach
  • Slack Bot
  • Google Sheets

Type

App

Categories

  • Sales
  • Operations

Build me a control room for my LinkedIn outreach that I open every morning to see whether the machine is actually running. I run outreach across a lot of sender accounts in HeyReach, and my core problem is that LinkedIn sessions expire without warning, so a dead sender quietly stops sending and I do not find out for days. The whole app is one board, and its job is to make broken things impossible to miss.

The main surface is a grid of cards, one per connected LinkedIn sender account, loaded with Get All LinkedIn Accounts and enriched with Get LinkedIn Account By ID. The first thing on every card is connection status, shown large and in a status color, because that is the number I actually open the app for. Also show the sender name, profile photo, and the client or workspace the account belongs to.

Next to the account details, list the campaigns that sender drives, from Get All Campaigns scoped to that account with Get Campaign By ID for detail. Mark each campaign running, paused or stalled. Treat a campaign as stalled when it is nominally active but has not sent anything recently, since that is a different problem from a campaign somebody paused on purpose. For each account and campaign show acceptance rate and reply rate for a date window I pick at the top of the board, using Get Overall Stats, with a window picker offering the last 7, 14 and 30 days.

A second column on each card is fuel, meaning how many leads are still queued in each campaign, so I can see which campaigns will run dry this week before they actually do. Get that with Get Leads From Campaign. HeyReach paginated responses return a totalCount alongside the items, so read the count from totalCount with a minimal page size rather than pulling every lead, which keeps the board fast. HeyReach enforces a limit of 300 requests per minute, so page deliberately everywhere, load account cards progressively instead of firing every request at once, and degrade gracefully if a call is rate limited.

Sorting is the most important behavior in the app. Disconnected accounts always sort to the very top, followed by campaigns whose remaining lead count is below a threshold I set. Both should be visually loud rather than a subtle badge, since the entire point is that I cannot scroll past them. Let me set that lead threshold inside the app and remember it. Let me also group the grid by client or by workspace, where each group shows only that client's senders and campaigns plus a small group level summary.

I want to act without leaving the board. Every campaign row gets inline pause and resume controls, wired to Pause Campaign and Resume Campaign, with the card refreshing to reflect the new state. Ask me to confirm before pausing so I do not kill a live campaign with a stray click.

Put two actions at the top of the board. The first posts the current snapshot into a team Slack channel using the Slack Bot Send a Message operation, formatted as a readable summary that leads with anything broken, meaning disconnected senders and campaigns running low on leads, and then gives the per account numbers. The second appends the day's numbers to a Google Sheet with Append Values, one row per account or campaign including the date, so I build my own trend history that HeyReach does not give me. Let me choose the Slack channel and the target spreadsheet and tab.

Each account card has an Explain this account button that starts a background agent scoped to that one sender. The agent pulls that account's campaigns with Get All Campaigns and Get Campaign By ID, its performance over the last few weeks with Get Overall Stats, and its recent conversations with Get Conversations, then writes a short diagnosis and one recommended action back onto the card so the app displays it inline. I want real diagnoses, for example that acceptance collapsed after a message change, or that two campaigns are competing for the same sender and splitting its daily capacity, or that sending continued while replies went to zero. Keep it to a few sentences plus the recommendation, show a working state on the card while the agent runs, and keep the last result visible with a timestamp until I run it again.

Persist my settings per user: the chosen date window, the lead threshold, the grouping choice, the Slack channel, the spreadsheet target, and the latest agent diagnosis for each account. When I open the board in the morning it should come back exactly as I left it, with fresh numbers.

Related prompts

Explore more prompts
Call overdue Xero customers with an AI collections agentLocal listing health board for every location you manageLet support send one-off Loops emails without an engineerA brand asset library your marketing team actually searchesTurn Mailjet email clicks into ranked HubSpot follow-upsClean out the Looker dashboards and Looks nobody opensStop cold emails to anyone with a live deal in PipedriveLiveKit live operations console for room moderationWake up dormant Keap leads with a researched reasoniMessage campaign console with pre-flight checks and delivery board