Interview debriefs from Granola to Ashby and an Airtable scorecard

When a Granola interview note lands, attach a structured recap to the candidate in Ashby and append a hiring committee scorecard row in Airtable.

Agentic Task
GranolaAshbyAirtableHR & PeopleOperationsMeeting WorkflowsData Sync
PromptCreate

Build an agent workflow that turns interview notes from Granola into structured hiring records in Ashby and Airtable.

Trigger: poll Granola for new_note. When a new note is created, fetch the full note via Granola Get Note (with summary, attendees, and calendar event).

Step 1: Decide if this note is an interview. Treat it as an interview if any of these are true: the title matches a typical interview pattern (e.g. contains 'interview', 'screen', 'panel', 'phone screen', or '<role> with <name>'), the note lives in a designated interviews folder in Granola, or the attendee list includes at least one external email domain that does not match the company domain. If none of these match, stop and skip the rest. Do not write anything to Ashby or Airtable for non-interview meetings.

Step 2: Extract the candidate's name and email from the note's attendees (the external attendee), and identify the role and the interviewer(s) from the title plus internal attendees. Read the summary to derive: an overall signal rating (Strong Yes / Yes / Mixed / No / Strong No), 2 to 4 bullet strengths, 1 to 3 concerns, and a one-line recommendation.

Step 3: In Ashby, call Search Candidates by the candidate's email (exact match). If exactly one candidate is found, call Create Candidate Note on that candidate with HTML content structured as: a heading with the role and date, a Signal line, a Strengths section (bulleted), a Concerns section (bulleted), a Recommendation line, and a footer link back to the original Granola note. If no candidate is found, do not create a new candidate; record this and continue to step 4 with a flag.

Step 4: In parallel with step 3, call Airtable Create Records on the configured hiring committee scorecard base/table. Append one row with these fields: Candidate (name), Candidate Email, Role, Interviewer(s), Signal, Recommendation, Strengths (multiline), Concerns (multiline), Granola Note URL, Ashby Candidate URL (if found), and Interview Date. If the Ashby lookup failed, set an 'Ashby Match' field to 'Not found' so a recruiter can reconcile.

Configuration the user should be able to edit: the Granola interview folder id (optional), the company email domain(s) to treat as internal, the Airtable base id and table name, and the field-name mappings for the scorecard columns. Idempotency: only act on the first time a given Granola note id is seen; later edits should not retrigger writes unless the user opts in.

Use these specific operations: Granola Get Note, Ashby Search Candidates, Ashby Create Candidate Note, Airtable Create Records.

What does this prompt do?

  • Watches Granola for new meeting notes and recognizes which ones are interviews based on title patterns, the interview folder, or attendee email domains.
  • Pulls the candidate's name and email from the note, then finds the matching candidate in Ashby and pins a clean recap to their profile with signal, strengths, concerns, and recommendation.
  • Adds a row to your hiring committee scorecard in Airtable with the candidate, role, interviewer, signal rating, recommendation, and a link back to the original Granola note.
  • Skips non-interview meetings cleanly so customer calls and internal syncs never end up in your hiring records.

What do I need to use this?

  • A Granola account where your interviewers take notes.
  • An Ashby account with permission to read candidates and add candidate notes.
  • An Airtable base set up as your hiring committee scorecard with columns for candidate, role, interviewer, signal, recommendation, and a Granola link.

How can I customize it?

  • Change how the agent recognizes interviews, for example by Granola folder, meeting title prefix, or which email domains count as external candidates.
  • Adjust the recap structure pinned to Ashby, like adding culture fit, technical depth, or red flags as separate sections.
  • Swap or rename Airtable columns to match your existing scorecard, or point the workflow at a different base for a specific role or panel.

FAQs

How does the workflow know a Granola note is an interview and not a customer call?
The agent checks the note's title, the Granola folder it lives in, and whether attendee emails are from outside your company. You can tighten or loosen any of these rules when you set it up.
What happens if the candidate is not already in Ashby?
The agent will skip the Ashby step and still log the debrief to Airtable, with a flag noting that no matching candidate was found so a recruiter can reconcile it.
Can I run this only for certain roles or panels?
Yes. You can scope it to a specific Granola folder, a list of interviewer emails, or a particular hiring committee scorecard base in Airtable.
Do I need a separate Airtable base, or can I use an existing one?
Use an existing one. Just point the workflow at the base and table you already use for hiring committee review and map the columns it should populate.
Will it overwrite an interviewer's notes if they edit the Granola recap later?
No. The agent only acts when a new note is created. Later edits in Granola do not retrigger Ashby or Airtable updates unless you ask for that behavior.

Related templates

Weekly flight risk brief for trips your team already booked

Every Thursday, rank your team's upcoming flights by how likely they are to run late, and email the fixes while changes are still cheap.

AeroDataBox
Airtable
Gmail
Agentic Task
Turn today's Granola meeting notes into TickTick tasks

Every weekday at 6pm, the commitments you made in meetings become TickTick tasks with real due dates, no duplicates, and a tidy Slack recap.

Granola
TickTick
Slack Bot
Agentic Task
Rewrite approved calendar posts for each social network

When a content calendar row is approved, each network gets its own version of the copy, scheduled to the right connected social profiles.

Sendible
Airtable
Slack Bot
Agentic Task
Turn approved Airtable calendar rows into scheduled social posts

Mark a row Approved in your content calendar and the post is scheduled on every channel you picked, at the time you picked, with no copy pasting.

Airtable
bundle.social
Deterministic Code
Auto-screen new Airtable submissions before they go live

Every new community post, review or job listing gets scored against your policy, labeled by topic, and only the risky ones ever reach your team.

Mistral AI
Airtable
Slack Bot
Deterministic Code
Find the influencer posts worth putting ad budget behind

Every weekday at 8am, get five creator posts that are outperforming their own usual numbers, with a one line reason to back each one.

Later
Slack
Airtable
Agentic Task

Stop copy-pasting interview notes into Ashby and Airtable.

Connect Granola, Ashby, and Airtable once, and Geni files every interview recap and scorecard row for you.