Let's say I have a Google account [email protected]
with project project-1
(configured as Google App Engine application in Google Developer Console) and a service account with e-mail address [email protected]
that belong to it.
I know how to use this service account to create a calendar and manipulate its entries programmatically: I use the Google APIs Client Library (Java version, with service account´s credentials) to invoke Google Calendar API inside my Google App Engine application and it does just that. However any such created calendars seem to be distinctly owned by the service account, not by my englobing Google account. I conclude this from the following observations:
- When I view my Google account's calendar in the Google Calendar UI, none of the programmatically created calendars show up under
My calendars
. - When I try to access such a calendar by issuing
Other calendars
|Add a friend´s calendar
and with the service account´s email-address, I can send off the request, but it never gets answered (presumably because the service account's e-mail address isn't a "real" e-mail address). - When I'm creating calendars programmatically, I don't set
CalendarListEntry#hidden
, so the defaultfalse
should apply.
So my question is this: How can I access calendars and calendar entries that were created programmatically with Google Calendar API (and a Java client in my case) in the normal Google Calendar Web UI. E.g., can the service account share its calendars with its owning Google account, or can I directly manipulate the Google account's calendars with its service account credentials in the UI.
I realize there are some previous questions on the same topic, but they haven't helped to solve the mystery for me so far.