我可以通过谷歌API v3访问其他谷歌用户的日历(Can I access other Google

2019-10-19 07:28发布

我想建立一个管理代表我的用户在谷歌日历约会的时候还没有登录他们的应用程序。

该应用程序将是一个预约服务,订阅用户(我们的服务提供商)将书带出他们是不可用的时间,而客户将看到服务提供商的谷歌日历的忙/闲表示

该应用程序将需要创建,删除和阅读约会的能力。

我已经在谷歌开发者控制台,并有工作弹出的谷歌权限屏幕,然后重定向至成功地创建了一个新的约会一个URL编码。

我可以访问其他的日历,但只有当他们在那个时候登录到谷歌服务。

$client = new \Google_Client(); 
$client->addScope('https://www.googleapis.com/auth/calendar');
$service = new \Google_Service_Calendar($client);

$authUrl = $client->createAuthUrl();

如果用户管理自己的日历此工作好。 不过,我想代表他们管理约会。 这将包括其他党派进入约会到日历 - 即当未登录的日历。

我需要的是应用程序,以获得持久的访问我的用户的日历中的持久的权威?

有谁知道这可能吗? 思考,我怎么能解决这个问题,将不胜感激。

Answer 1:

的OAuth 2.0服务帐户是用于访问用户帐户的适当的方法:

https://developers.google.com/accounts/docs/OAuth2ServiceAccount

您需要授予服务帐户客户端ID获得必要的日历API范围:

https://developers.google.com/drive/web/delegation#delegate_domain-wide_authority_to_your_service_account

那么你的服务帐户可以模拟用户,并代表他们执行日历操作:

https://developers.google.com/drive/web/delegation#instantiate_a_drive_service_object

这些文档描述了谷歌驱动器,但日历的过程是相同的。



文章来源: Can I access other Google User's Calendars through the Google API v3