Proton Calendar
Proton Calendar connects to TimeTuna through a calendar share link. TimeTuna reads your busy times from the link so guests only see slots when you are free, and every new booking arrives in Proton as a standard calendar invite.
Why there is no “Connect Proton” button
Proton does not offer a public API or OAuth flow for third-party apps: your calendar is end-to-end encrypted, so there is no Google-style “grant access” screen for TimeTuna to send you to. The official way to let another service read your availability is the share link Proton generates for a calendar. That link is exactly what TimeTuna uses.
In practice the integration has two halves:
- Availability (Proton → TimeTuna): you paste your Proton share link into TimeTuna as an iCal feed. Events on that calendar block your booking slots.
- New bookings (TimeTuna → Proton): every confirmed booking is emailed to you with a
.icscalendar invite attached. Open it in Proton Mail and add it to your calendar with one click.
Step 1: get the share link from Proton
- Open calendar.proton.me and sign in.
- In the sidebar, hover over the calendar you want TimeTuna to check and open its options menu, then choose Share → Share with anyone (in Proton's settings this appears as “Share calendar via link”).
- Pick what the link exposes. Limited view (see only free/busy) is enough: TimeTuna only needs to know when you are busy, never event titles or details. Full view also works.
- Click Create link, then Copy link. It looks like
https://calendar.proton.me/api/calendar/v1/.../calendar.ics.
Step 2: add the link to TimeTuna
- Click Connect Proton Calendar. The button appears wherever TimeTuna offers calendar connections: the onboarding checklist on your dashboard, your profile settings, and any booking page without a connected calendar. On a booking page that already has calendars, use Add iCal URL (Proton, Apple, Fastmail...) on the Calendars tab instead.
- Paste the share link and click Add calendar. TimeTuna validates the feed immediately and tells you if the link is wrong.
- The calendar now appears in your list. Like OAuth calendars, iCal feeds are stored on your account, so you add the link once and can enable it on every booking page you own.
Step 3: get bookings into Proton Calendar
Because the share link is read-only, TimeTuna cannot create events inside Proton directly. Instead, every confirmed booking sends you a host confirmation email with a .ics invite attached. In Proton Mail, the invite is recognized automatically: open the email and click Add to calendar. Reschedules and cancellations send updated invites the same way, so accepting them keeps Proton in sync.
Once the event is on your Proton calendar, it flows back to TimeTuna through the share link and blocks the slot like any other event.
Using Proton Meet for your meetings
If you host calls on Proton Meet, TimeTuna supports it as a meeting type. On the booking page editor, open the Booking tab, toggle Proton Meet on under Meeting type, and paste your Proton Meet room URL. The link is included in the confirmation emails and the .ics invite for every booking on that page.
Unlike Zoom or Google Meet, Proton Meet has no API for creating rooms, so the same room URL is reused for every booking on the page rather than a unique link per meeting.
What the integration does not do
- It does not write events into Proton Calendar. New bookings arrive as email invites you accept (see step 3).
- It does not read event titles, guests, or descriptions if you share a free/busy link. TimeTuna only extracts start and end times to compute availability.
- It does not need your Proton password or any sign-in. The share link is the only thing TimeTuna stores.
Disconnecting
You can disconnect from either side:
- From TimeTuna: remove the iCal calendar from the Calendars tab or from Settings → Connected providers.
- From Proton: delete the share link in Proton Calendar's share settings. The URL stops working immediately and TimeTuna can no longer read the feed. Remove the dead link from TimeTuna too, so availability checks do not rely on a feed that no longer updates.
Troubleshooting
“Invalid iCalendar feed” when adding the link
Make sure you copied the share link Proton generated (it contains /api/calendar/v1/ and ends in .ics), not the address bar URL of the Proton Calendar web app. Only the generated link serves calendar data.
My Proton events are not blocking slots
- Check the event is on the same Proton calendar you shared. Each share link covers one calendar.
- Check the calendar is enabled for availability on that booking page's Calendars tab.
- Wait a few minutes: Proton can take up to 15 minutes to publish new events to the link.
See Wrong availability for general availability debugging.
Bookings are not showing up in Proton
Check the host confirmation email in Proton Mail and click Add to calendar on the attached invite. If the email is missing entirely, see Email not received.
Still stuck?
Open with your TimeTuna account email, the booking page URL, and the first part of your Proton share link (never share the full link publicly, anyone with it can read your calendar). We reply within one business day.