我无法弄清楚如何向所有域用户CalendarList
添加日历。
到目前为止,我可以成功创建Calendar
并创建域范围ACL
,但我不知道如何将日历插入域用户列表。
使用ruby客户端API,它看起来像这样:
client = Google::APIClient.new
service = client.discovered_api("calendar", "v3")
calendar_response = JSON.parse(client.execute(:api_method => service.calendars.insert,
:body => JSON.dump({"summary" => "events"}),
:headers => { "Content-Type" => "application/json" }).response.body)
rule = {
"scope" => {
"type" => "domain",
"value" => domain,
},
"role" => "writer"
}
acl_result = client.execute(:api_method => service.acl.insert,
:parameters => { "calendarId" => calendar_response["id"] },
:body => JSON.dump(rule),
:headers => { "Content-Type" => "application/json" })
一切正常。它会创建日历,并与域中的所有人共享。我无法弄清楚的是如何将其明确添加到用户的日历列表中。
要添加到单个authed用户的日历列表,将如下所示:
list_params = {
"calendarId" => calendar_response["id"],
"hidden" => false,
"selected" => true
}
calendar_list_result = client.execute(:api_method => service.calendar_list.insert,
:body => JSON.dump(list_params),
:headers => { "Content-Type" => "application/json" })
问题:
CalendarList
项?答案 0 :(得分:1)
如果我通过域管理员身份验证,是否可以为所有用户创建CalendarList项目? 不,你不能:(。
如果是,可以使用单个命令完成,还是需要与每个用户ID进行通话? 您必须为每个用户ID拨打电话。
如果我需要为每个用户执行命令,我该如何获取用户ID? 要检索用户ID,首先必须使用Admin SDK API https://developers.google.com/admin-sdk/directory/v1/guides/manage-users#get_all_domain_users列出域中的所有用户,然后为日历中的每个INSERT命令更改用户ID,以获取电子邮件地址。