Build a customer interview research repository in Notion from Granola notes
When a Granola interview note lands, an agent files a structured record in your Notion research database and posts a highlights digest to Slack.
Integrations
Granola
Notion
Slack Bot
Type
Categories
- Product
- Operations
Build me an agent workflow that turns every customer interview I take in Granola into a structured record in our Notion research database, and posts a short highlights digest in our research Slack channel so the team sees it.
Trigger: poll Granola for new notes (event type: new_note), scoped to a specific Granola folder I will configure (our Customer Interviews folder). I will provide the folder name or ID at setup. Skip any note whose meeting title does not look like a customer interview, using simple heuristics like the presence of an external company name, or a title pattern such as 'Interview', 'User Research', 'Discovery', or 'Customer Call'. When in doubt, skip rather than file a noisy record.
For each interview note that passes the filter, the agent should:
1. Call Granola Get Note for the triggering note ID with include=transcript so we have both the summary_markdown and the full transcript to work with.
2. From the summary and transcript, extract the following structured fields: interviewee name, interviewee role/title, company, interview date, key pain points (as a list), themes (as a list of tags), top 1 to 3 surprising or quotable lines (verbatim, with attribution), and any explicitly requested features or product asks. If a field is genuinely missing from the note, leave it blank rather than hallucinating.
3. Call Notion Create a Page with the parent set to our research database (I will paste the database/data source ID at setup). Map the extracted fields onto the database properties: Interviewee (title), Company, Role, Interview Date (date), Themes (multi-select), Pain Points (multi-select or rich text), Feature Requests (rich text), and a Granola Link property pointing back to the original note URL. Put the full Granola summary_markdown into the page body, followed by a Surprising Quotes section with the verbatim quotes, and an Action Items section if Granola surfaced any. If a property does not exist on the database, skip it gracefully.
4. Call Slack Bot Send a Message to post a short digest to the research channel I designate at setup. The message should include: interviewee name and company, 2 to 4 bullet highlights (top pain points and themes), one standout quote, and a link to the new Notion page. Keep it under ~10 lines so it reads cleanly in channel.
Other behavior I want: be idempotent (do not double-create the Notion page if the same note fires twice; check by Granola note ID stored in a property like 'Granola Note ID' on the database before creating). If Notion create fails, do not post to Slack. If Slack post fails after a successful Notion create, log the error but do not retry the Notion create. Use the Granola summary_markdown verbatim for the body, do not rewrite it.
At setup time, ask me for: the Granola folder to watch, the Notion research database/data source ID, the Slack channel ID for the digest, and any custom title keywords I want to treat as 'this is an interview'.
What it does
- Watches a designated customer interview folder in Granola and skips notes that are not real interviews.
- Pulls the full summary and transcript and extracts interviewee, company, role, pain points, themes, surprising quotes, and feature requests.
- Creates a new entry in your Notion research database with those fields as page properties and the full recap in the page body.
- Posts a short highlights digest to your research Slack channel with a link back to the Notion page so the team can react in one place.
What you’ll need
- A Granola account on a Business or Enterprise plan with personal API keys enabled, plus a folder you use for customer interviews.
- A Notion workspace with a research database that has properties for interviewee, company, role, themes, pain points, and feature requests.
- A Slack workspace and a research channel where the team wants to see new interview highlights.
How to customize it
- Point it at a different Granola folder, or change the title rules used to decide which notes count as interviews.
- Add or rename properties in the Notion database (for example a customer segment tag, a deal stage, or a sentiment score) and the agent will fill them in.
- Swap the Slack channel, change the digest format, or have it post in a thread under a weekly research roundup message instead of a top-level message.
Use cases
- Research & Monitoring
- Meeting Workflows
- Feedback Triage