使用Google服务帐户获取Google日历和活动

时间:2014-05-28 10:23:27

标签: c# asp.net google-api google-calendar-api google-apps

我希望使用Google服务帐户获取用户的Google日历列表和活动。

我正在尝试使用CalendarService,但我无法找到解决方案。

我的代码:

         string path = KeyPath;
        X509Certificate2 certificate = new X509Certificate2(
            path,
            "notasecret", X509KeyStorageFlags.Exportable);
        var provider = new AssertionFlowClient(GoogleAuthenticationServer.Description, certificate)
        {
            ServiceAccountId = "XXXXX@developer.gserviceaccount.com",
            Scope = "http://www.google.com/calendar/feeds/default/private/full"


        };
        var auth = new OAuth2Authenticator<AssertionFlowClient>(provider, AssertionFlowClient.GetState);


        var cService = new CalendarService(auth);

它显示错误Calendarservice有一些无效的参数。我不知道如何处理这项服务。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

解决方案是与服务帐户共享现有日历

<paste-your-account-here>@developer.gserviceaccount.com

(您可以在Google Developers Console的凭据标签下找到相关帐户,它被称为'EMAIL ADDRESS')