Connectors

/

Granola

/

Add Granola meeting attendees to a HubSpot list
Write
Cross-Connector

Turn Granola meeting attendees into a HubSpot list

For marketing and sales teams who want everyone from a meeting series on a HubSpot list for follow-up, just by asking their AI assistant.

Try PopdockAI free
Get a live demo
Add Granola meeting attendees to a HubSpot list
Put everyone who attended our Product Office Hours meetings in the last 60 days on the HubSpot list Office Hours Attendees.
I found 6 Product Office Hours meetings in Granola with 31 distinct attendees. - List: Office Hours Attendees, manual, 12 members today - To add: 17 contacts, led by Dana Whitfield with 5 meetings - Already on the list: 9 contacts - Not in HubSpot: 5 attendees, not added Shall I add the 17 contacts?
Granola
Sample figures. Your results come from your own account.
granola-get-note
granola-get-attendee
hubspot-get-contacts
hubspot-get-lists
hubspot-get-contact-list-membership
hubspot-add-list
hubspot-add-list-members
hubspot-remove-list-members
hubspot-rename-list
hubspot-add-contact

On this page

The problem

The problem

The prompt

Who it's for

How it works

Tools used

Connector

Granola

Granola
Run it on your own Granola data.

Connect Granola, pick your AI tool and paste the prompt.

Try PopdockAI free

The problem

Meeting attendees slip through on the way to a HubSpot list

Getting a meeting series' attendees onto a HubSpot list means opening each meeting, copying emails, finding each person and checking who is already on the list. Regulars get added twice and a few always slip through.

Without PopdockAI

  • Open each Granola meeting in the series
  • Copy the attendee emails out one by one
  • Search HubSpot for each person
  • Check the list for people already on it

With PopdockAI

  • Matching meetings are shown so you confirm the series
  • Each distinct attendee is counted once and found in HubSpot by email
  • Existing members are dropped and unknown people listed, not created
  • Nothing is written until you confirm, and nobody is removed

The prompt

Use this prompt

Copy it into any AI tool connected to PopdockAI. Swap the values in braces for your own.

Prompt
**Objective:** Put every HubSpot contact who attended a Granola meeting whose title contains `{meeting-title}` in the last `{lookback-days}` days (default 90) into the manual HubSpot contact list named `{list-name}`, creating the list if it does not exist. Nothing is written until the user confirms.

**Step 1: Meetings (Granola)**

Call `granola-get-note` with title.contains set to the meeting title and created.from set to today minus the lookback days. If none match, say so and stop. Show the matched titles and dates so the user can see which meetings are in the series.

**Step 2: Attendees (Granola)**

For each note, call `granola-get-attendee` with note-id set to the note id. Collect distinct emails (ignore case), with a count of meetings attended.

**Step 3: Match in HubSpot**

For each email, call `hubspot-get-contacts` with email set to that address. Keep the record-id. Attendees with no match are listed as "Not in HubSpot" and are not added; do not create contacts here.

**Step 4: The list (HubSpot)**

Call `hubspot-get-lists` with name set to the list name and object-type 0-1.

* If exactly one list matches and its processing-type is MANUAL, use its list-id. Call `hubspot-get-contact-list-membership` with list-id set to it and drop contacts that are already members.
* If it matches but is not MANUAL, stop: only manual lists can be changed.
* If none matches, plan to create it with object-type 0-1 and processing-type MANUAL.

**Step 5: Confirm**

Show: the list (existing, with its list-id, or "will be created"), the contacts to add (name, email, meetings attended), the contacts already in it, and the attendees not in HubSpot. Ask for explicit confirmation. Write nothing without a clear yes.

**Step 6: Write (only after yes)**

If the list must be created, call `hubspot-add-list` once with name set to the list name, object-type 0-1 and processing-type MANUAL, and keep the returned id. Then call `hubspot-add-list-members` with list-id and record-ids set to the approved contact record-ids, comma-separated (one call per 100 records). Finally call `hubspot-get-contact-list-membership` with the list-id and confirm each contact is now a member.

**Rules & Guidelines:**

