Google Calendar

Google Calendar caches remote calendar URLs for some time - not helpful if you want to verify a change.

This can be circumvented by altering the URL while requesting the same content. Adding a query parameter (or attempting to add another one) will cause Google to treat the calendar as a new feed.

Here's an example with the UK holidays calendar feed from CalendarLabs:

Original Calendar URL:

webcal://www.calendarlabs.com/templates/ical/UK-Holidays.ics

Updated Calendar URL:

webcal://www.calendarlabs.com/templates/ical/UK-Holidays.ics?noCache

And another example with an updated query string from Facebook:

Original Calendar URL:

webcal://www.facebook.com/ical/u.php?uid=123456789&key=ABCdefGHIjkl_m123

Updated Calendar URL:

webcal://www.facebook.com/ical/u.php?uid=123456789&key=ABCdefGHIjkl_m123&noCache

Any string can be used instead of noCache, as Google Calendar just remembers the full URL. So next time you want to force an update, use noCache-2, noCache-3 etc.

If the calendar's URL already has query parameters, or adding another parameter breaks the feed, the URL can be shortened with bit.ly (or any URL shortener). This is less useful, as you're relying on the query shortening service always being available.