Google-calendar – How to allow Google Calendar users to subscribe to the website’s calendar (event data) and have GCal show updates automatically

google-calendar

I have a website that stores and displays data about events. I'd like to make that data available to Google Calendar users and allow them to subscribe to my site's event data. The event data can and does change occasionally, so having user's import an iCal file to their own Google Calendar is not ideal.

  1. Is this possible?

  2. Can I keep all of the data on my site, via a URL, and allow Google Calendar users to subscribe?

  3. Do I need to put my event data "into Google" somehow, and then allow Google Calendar users to subscribe to that data? If so, I'll need to keep event data on my site and the data "in google" in sync, correct?

Best Answer

If you publish an iCal/xCal file to your website then your users can subscribe to this using Google Calendar. In the Calendar UI its under Settings->Browse Interesting Calendars->Add by URL.

This causes Google to internally create a new Google calendar and arrange for it be populated with new events from your feed regularly (at least once every 24 hours). To add new events you simply upload/publish a new version of your calendar file.

If its a bit much to ask your users to follow this method, then you can publish a "subscribe to calendar" link or button on your website. The link should be:

http://www.google.com/calendar/render?cid=http://location-of-calendar-file

Or for Apps:

http://www.google.com/calendar/hosted/somedomain.com/render?cid=http://location-of-calendar-file

Google used to have this information in a support document but I can't find it anymore :( I can verify that this method works well - we publish personalized feeds for 150K users right now.