如何通过谷歌日历API“添加访客”活动?

时间:2012-08-03 09:33:48

标签: google-calendar-api

你可以告诉我如何通过谷歌日历api分享单个活动吗?

这就是我想邀请其他用户以编程方式查看活动而不共享整个日历。模仿“添加来宾”UI操作 The google calendar Add guests

3 个答案:

答案 0 :(得分:2)

您可以使用API​​将人员添加到attendees集合中:

https://developers.google.com/google-apps/calendar/v3/reference/events/update

答案 1 :(得分:2)

正如克劳迪奥所说,您需要为此使用Google Calendar Advanced API。

您将要使用patch,因为您不想替换日历邀请中的所有其他数据。但是,即使在patch的情况下,由于与会者都住在一个数组中,因此如果您尝试传递如下补丁:

{
  attendees: [ { email: "new@example.com"} ]
}

...它将替换所有旧的受邀者(即,它将删除您在致电patch之前在邀请中的任何人)。要解决此问题,您必须首先获取当前的被邀请者,向阵列添加一个新人员,然后发送patch

您可以在this answer中看到详细的示例,该示例还说明了如何使用Google Apps脚本来确保在将用户添加到日历事件中时向用户发送电子邮件(请参见addGuestAndSendEmail()该帖子中的方法)。

答案 2 :(得分:0)

请参阅以下请求。

方法:开机自检

端点:https://www.googleapis.com/calendar/v3/calendars/primary/events?sendUpdates=all

在这里,sendUpdates表示当您添加任何访客时,他将获得根据方案使用的邀请邮件。

输入Json:     {             “ kind”:“ calendar#event”,             “ etag”:“ etag”,             “ status”:“已确认”,             “ summary”:“ JayKara”,             “ description”:“ eqwbdjhwhhwhhwrhjehrhejhfj”,             “ location”:“ America”,             “创建者”:{                 “电子邮件”:“ @ mail.com”,                 “自我”:真实             },             “组织者”:{                 “ email”:“ @ mail.com”,                 “自我”:真实             },             “开始”:{                 “ date”:“ 2019-12-23”             },             “结束”: {                 “ date”:“ 2019-12-24”             },             “ originalStartTime”:{                 “ date”:“ 2019-12-24”             },             “可见性”:“公开”,             “参与者”:[                 {                     “ email”:“ ****@mail.com” //这是客人                 }             ]         }。

此后,无需使用任何补丁方法,每次更新事件您的来宾都会收到邀请

干杯!