I have a link on a website to let users add an ICS feed to their google Calendar. Using this code:
http://www.google.com/calendar/render?cid=https://<etc>
It worked for 3-4 years but not anymore. The message Google sends me is:
This email address isn't associated with an active Google Calendar account: https://<etc>
If I enter the ics feed manually things work ok: the feed is parsed as should. No errors.
Any idea where to look to fix this?
I too have this problem. Did you solve it?
My tests show that it works when using URLs with http, like:
www.google.com/calendar/render?cid=http%3A%2%2Fwww.example.com%2FCalendar%2FPublic%2520Events.ics
But not with https, like:
www.google.com/calendar/render?cid=https%3A%2%2Fwww.example.com%2FCalendar%2FPublic%2520Events.ics
My workaround for this is to use http in the link, but redirect it to https in the web server. Not very elegant, but it works. The GET won't be encrypted, but at least the answer is.
EDIT: Actually, it can be a huge security risk sending the GET over http instead of https if you don't do any more authentication than via query string parameters, which can be hard for calendar feeds. Anyone who can sniff the GET can send the same request over https themselves.
Right now it works, even with https
.
https://www.google.com/calendar/render?cid=https%3A%2F%2Fwww.example.com%2FCalendar%2FPublic%20Events.ics
They got more strict.
Now you have to use
http://www.google.com/calendar/render?cid=http%3A%2F%2Fwww.example.com%2FCalendar%2FPublic%2520Events.ics
note the encoding.
Use webcal
protocol for the calendar address:
https://www.google.com/calendar/render?cid=webcal%3A%2F%2Fwww.example.com%2FCalendar%2FPublic%20Events.ics
Ok, so for me, none of the other answers on this page worked. But I figured it out with bits and pieces of others:
Link to my calendar's ics:
https://example.com/calendar?id=a304036ea5a474ee5d80a100d79c231c
The right way to link it to Google Calendar:
https://calendar.google.com/calendar/r?cid=webcal%3A%2F%2Fexample.com%2Fcalendar%3Fid%3Da304036ea5a474ee5d80a100d79c231c
The key here is adding it using the webcal protocol instead of the https protocol.
Hope this helps anyone.