← All articles
Developer API, MCP and webhooks·

Set up Getwello with Obsidian

Append Getwello events into your daily note via Local REST API plugin.

Obsidian doesn't accept webhooks natively. The Local REST API community plugin exposes endpoints for appending to notes. Pair with a relay to format markdown.

What you need

  • Obsidian installed with a vault.
  • The Local REST API community plugin (free).
  • A relay reachable from the internet.
  • A Getwello Coordinator account with active subscription.

Step 1: Install Local REST API in Obsidian

  1. Settings → Community plugins → Browse.
  2. Search “Local REST API”. Install + Enable.
  3. Open the plugin settings. Note the access token. Optionally enable HTTPS.

Step 2: Expose Obsidian to the internet (carefully)

The plugin listens locally. Use a Cloudflare Tunnel or Tailscale to reach it from outside. Bind to a long random path and require the auth token.

Step 3: Build the relay

Worker that receives our event, formats markdown, calls Local REST API to append to today's note:

export default {
  async fetch(req, env) {
    const evt = await req.json();
    const today = new Date(evt.occurred_at).toISOString().slice(0, 10);
    const md = evt.event === 'check_in.created'
      ? `- ✓ Check-in ${evt.occurred_at.slice(11, 16)} · mood ${evt.data.mood ?? 'n/a'}\n`
      : `- ⚠ ${evt.event}\n`;
    await fetch(`${env.OBSIDIAN_URL}/vault/daily/${today}.md`, {
      method: 'POST',
      headers: {
        'Authorization': `Bearer ${env.OBSIDIAN_TOKEN}`,
        'Content-Type': 'text/markdown'
      },
      body: md
    });
    return new Response('ok');
  }
};

Step 4: Create the Getwello webhook subscription

Settings → Developer API → Webhooks. URL is your relay. Tick all four events.

Test

Click Test. Open today's daily note in Obsidian. The entry should be appended within a second or two.

Troubleshooting

Daily note doesn't exist: the POST creates it if missing in v3+ of the plugin. Otherwise use the Daily Notes core plugin to ensure today's note exists.

Entries appear out of order: append is by arrival time, not event time. If you want time-sorted entries, fetch the note, sort, write back.

More on developer api, mcp and webhooks

Didn't answer your question?

Email hello@getwello.co.uk