Html – Creating “Subscribe to Calendar” link to work on Google Calendar and Apple Calendar

calendargoogle-calendar-apihtmlicalendaricloud

I would like to create a button that will allow my users to subscribe to a Calendar link. But, I want it to work for Google Calendars and also for the native Apple/iOS Calendars. Google Calendars subscription links don't seem to work reliably on iOS devices (at least in my first few tests). Google Calendar will sync to iCloud calendars, but they update REALLY slowly (every 24 hours or so). That's not terrible, but it's not great either.

Anyone have a good solution here? Maybe finding a way to sync a Google Calendar with an iCloud calendar and then offering two different links?

Best Solution

I don't believe there is a way to have a one-link solution. Here are the two links that allow you to subscribe to a Google Calendar using either Apple Calendar or Google Calendar.

Subscribing to a Google calendar with Apple Calendar. This following link will ask if you want to open your calendar application on your Mac, then allow you to subscribe (including choosing how often you want the calendar to refresh). For iOS devices, you need to press and hold the link for some reason, then a dialog box asks if you want to open the calendar application (I was using an older iPad, so YMMV).

"webcal://calendar.google.com/calendar/ical/{YOUR_GCAL_ID}/public/basic.ics"

Subscribing to a Google calendar with Google Calendar. This link will take you to your Google calendar and ask if you want to subscribe to it. I also found that with the iOS device I was using, I needed to press and hold the link and "Open in New Tab" for it to work for some reason.

"https://calendar.google.com/calendar/render?cid=https://calendar.google.com/calendar/ical/{YOUR_GCAL_ID}/public/basic.ics"

Of course, the calendar needs to be set to public for these to work (sharing within a company would likely allow for the second link to work with the correct settings).

Related Question