* `granola-get-note` and `granola-get-attendee` are on the Granola server. `hubspot-get-contacts`, `hubspot-get-lists`, `hubspot-get-contact-list-membership`, `hubspot-add-list` and `hubspot-add-list-members` are on the HubSpot server.
* The only writes are `hubspot-add-list` (at most once, only when the list does not exist) and `hubspot-add-list-members`. Call no other write tool: no other hubspot-add, hubspot-update, hubspot-rename, hubspot-remove, hubspot-subscribe, hubspot-unsubscribe or hubspot-import tool (including `hubspot-remove-list-members`, `hubspot-rename-list` and `hubspot-add-contact`). The Granola server is only read.
* Never remove anyone from the list, even if they did not attend.

**Validation:**

* If two HubSpot lists share the name, list them and stop for the user to choose.
* If every matched contact is already a member, say so and write nothing.
* If the read-back is missing a contact, report which and do not retry.

Who it's for

One answer, three teams that use it

Marketing managers

Build a follow-up list from a meeting series

Everyone who joined your sessions ends up on one HubSpot list, ready for the next email.

Add everyone from our Customer roundtable meetings this quarter to the HubSpot list Roundtable 2026.

Customer success managers

Keep track of who comes to office hours

Each attendee is counted once with how many sessions they joined, so regulars are easy to spot.

Put the attendees of our Contoso onboarding calls from the last 30 days on a HubSpot list called Contoso onboarding.

Marketing operations

Grow a list without duplicates

People already on the list are skipped and each new member is checked afterwards.

Add new attendees from the Fabrikam training meetings to the Training Attendees list in HubSpot, skipping current members.

How it works

What PopdockAI does when you ask

You name the meeting title and the HubSpot list, and your AI assistant gathers the attendees and matches them in HubSpot. Granola is only read, and contacts are added only after you confirm.

01

Find

It finds Granola meetings whose title matches, from the last 90 days or the period you give.

Your AI tool

02

Match

It collects distinct attendee emails and finds each person in HubSpot.

granola-get-note
granola-get-attendee
hubspot-get-contacts

03

Confirm

You see the list, the contacts to add, existing members and attendees not in HubSpot, and say yes.

No items found.

04

Add

It creates the manual list if needed, adds the contacts and checks each one is a member.

Your AI tool

What PopdockAI provides

The tools behind the answer

Ready made tools for Granola and one secure connection to your AI tool. No code, no exports.

get-data

granola-get-note

Returns Granola meeting notes with their summaries and metadata. Filter by date range, title or owner to find the meetings you need.
get-data

granola-get-attendee

Returns the people who attended each Granola meeting note, so you can see who was actually in the room.
get-data

hubspot-get-contacts

Returns contact records from HubSpot CRM, with email, phone, company, lifecycle stage, lead status, owner and location from the HubSpot connector. Filter by company id, state region, contact owner, email, last name, create date, company name, record id, lifecycle stage, lead status.
get-data

hubspot-get-lists

Returns HubSpot lists (segments) of any object type, with size and processing type from the HubSpot connector. Filter by size, processing type, name, list id, object type.
get-data

hubspot-get-contact-list-membership

Returns which contacts belong to which contact lists from the HubSpot connector. Filter by list name, contact id, contact email, list id.
run-action

hubspot-add-list

Creates a HubSpot list and returns its ID. Required: Name, Object type, Processing type. Writes to HubSpot.
run-action

hubspot-add-list-members

Adds records to a manual HubSpot list. Required: List ID, Record IDs. Writes to HubSpot.
run-action

hubspot-remove-list-members

Removes records from a manual HubSpot list. Required: List ID, Record IDs. Writes to HubSpot.
run-action

hubspot-rename-list

Renames a HubSpot list. Required: List ID, New name. Writes to HubSpot.
run-action

hubspot-add-contact

Creates a contact in HubSpot and returns the new contact's ID. Requires email. Optional: phone, last name, company name, first name, lead status, lifecycle stage, owner id, job title.
Read only.Nothing in Granola Changes

This report is built from Get data tools only. PopdockAI applies the row, field and parameter rules your admin sets, and every query is written to the audit trail.

How Popdock AI secures your data

The outcome

One list of everyone who came, counted once

Try PopdockAI free
Get a live demo

Related use cases

More ways to put this data to work

All Ramp use cases

One prompt template with infinite possibilities.

‍

Your AI assistant adapts its approach, tone, and capabilities to match each unique context while you maintain a single, manageable workflow.

Join forward-thinking companies that are transforming their operations with intelligent, secure AI automation.

Try PopdockAI Free
See Documentation