Use Granola to list meeting notes, read summaries, attendees, calendar details, and transcripts, and browse folders. Filter lists by date or folder and use pagination to retrieve more notes.
The integration also reads workspace audit events and manages webhook endpoints. Note-generated, edited, and shared events can start workflows that route action items or pass meeting context to later steps.
Integrate Granola into your workflow to retrieve meeting notes, summaries, attendees, and transcripts, review workspace audit events, and manage webhook endpoints. Granola can also trigger workflows when notes are generated, edited, or shared with you.
Lists meeting notes from Granola with optional date filters and pagination.
Inputs and outputsParameter Type Required Description apiKeystring Yes Granola API key createdBeforestring No Return notes created before this date (ISO 8601) createdAfterstring No Return notes created after this date (ISO 8601) updatedAfterstring No Return notes updated after this date (ISO 8601) folderIdstring No Return notes in this folder and its child folders (e.g., fol_4y6LduVdwSKC27) cursorstring No Pagination cursor from a previous response pageSizenumber No Number of notes per page (1-30, default 10)
Parameter Type Description notesarray List of meeting notes ↳ id string Note ID ↳ title string Note title ↳ ownerName string Note owner name ↳ ownerEmail string Note owner email ↳ createdAt string Creation timestamp ↳ updatedAt string Last update timestamp hasMoreboolean Whether more notes are available cursorstring Pagination cursor for the next page
Retrieves a specific meeting note from Granola by ID, including summary, attendees, calendar event details, and optionally the transcript.
Inputs and outputsParameter Type Required Description apiKeystring Yes Granola API key noteIdstring Yes The note ID (e.g., not_1d3tmYTlCICgjy) includeTranscriptstring No Whether to include the meeting transcript
Parameter Type Description idstring Note ID titlestring Note title ownerNamestring Note owner name ownerEmailstring Note owner email createdAtstring Creation timestamp updatedAtstring Last update timestamp webUrlstring URL to view the note in Granola summaryTextstring Plain text summary of the meeting summaryMarkdownstring Markdown-formatted summary of the meeting attendeesarray Meeting attendees ↳ name string Attendee name ↳ email string Attendee email foldersarray Folders the note belongs to ↳ id string Folder ID ↳ name string Folder name calendarEventTitlestring Calendar event title calendarOrganiserstring Calendar event organiser email calendarEventIdstring Calendar event ID scheduledStartTimestring Scheduled start time scheduledEndTimestring Scheduled end time inviteesarray Calendar event invitee emails transcriptarray Meeting transcript entries (only if requested) ↳ speaker string Speaker source (microphone or speaker) ↳ speakerAttribution string Who spoke relative to the note owner: "me" for the note-taker, "them" for other participants. Null when attribution is unknown. ↳ speakerLabel string Diarization label for the speaker (e.g., Speaker A) ↳ speakerName string Resolved name of the identified speaker, when available ↳ text string Transcript text ↳ startTime string Segment start time ↳ endTime string Segment end time
Retrieves a meeting transcript from Granola one page at a time, including when Get Note reports the transcript is too large to return inline.
Inputs and outputsParameter Type Required Description apiKeystring Yes Granola API key noteIdstring Yes The note ID (e.g., not_1d3tmYTlCICgjy) cursorstring No Pagination cursor from a previous response pageSizenumber No Number of transcript items per page (1-100, default 50)
Parameter Type Description transcriptarray Transcript items for this page ↳ speaker string Audio source of the speaker (microphone or speaker) ↳ speakerAttribution string Who spoke relative to the note owner: "me" for the note-taker, "them" for other participants. Null when attribution is unknown. ↳ speakerLabel string Anonymous diarization label for the speaker (e.g., Speaker A) ↳ speakerName string Resolved name of the identified speaker, when available ↳ text string Transcript text ↳ startTime string Segment start time ↳ endTime string Segment end time hasMoreboolean Whether another page of transcript items is available cursorstring Pagination cursor for the next page
Lists folders from Granola, sorted alphabetically, with pagination.
Inputs and outputsParameter Type Required Description apiKeystring Yes Granola API key cursorstring No Pagination cursor from a previous response pageSizenumber No Number of folders per page (1-30, default 10)
Parameter Type Description foldersarray List of folders ↳ id string Folder ID ↳ name string Folder name ↳ parentFolderId string Parent folder ID, or null for top-level folders hasMoreboolean Whether more folders are available cursorstring Pagination cursor for the next page
Lists workspace audit events from Granola, with optional action and date filters. Events are returned in collection order and retained for one year.
Inputs and outputsParameter Type Required Description apiKeystring Yes Granola API key actionstring No Return only events with this exact action, or actions beginning with it followed by a dot (e.g., "workspace" matches workspace.member_added). Lowercase. occurredAfterstring No Return events that occurred after this date (ISO 8601). Must fall within the one-year retention window. occurredBeforestring No Return events that occurred before this date (ISO 8601). Must fall within the one-year retention window. cursorstring No Pagination cursor from a previous response pageSizenumber No Number of audit events per page (1-30, default 10)
Parameter Type Description eventsarray List of audit events ↳ id string Audit event ID ↳ action string The recorded action (e.g., workspace.member_added). Treat as an open set — actions are added over time. ↳ occurredAt string When the action happened ↳ collectedAt string When Granola recorded the event. Events are returned in this order, so page on it rather than on occurredAt. ↳ actorType string Who performed the action: user, api_key, system, or anonymous ↳ actorId string User ID of the actor, when the actor is a resolvable user ↳ actorEmail string Email of the acting user, when the account still exists ↳ data json Action-specific details. Field names are the ones Granola records internally, so they are camelCase. ↳ ipAddress string IP address the request came from, when recorded ↳ userAgent string User agent of the client that made the request, when recorded ↳ clientVersion string Granola client version that made the request, when recorded hasMoreboolean Whether more audit events are available. A page can hold fewer than pageSize events and still not be the last one. cursorstring Pagination cursor for the next page
Registers an HTTPS URL in Granola to receive note event deliveries. The signing secret is returned only by this operation and cannot be retrieved later.
Inputs and outputsParameter Type Required Description apiKeystring Yes Granola API key urlstring Yes The publicly reachable HTTPS URL to deliver events to. Private network addresses are rejected. scopesstring Yes Which notes to receive events for, comma-separated: personal, public. With a workspace API key pass exactly "workspace". eventsstring No Event names to subscribe to, comma-separated: note.generated, note.edited, note.access_granted. Omit to subscribe to all events. folderIdsstring No Restrict delivery to notes in these folders or their subfolders, comma-separated folder IDs (max 100). Omit for every note matching scopes.
Parameter Type Description idstring Webhook endpoint ID urlstring The HTTPS URL deliveries are sent to urlRedactedboolean Whether the returned URL was reduced to its origin because the caller is not the endpoint creator eventsarray Event names this endpoint is subscribed to folderIdsarray Folder IDs delivery is restricted to, or an empty array when unrestricted scopesarray Which notes this endpoint receives events for createdByNamestring Name of the user who created the endpoint createdByEmailstring Email of the user who created the endpoint enabledboolean Whether deliveries are active createdAtstring Creation timestamp signingSecretstring Secret for verifying delivery signatures (Standard Webhooks HMAC-SHA256). Returned only here — store it securely.
Lists the Granola webhook endpoints the API key can manage. A personal key sees the endpoints it created; a workspace admin sees every endpoint in the workspace. Signing secrets are never included.
Inputs and outputsParameter Type Required Description apiKeystring Yes Granola API key
Parameter Type Description webhookEndpointsarray List of webhook endpoints ↳ id string Webhook endpoint ID ↳ url string The HTTPS URL deliveries are sent to, reduced to its origin when urlRedacted is true ↳ urlRedacted boolean Whether the URL was reduced to its origin because the caller is not the endpoint creator ↳ events array Event names this endpoint is subscribed to ↳ folderIds array Folder IDs delivery is restricted to, or an empty array when unrestricted ↳ scopes array Which notes this endpoint receives events for ↳ createdByName string Name of the user who created the endpoint ↳ createdByEmail string Email of the user who created the endpoint ↳ enabled boolean Whether deliveries are active ↳ createdAt string Creation timestamp
Updates a Granola webhook endpoint. Each supplied field replaces its current value; omitted fields are left unchanged. Use enabled to pause or resume deliveries.
Inputs and outputsParameter Type Required Description apiKeystring Yes Granola API key webhookEndpointIdstring Yes The webhook endpoint ID (e.g., whe_2mKr8fQxLp7Ta3) urlstring No New HTTPS URL to deliver events to. Omit to leave unchanged. scopesstring No Replacement scopes, comma-separated: personal, public. Omit to leave unchanged. A workspace-managed endpoint accepts only "workspace". eventsstring No Replacement event subscriptions, comma-separated: note.generated, note.edited, note.access_granted. Omit to leave unchanged. folderIdsstring No Replacement folder filter, comma-separated folder IDs (max 100). Pass "[]" to remove the filter. Omit to leave unchanged. enabledboolean No Pause (false) or resume (true) deliveries. Events that occur while paused are not delivered later. Omit to leave unchanged.
Parameter Type Description idstring Webhook endpoint ID urlstring The HTTPS URL deliveries are sent to urlRedactedboolean Whether the returned URL was reduced to its origin because the caller is not the endpoint creator eventsarray Event names this endpoint is subscribed to folderIdsarray Folder IDs delivery is restricted to, or an empty array when unrestricted scopesarray Which notes this endpoint receives events for createdByNamestring Name of the user who created the endpoint createdByEmailstring Email of the user who created the endpoint enabledboolean Whether deliveries are active createdAtstring Creation timestamp
Deletes a Granola webhook endpoint by ID, stopping its event deliveries immediately.
Inputs and outputsParameter Type Required Description apiKeystring Yes Granola API key webhookEndpointIdstring Yes The webhook endpoint ID (e.g., whe_2mKr8fQxLp7Ta3)
Parameter Type Description idstring ID of the deleted webhook endpoint deletedboolean Whether the endpoint was deleted
A trigger starts a workflow when a supported event occurs in this service.
Trigger workflow on any Granola note event
Parameter Type Required Description apiKeystring Yes Your Granola API key. Used to register the webhook endpoint on deploy and remove it on undeploy. scopesstring No Comma-separated scopes deciding which notes send events: personal, public. With a Workspace API key pass exactly "workspace". Defaults to "personal, public". folderIdsstring No Optional comma-separated folder IDs (max 100). Deliveries are restricted to notes in these folders or their subfolders. Leave blank for every note matching the scopes.
Parameter Type Description event_idstring Unique ID for the event. Retries of the same delivery reuse it. event_typestring Which event occurred: note.generated, note.edited, or note.access_granted. note_idstring ID of the note the event is about (e.g., not_1d3tmYTlCICgjy). Fetch it with the Get Note operation. occurred_atstring ISO 8601 timestamp of when the event occurred. changed_fieldsjson Note fields that changed. Present on note.edited events (currently always ["summary"]); null otherwise. payloadjson Full raw webhook body as delivered by Granola.
Trigger workflow when a Granola note is shared with you, directly or via a folder
Parameter Type Required Description apiKeystring Yes Your Granola API key. Used to register the webhook endpoint on deploy and remove it on undeploy. scopesstring No Comma-separated scopes deciding which notes send events: personal, public. With a Workspace API key pass exactly "workspace". Defaults to "personal, public". folderIdsstring No Optional comma-separated folder IDs (max 100). Deliveries are restricted to notes in these folders or their subfolders. Leave blank for every note matching the scopes.
Parameter Type Description event_idstring Unique ID for the event. Retries of the same delivery reuse it. event_typestring Which event occurred: note.generated, note.edited, or note.access_granted. note_idstring ID of the note the event is about (e.g., not_1d3tmYTlCICgjy). Fetch it with the Get Note operation. occurred_atstring ISO 8601 timestamp of when the event occurred. changed_fieldsjson Note fields that changed. Present on note.edited events (currently always ["summary"]); null otherwise. payloadjson Full raw webhook body as delivered by Granola.
Trigger workflow when a Granola note summary is edited or regenerated
Parameter Type Required Description apiKeystring Yes Your Granola API key. Used to register the webhook endpoint on deploy and remove it on undeploy. scopesstring No Comma-separated scopes deciding which notes send events: personal, public. With a Workspace API key pass exactly "workspace". Defaults to "personal, public". folderIdsstring No Optional comma-separated folder IDs (max 100). Deliveries are restricted to notes in these folders or their subfolders. Leave blank for every note matching the scopes.
Parameter Type Description event_idstring Unique ID for the event. Retries of the same delivery reuse it. event_typestring Which event occurred: note.generated, note.edited, or note.access_granted. note_idstring ID of the note the event is about (e.g., not_1d3tmYTlCICgjy). Fetch it with the Get Note operation. occurred_atstring ISO 8601 timestamp of when the event occurred. changed_fieldsjson Note fields that changed. Present on note.edited events (currently always ["summary"]); null otherwise. payloadjson Full raw webhook body as delivered by Granola.
Trigger workflow when the first AI summary for a Granola note is generated
Parameter Type Required Description apiKeystring Yes Your Granola API key. Used to register the webhook endpoint on deploy and remove it on undeploy. scopesstring No Comma-separated scopes deciding which notes send events: personal, public. With a Workspace API key pass exactly "workspace". Defaults to "personal, public". folderIdsstring No Optional comma-separated folder IDs (max 100). Deliveries are restricted to notes in these folders or their subfolders. Leave blank for every note matching the scopes.
Parameter Type Description event_idstring Unique ID for the event. Retries of the same delivery reuse it. event_typestring Which event occurred: note.generated, note.edited, or note.access_granted. note_idstring ID of the note the event is about (e.g., not_1d3tmYTlCICgjy). Fetch it with the Get Note operation. occurred_atstring ISO 8601 timestamp of when the event occurred. changed_fieldsjson Note fields that changed. Present on note.edited events (currently always ["summary"]); null otherwise. payloadjson Full raw webhook body as delivered by Granola.