Log every external Google Calendar meeting in HubSpot automatically

When a new external meeting hits your Google Calendar, Geni files a HubSpot note on the contact and deal, then posts a Slack confirmation to the deal owner.

Agentic Task
Google CalendarHubSpotSlackSalesOperationsData SyncMeeting WorkflowsNotifications & Alerts
PromptCreate

Build me an agent workflow that keeps HubSpot up to date with every external sales meeting on my Google Calendar, with no manual logging.

Trigger: Google Calendar, poll trigger, event type new_event on my primary calendar. Ask me for my own company email domain on first run so the agent knows what counts as internal versus external.

When a new event fires, inspect the attendee list. If every attendee email shares my own company domain, ignore the event and stop. This keeps internal standups and 1:1s out of the CRM.

Otherwise, for each external attendee on the event, run HubSpot Search Contacts filtered by email. If a contact exists, use that contact. If no contact exists, call HubSpot Create Contact first, parsing first name, last name, and email from the calendar attendee, then continue with the new contact.

For the matched or newly created contact, also run HubSpot Search Deals scoped to the contact's associated company, sorted by most recently updated, to find the active deal if there is one.

Then call HubSpot Create Note associated with the contact (and the deal if one was found) with a body that contains a Meeting scheduled header, the meeting title, the start time in the calendar's time zone, the organizer email, the attendee list, and the agenda copied from the event description. Keep the note short and scannable.

Finally, post a Slack Send a Message confirmation to the deal owner. Resolve the owner from the HubSpot deal record (fall back to the contact owner if there is no deal). Use a per-owner channel if one is configured, otherwise DM the owner. The message should summarize what was logged in one or two sentences, name the contact and company, and link to the HubSpot note so the rep can jump in.

Be defensive: skip attendees with obviously invalid emails, do not create duplicate contacts within a single run, and if the HubSpot or Slack call fails, log the error and continue with the remaining attendees rather than aborting the whole event.

What does this prompt do?

  • Watches your Google Calendar for new events and ignores any meeting where every attendee shares your own email domain.
  • For each external attendee, looks them up in HubSpot by email and creates the contact if they do not exist yet.
  • Files a Create Note on the contact (and any associated deal found via Search Deals) capturing meeting title, time, organizer, agenda from the event description, and a Meeting scheduled header.
  • Posts a short Slack confirmation to the deal owner so reps can see exactly what was logged without opening HubSpot.

What do I need to use this?

  • A Google Calendar account connected to General Input with read access to the calendar that holds your sales meetings.
  • A HubSpot account with permission to read contacts and deals and to write contacts and notes.
  • A Slack workspace connected with permission to send messages on the deal owner channel.
  • Your own company email domain so the agent knows which attendees count as external.

How can I customize it?

  • Swap the Slack target from a per-owner channel to a shared #sales-activity channel if leadership wants one feed.
  • Tighten or widen the external filter, for example treat partner domains as internal so partner syncs do not pollute the CRM.
  • Change the note body template, add fields like meeting link, location, or a one-line AI summary of the agenda.

FAQs

How does the agent decide whether a meeting is external?
It compares every attendee email domain against your own company domain. If at least one attendee is on a different domain the meeting is treated as external and logged. If everyone is on your domain, for example an internal standup, the agent skips it.
What happens if the attendee does not exist in HubSpot yet?
The agent calls HubSpot Create Contact first, parsing first and last name and email from the calendar attendee, then attaches the meeting note to the new contact. No external prospect ever falls through the cracks.
Does it associate the note with the deal too?
Yes. After it has the contact, the agent runs Search Deals scoped to the contact's company so the note shows up on the active deal timeline, not just the contact record.
Will it log the same meeting twice if the event gets edited?
No. The Google Calendar new_event poll trigger only fires for newly created events, so reschedules and updates do not create duplicate HubSpot notes.
Can I route the Slack confirmation somewhere other than the deal owner?
Yes. The agent reads the deal owner from HubSpot to pick a channel, but you can edit the prompt to send to a fixed channel, a manager DM, or any other Slack destination.

Related templates

Client-by-client cold email pipeline review for agencies

Pick a client and a date range to see sent, replies, meetings booked and the real deal value your cold email produced, campaign by campaign.

Instantly
HubSpot
Slack Bot
App
Partner tier review board for quarterly promotion calls

Work every partner tier decision from one board, with the revenue and commission numbers, clear promotion thresholds, and AI review briefs.

Introw
HubSpot
Slack
App
Reconcile partner commissions between HubSpot and Introw

Open one board at month end to find every closed deal missing a commission, every commission with no deal behind it, and every amount that does not add up.

Introw
HubSpot
Slack
App
One control room for every Instantly sending mailbox

See warmup status, daily send volume, and bounce risk for every sending account in one grid, with the riskiest mailboxes floating to the top.

Instantly
Slack
App
Hiring signal board for your customers and open pipeline

Open one board each morning to see which of your accounts are hiring, what they are building, and where your product fits the roles they just opened.

JobsPipe
HubSpot
App
Partner payout approval queue with Xero bill handoff

Review Introw partner payouts line by line, approve them from one board, raise the matching bill in Xero, and post every approval to Slack.

Introw
Xero
Slack
App

Stop letting external meetings disappear from your CRM.

Connect Google Calendar, HubSpot, and Slack once, and Geni logs every external sales meeting the moment it lands on your calendar.