Google calendar api 我可以使用管理员凭据为托管域中的用户创建Google日历吗

Google calendar api 我可以使用管理员凭据为托管域中的用户创建Google日历吗,google-calendar-api,Google Calendar Api,我使用管理员凭据与google api进行所有交互,并且我可以从所有托管域用户中检索\create\update\delete事件。但是,当我为托管域用户创建日历时,日历是在admins空间中创建的。在下面的示例中,GoogleUserName与GoogleAccount不匹配。 postUri看起来类似于: 谷歌的用户名是admin@hosteddomain.com. api创建了一个日历,但它位于管理员空间中 CalendarService service = new CalendarSer

我使用管理员凭据与google api进行所有交互,并且我可以从所有托管域用户中检索\create\update\delete事件。但是,当我为托管域用户创建日历时,日历是在admins空间中创建的。在下面的示例中,GoogleUserName与GoogleAccount不匹配。 postUri看起来类似于: 谷歌的用户名是admin@hosteddomain.com. api创建了一个日历,但它位于管理员空间中

CalendarService service = new CalendarService("Test");  
service.setUserCredentials(GoogleUserName, GooglePassword);  
CalendarEntry calendar = new CalendarEntry();  
calendar.TimeZone = "America/Chicago";  
calendar.Title.Text = Title;  
calendar.Summary.Text = Description;  
calendar.Color = Color;  
calendar.Selected = true;  
calendar.Hidden = false;  

Uri postUri = new Uri(String.Format("http://www.google.com/calendar/feeds/{0}/owncalendars/full", GoogleAccount));  
CalendarEntry createdCalendar = (CalendarEntry)service.Insert(postUri, calendar);  

文档确实指定使用用户凭据,但是文档在很多时候并不特定于托管域,因此我在尝试交互时总是尝试反复尝试。我可以使用管理员凭据对用户事件本身使用所有CRUD,这让我相信这是可能的。

我遇到了同样的问题。另外,我在feedurl上做了很多测试。我相信将“owncalendars”部分更改为“private”将使您的请求完美无瑕

所以url应该是“http://www.google.com/calendar/feeds/user@hosteddomain.com/private/full“


而此日历将在“”下创建新日历user@hosteddomain.com“默认日历不是我所期望的。我仍在寻找一种方法,为普通用户创建一个新的日历作为域管理员角色。

哦,对不起,让我澄清一下。将url更改为“”将类似于在下创建新事件user@hosteddomain.com". 这不是一个真正的新日历。