Skip to content

Calendar Integration Setup

TaskNotes supports Google Calendar and Microsoft Calendar integration via OAuth 2.0.

Setup (Your Own OAuth Credentials)

To connect your calendars, you'll need to create OAuth applications with Google and/or Microsoft.

Google Calendar

Video by @antoneheyward

  1. Create OAuth App
  2. Go to Google Cloud Console
  3. Create a new project or select existing
  4. Enable Google Calendar API
  5. Create OAuth 2.0 credentials (Desktop application type)

  6. Configure Credentials

  7. Copy Client ID and Client Secret
  8. In TaskNotes Settings → Integrations → Calendar:
    • Paste your Client ID in the Google Calendar card
    • Paste your Client Secret in the Google Calendar card
  9. Click "Connect Google Calendar"

Microsoft Calendar

  1. Create Azure App Registration
  2. Go to Azure Portal
  3. Navigate to "App registrations" → "New registration"
  4. Name: Choose any name (e.g., "TaskNotes")
  5. Supported account types: Select appropriate option for your use case
  6. Redirect URI: Leave blank for now (we'll add it via manifest)

  7. Configure Redirect URI via Manifest

  8. In your app registration, go to "Manifest"
  9. Find the replyUrlsWithType array and add: json { "url": "http://127.0.0.1", "type": "Web" }
  10. Save the manifest
  11. Note: Azure Portal UI may not allow http://127.0.0.1 directly, but the manifest editor does. Azure ignores the port for loopback addresses, so any port will work.

  12. Configure API Permissions

  13. In your app registration, go to "API permissions"
  14. Add permissions:
    • Calendars.Read
    • Calendars.ReadWrite
    • offline_access
  15. Grant admin consent if required

  16. Get Credentials

  17. In "Overview", copy the Application (client) ID
  18. In "Certificates & secrets", create a new client secret
  19. Copy the secret value immediately (shown only once)

  20. Configure TaskNotes

  21. In TaskNotes Settings → Integrations → Calendar:
    • Paste your Client ID in the Microsoft Calendar card
    • Paste your Client Secret in the Microsoft Calendar card
  22. Click "Connect Microsoft Calendar"

Security Notes

  • Your OAuth credentials are stored locally in Obsidian's data folder
  • Access tokens are stored securely and refreshed automatically
  • Calendar data is synced directly between Obsidian and your calendar provider
  • Disconnect at any time to revoke access

Troubleshooting

"Failed to connect"

  • Verify Client ID and Secret are correct
  • For Microsoft: Check redirect URI http://127.0.0.1 is configured via the manifest editor (not localhost)
  • For Google: Check redirect URI http://localhost:8080 is configured
  • Ensure required API permissions are granted

"Failed to fetch events"

  • Disconnect and reconnect to refresh tokens
  • Check calendar permissions in Google/Microsoft settings

Connection lost after Obsidian restart

  • Tokens are persisted - you should not need to reconnect
  • If you do, there may be a file permissions issue with your vault