I'm building an app with a calendar element to it. I'm considering building this piece of my app with the Google Calendar APIs. The APIs are everything I could dream of for interacting between calendars owned by different Google accounts. However, the same flexibility isn't as apparent between calendars owned by the same Google account.
I want to be able to use only 1 Google account to hold all of the app's calendars. Within this account, I want to create 1 calendar per user of my site. I'd like for my users to be able to create personal events and to also be able to share them with each other.
Is there a way to share events across multiple Google calendars that are owned by the same Google account?
Undesirable alternatives:
Create and manage duplicate entries. I would prefer to not have to use a hack like creating duplicate entries -- that's just asking for problems when the owner changes attributes of the event. Plus, I'd need additional logic to keep the non-owner from being able to edit the event since they'd technically be the owner for their copy.
Another alternative is to have everyone have an actual Google account. There are at least 2 problems with this:
If they use their own account, I couldn't directly manage their calendar unless they give me their login cred.s. This is a terrible practice on so many levels.
Millions of people use Google Calendar to track their events. The Calendar API lets you integrate your app with Google Calendar, creating new ways for you to engage your users.
You want to use #2.
Use the Google OpenID to authenticate that they own a particular google account. Use the OpenAuth to get permission to add and remove events.
Even better - Just build calendar eventing in your app and expose an iCal feed. That way people can consume those calendars in any number of other applications.
Your "undesireable alternative #2" isn't so undesireable, since Google supports the OpenID/OpenAuth protocol. This means that a user can not only login to your service using the Google credentials, she can also grant you permissions to access her Google calendar.
In no case would you have to create Google Accounts behind the scenes. For more information check the openid pages of google
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With