我正在为我的一个项目使用 Google Calendar API。
我想从我的应用程序将事件导入 Google 日历,并将它们锁定,以便最终用户无法在 Google 日历中修改它们。
到目前为止,该 API 运行良好,但是,当我尝试导入事件时,我收到此错误:
日历的所有者必须是导入事件的组织者或参与者。
即使我将组织者设置为日历的所有者之一。
这是来自 API 控制台的 POST 示例:
POST https://www.googleapis.com/calendar/v3/calendars/_my_calendar_id%40group.calendar.google.com/events/import?key={YOUR_API_KEY}
Content-Type: application/json
Authorization: Bearer ya29.AHES6ZTdiWGywGp2LLSUlc8BV-dVIwJET5azIkNekjNgRjHRWc_Ojg
X-JavaScript-User-Agent: Google APIs Explorer
{
"end": {
"dateTime": "2013-01-02T16:22:00+00:00"
},
"iCalUID": "123456789",
"start": {
"dateTime": "2013-01-02T14:22:00+00:00"
},
"organizer": {
"email": "_this_is_the_owner@gmail.com",
"displayName": "Owner Guy"
},
"attendees": [
{
"email": "_this_is_the_owner@gmail.com"
}
]
}
重现步骤:
- 创建一个日历并获取 ID 或使用“主要”作为您的主日历。
- 与某人分享,或让某人成为所有者。
- 转到 Calendar API Reference/events/import -> “试试看!”,并在提交 POST 之前使用 oAuth 进行身份验证。
- 填写必填字段(开始、结束、icaluid 等)
- 尝试将组织者或任何与会者设置为日历的所有者之一。