2017-04-03 98 views
1

有沒有辦法在Google Apps腳本中檢索已刪除的日曆活動?我試圖跟蹤我們取消會議的速度。我可以在日曆的垃圾箱(文件夾?)中看到已刪除的事件,但無法使用CalendarApp的getEvents API檢索它們。檢索已刪除的日曆事件?

我已經嘗試使用查詢:

myCalndar.getEvents(some_days_past, now, {search: "in:Trash"}); 

以及搜索字符串和可選屬性的許多變化,但沒有任何結果。

任何想法?

爲了記錄在案,我已經打算通過這裏記錄的API: https://developers.google.com/apps-script/reference/calendar/calendar-app

回答

3

您可以使用"Calendar API v3"。通過啓用高級Google服務的日曆API和Google API控制檯,可以在Google Apps腳本中使用「日曆API v3」。

如何使用它如下。

  1. 在腳本編輯器,選擇資源>高級谷歌服務

  2. 在出現的對話框中,單擊對日曆API V3

  3. /OFF開關在該對話框的底部,請點擊Google API控制檯的鏈接。

  4. 在控制檯中,單擊進入過濾器框,然後鍵入API「Calendar」名稱的一部分,然後單擊該名稱即可看到它。

  5. 在下一個屏幕上,單擊啓用API。

  6. 關閉Developers Console並返回到腳本編輯器。在對話框中單擊確定。您啓用的高級服務現在可用於自動完成。

詳細信息是https://developers.google.com/apps-script/guides/services/advanced

用於檢索已刪除事件列表的腳本如下。如果JSON響應。

腳本:

var response = Calendar.Events.list(
    "CalendarId", { 
    showDeleted: true, 
    fields: "items(id,summary)" 
    } 
); 

響應:

{ 
    "items": [ 
    { 
     "id": "####", 
     "summary": "test1" 
    }, 
    { 
     "id": "####", 
     "summary": "test2" 
    } 
    ] 
} 

在此示例中,ID和彙總設置爲字段。如果你想要其他領域,請檢查https://developers.google.com/google-apps/calendar/v3/reference/events

如果我誤解了你的問題,我很抱歉。

+0

夥計,這真棒。是否有一個顯示事件被刪除的屬性? – Gopherkhan

+1

@Gopherkhan對不起。它已被遺忘的狀態。當''fields''從字段:「items(id,summary)」''改變爲''fields:「items(id,status,summary)」''''時,你可以看到被刪除的狀態爲' 'status''。如果''status''是''cancelled'',則表明它已被刪除。 – Tanaike

+0

這是完美的。謝啦! – Gopherkhan