Voicenotes Integration
Sync voice notes from voicenotes.com into the workspace.
Setup
- •Get access token from: https://voicenotes.com/app?obsidian=true#settings
- •Set environment variable:
export VOICENOTES_TOKEN="your-token-here"
Quick Start
bash
# Verify connection ./scripts/get-user.sh | jq . # Fetch recent notes (JSON) ./scripts/fetch-notes.sh | jq '.data[:3]' # Sync all notes to markdown files ./scripts/sync-to-markdown.sh --output-dir ./voicenotes
Scripts
fetch-notes.sh
Fetch voice notes as JSON.
bash
./scripts/fetch-notes.sh # All notes ./scripts/fetch-notes.sh --limit 10 # Last 10 notes ./scripts/fetch-notes.sh --since 2024-01-01 # Notes since date
get-user.sh
Verify token and get user info.
bash
./scripts/get-user.sh | jq '{name, email}'
sync-to-markdown.sh
Sync notes to markdown files with frontmatter.
bash
./scripts/sync-to-markdown.sh --output-dir ./voicenotes
Output format:
markdown
--- voicenotes_id: abc123 created: 2024-01-15T10:30:00Z tags: [idea, project] --- # Note Title ## Transcript The transcribed content... ## Summary AI-generated summary...
API Reference
Base URL: https://api.voicenotes.com/api/integrations/obsidian-sync
Headers required:
- •
Authorization: Bearer {token} - •
X-API-KEY: {token}
Endpoints:
- •
GET /user/info- User details - •
GET /recordings- List voice notes (paginated) - •
GET /recordings/{id}/signed-url- Audio download URL
Data Structure
Each voice note contains:
- •
recording_id- Unique identifier - •
title- Note title - •
transcript- Full transcript text - •
creations[]- AI summaries, action items, etc. - •
tags[]- User tags - •
created_at/updated_at- Timestamps - •
duration- Recording length in seconds
Tips
- •Notes are paginated; check
links.nextfor more pages - •Use
--sinceto fetch only new notes since last sync - •AI creations include summaries, todos, and custom prompts
- •Rate limited to ~60 requests/minute