确定对 Google 日历 API 中事件的私人更改

Determining private changes to an event in the Google Calendar API

在 Google 日历中,未经 "modify event" 许可的与会者可以对他们的活动副本进行私下更改。这些更改仅反映在他们的日历中。

在下面的示例中,创作者邀请我参加活动,我将开始时间更改为 45 分钟后:

这反映在 Google 日历 API 响应中。

创建者的事件响应:

{
  "kind": "calendar#event",
  "etag": "\"123\"",
  "id": "abc",
  "status": "confirmed",
  "htmlLink": "https://www.google.com/calendar/event?eid=abc",
  "created": "2020-06-14T11:49:54.000Z",
  "updated": "2020-06-14T12:43:41.896Z",
  "summary": "Non Creator changes start_time and saves",
  "creator": {
    "email": "david@example.com",
    "self": true
  },
  "organizer": {
    "email": "david@example.com",
    "self": true
  },
  "start": {
    "dateTime": "2020-06-14T11:00:00+01:00"
  },
  "end": {
    "dateTime": "2020-06-14T12:00:00+01:00"
  },
  "iCalUID": "abc123@google.com",
  "sequence": 0,
  "attendees": [
    {
      "email": "david@example.com",
      "organizer": true,
      "self": true,
      "responseStatus": "accepted"
    },
    {
      "email": "ryan@example.com",
      "responseStatus": "accepted"
    }
  ],
  "hangoutLink": "https://meet.google.com/abc",
  "conferenceData": {
      ...
  },
  "reminders": {
    "useDefault": true
  }
}

与会者的事件响应:

{
  "kind": "calendar#event",
  "etag": "\"123\"",
  "id": "abc",
  "status": "confirmed",
  "htmlLink": "https://www.google.com/calendar/event?eid=abc",
  "created": "2020-06-14T11:49:54.000Z",
  "updated": "2020-06-15T12:19:25.966Z",
  "summary": "Non Creator changes start_time and saves",
  "creator": {
    "email": "david@example.com"
  },
  "organizer": {
    "email": "david@example.com"
  },
  "start": {
    "dateTime": "2020-06-14T11:45:00+01:00"
  },
  "end": {
    "dateTime": "2020-06-14T12:30:00+01:00"
  },
  "iCalUID": "abc123@google.com",
  "sequence": 0,
  "attendees": [
    {
      "email": "david@example.com",
      "organizer": true,
      "responseStatus": "accepted"
    },
    {
      "email": "ryan@example.com",
      "self": true,
      "responseStatus": "accepted"
    }
  ],
  "hangoutLink": "https://meet.google.com/abc",
  "conferenceData": {
    ...
  },
  "reminders": {
    "useDefault": true
  }
}

现在出现的问题是根据与会者的请求确定活动的规范版本。在上面的响应中,没有标志表明它包含私人更改。

是否有这种方法可以确定对 Google 日历 API 中事件的私人更改?

遗憾的是目前还没有

但是 Google 的 Public 问题跟踪器上有一个 feature request

受此问题影响的用户应该"star"它以提高知名度。向 Google 表明这是用户需要的功能很重要。