Skip to main content
Rowboat integrates with Granola to automatically sync your meeting notes and make them searchable by your AI assistant.

Overview

The Granola integration:
  • Syncs meeting notes from your Granola workspace
  • Converts ProseMirror format to markdown
  • Tracks document updates automatically
  • Preserves frontmatter metadata
  • Runs every 5 minutes when enabled
Granola is an AI-powered meeting notes app that runs on macOS. It automatically takes notes during meetings.

How It Works

Authentication

Rowboat reads your Granola access token from the local config file:
Granola must be installed and authenticated on your Mac for this integration to work.

Sync Configuration

API Integration

Rowboat uses Granola’s v2 API:

Document Format

ProseMirror to Markdown Conversion

Granola stores notes in ProseMirror format. Rowboat converts them to markdown:

Output Format

Each document is saved with frontmatter:

State Tracking

Rowboat tracks which documents have been synced:
Only documents that are new or have been updated since the last sync are processed.

Rate Limiting

Rowboat implements rate limiting protection:

API Delays

Pagination

Rowboat fetches documents in batches:

Enabling the Integration

The Granola integration must be explicitly enabled:

Activity Logging

Rowboat logs all Granola sync activity:

Trigger Manual Sync

Troubleshooting

No Access Token Found

Make sure Granola is installed and you’re logged in. The config file should exist at: ~/Library/Application Support/Granola/supabase.json

Rate Limit Errors

If you see rate limit errors:
  • Rowboat will automatically retry with exponential backoff
  • Reduce MAX_BATCH_SIZE if the problem persists
  • Increase SYNC_INTERVAL_MS to sync less frequently

Missing Documents

Rowboat syncs all documents in your Granola workspace. If documents are missing, check that they’re not deleted in Granola.

ProseMirror Conversion Issues

If notes don’t convert correctly:
  • Rowboat tries last_viewed_panel.content first (most recent)
  • Falls back to notes field (older format)
  • Falls back to notes_markdown or notes_plain if available

Files Synced

Configuration File

Location: ~/.rowboat/config/granola.json

Privacy & Security

  • Local Token: Uses token from Granola’s local config
  • Local Storage: All notes stored locally on your machine
  • No Cloud Sync: Notes never sent to external servers
  • Read-Only: Only reads notes, never modifies Granola data