Auto-build a pitch deck when a HubSpot deal hits Discovery

By General Input

When a HubSpot deal moves into Discovery, clone your master template into Google Slides, personalize it for the prospect, attach the link to the deal, and ping the AE in Slack.

Integrations

  • HubSpot
  • Google Slides
  • Google Drive
  • Slack

Type

Agentic Task

Categories

  • Sales
  • Operations

Build me an agent workflow that auto-generates a personalized first-call pitch deck in Google Slides every time a HubSpot deal moves into our Discovery stage, and posts the deck back on the deal and into Slack.

Trigger: a HubSpot webhook for a deal stage-change event. The webhook fires when a deal's stage property changes. The agent should only continue if the new stage matches our configured target stage (default: Discovery). I want the target stage to be an easy-to-edit setting at the top of the workflow.

Steps the agent should take, in order:

1. Call HubSpot Get Deal on the deal ID from the webhook payload. Pull at least: dealname, amount, dealstage, pipeline, closedate, plus any associated company and primary contact IDs.

2. Safety check: skip the run if the deal amount is below a configurable dollar threshold (default $5,000). Also skip if the deal already has a note containing the phrase 'Pitch deck' or a Google Slides link, so we never duplicate work when a deal bounces between stages. Post a short 'skipped' notice in Slack and stop.

3. Call HubSpot Get Company on the associated company ID. Pull name, domain, industry, description, and any custom 'use_case' or 'logo_url' properties we have.

4. Call HubSpot Get Contact on the primary contact ID. Pull firstname, lastname, jobtitle, and email.

5. Use Google Drive Copy File to clone our master pitch template deck (its file ID should be a configurable setting). Name the copy something like 'Pitch Deck - {company name} - {today}' and put it in a configurable destination folder.

6. Use Google Slides ReplaceAllText on the new deck to swap the following tokens with the values pulled from HubSpot: {{company}}, {{contact_name}}, {{contact_title}}, {{deal_amount}}, {{industry}}, {{use_case}}, {{close_date}}, {{ae_name}}. If a value is missing, leave the token blank rather than failing the run.

7. Use Google Slides ReplaceAllShapesWithImage to drop the prospect company's logo into any shape on the template whose alt text or contained text is {{logo}}. Source the logo URL from the company's logo_url property if set, otherwise from the company domain via a logo lookup (e.g. Clearbit-style logo URL pattern).

8. Use HubSpot Create Note to attach a note to the deal containing the deck link and a short label like 'Auto-generated first-call pitch deck'. Make sure the note associates to the deal so it shows up on the deal timeline.

9. Use Slack Send a Message to post into the AE's channel (channel ID should be configurable, with a fallback to a shared sales channel). The message should include: the deal name, deal amount, prospect company, primary contact name and title, the deck link, and a one-line 'Why now' summary the agent writes from the company description and use case.

Settings I want exposed at the top of the workflow so I can tweak without editing logic: target stage name(s), minimum deal amount, master template file ID, destination Drive folder ID, default Slack channel ID, and the placeholder token list.

Error handling: if the deck copy or any Slides edit fails, post a Slack message in the same channel saying which deal failed and why, and do not create a HubSpot note. Surface any HubSpot 429 or Google 429 rate-limit responses with a short backoff retry.

Related prompts

Explore more prompts
Call overdue Xero customers with an AI collections agentWin back LiveChat visitors whose chats went unansweredTurn Mailjet email clicks into ranked HubSpot follow-upsiMessage campaign console with pre-flight checks and delivery boardChat quality review board for LiveChat support leadsA searchable RFP answer library your bid team drafts fromSee which target accounts just started advertising on LinkedInAccount health board that puts product usage next to your CRMLook up a customer's full chat history mid conversationLusha prospecting workbench with credit-safe reveals