Auto-attach Cap walkthroughs to the right HubSpot deal

Every two business hours, new Cap sales walkthroughs get filed on the matching HubSpot deal automatically, so AEs stop pasting share links into deal notes by hand.

Agentic Task
CapHubSpotSlack BotSalesOperationsData SyncMeeting WorkflowsNotifications & Alerts
PromptCreate

I want an agent that auto-attaches new Cap sales walkthrough recordings to the right HubSpot deal so my AEs stop manually pasting Cap share links into deal notes.

Trigger: cron, every 2 hours, business hours only (default 9am to 6pm on weekdays in the workspace's local timezone). Cap does not support webhooks or first-class polling, so a recurring cron is the right approach. The workflow should only consider Cap recordings created since the last run.

Step 1. Pull new recordings from Cap. Use Cap's List Videos to fetch recordings whose createdAt is after the previous run's high-water mark (or the last 2 hours on the first run). Skip recordings whose transcriptionStatus is PROCESSING so we pick them up on the next pass once they finish. The public share link is https://cap.so/s/{id}.

Step 2. Reason over each recording's title to extract a likely company or contact name. Titles tend to look like "Acme Demo Walkthrough", "Initech - product tour", "Walkthrough for Jane @ Globex", "Stark Industries discovery follow-up". Pull out the most likely company name first; if there isn't one, pull a contact's full name. If the title is generic (e.g. "demo", "recording", "untitled", "test"), mark it low-confidence and skip.

Step 3. Find the right HubSpot deal. Use HubSpot's Search Companies to find a single confident match for the extracted company name (exact-ish name match, prefer companies with recent activity). Then use HubSpot's Search Deals to find that company's most active open deal: filter to dealstage not equal to closedwon or closedlost, sort by hs_lastmodifieddate descending, and take the top hit. If the title only gave you a contact name, try Search Companies via the contact's likely domain or fall back to Search Deals filtered by associated contact name. Only proceed when there is exactly one strong match.

Step 4. File the note. Use HubSpot's Create Note with a body that includes the recording title, the duration rounded to minutes, and the Cap share link. Associate the note with the matched deal and, when available, the deal's primary contact. Don't auto-create companies, contacts, or deals; if any of those don't exist, treat the recording as a skip.

Step 5. When in doubt, skip. Skip rules: no confident company or deal match, multiple plausible matches, the only matching deal is closed, or the title is generic. Skipping is the right behavior here, since a wrong note attached to the wrong deal is worse than no note at all.

Step 6. Send a Slack nudge for skips. After each run, use Slack Bot's Send a Message to post one short message to a sales channel I will pick at setup time, listing every skipped recording with its title, duration, Cap share link, and a one-line reason it was skipped (e.g. "no company match", "two possible deals", "generic title"). If there were zero skips, do not post anything. Do not post a message for successful attachments; the HubSpot note is the receipt.

Edge cases: if HubSpot returns 429, back off and retry. If Cap returns a recording with empty title and empty externalUserId, skip it as low-confidence. De-dupe defensively on Cap video id so a recording is never noted twice across overlapping runs. Persist the high-water mark across runs.

Inputs I want to set when I install this: the Slack channel for the skipped-recordings nudge, the cron cadence and business-hours window, and a confidence threshold setting (default: only attach when there is exactly one company match and one active open deal).

Additional information

What does this prompt do?
  • Checks Cap every couple of business hours for new sales walkthrough recordings.
  • Reads each recording's title to figure out which company or prospect it was for.
  • Finds the right open deal in HubSpot and files a note with the recording title, length, and Cap share link.
  • Skips anything it isn't confident about and posts a short Slack nudge so a rep can attach those by hand.
What do I need to use this?
  • A Cap account where you can create a developer Secret Key.
  • A HubSpot login that can read companies and deals and create notes.
  • A Slack workspace and the channel you want skipped-recording nudges to post in.
How can I customize it?
  • Change the schedule or extend the business-hours window the workflow runs in.
  • Adjust how strict the title-to-deal matching has to be before it auto-attaches.
  • Pick a different Slack channel, or route different reps to different channels.

Frequently asked questions

What if a recording's title doesn't include a company or contact name?
It gets skipped on purpose, and the recording shows up in the Slack nudge so a rep can pick the right deal and attach it manually.
Could it ever attach a walkthrough to the wrong deal?
It is designed to skip rather than guess. If the title-to-deal match isn't confident, it leaves the recording for a human instead of writing to HubSpot.
Does it touch closed-won or closed-lost deals?
No. It prefers the most active open deal for the matched company, so notes land where the rep is still working.
How often does it actually run?
Every two hours during business hours by default, since Cap can't push notifications when a recording is made. You can change the cadence or window during setup.
Will the same recording get logged twice?
No. The workflow only looks at recordings created since its last run, so each walkthrough gets filed exactly once.

Stop pasting Cap links into HubSpot deal notes.

Connect Cap, HubSpot, and Slack once, and Geni files every sales walkthrough on the right deal every two hours.