我停留在如何獲得其他用戶的Outlook日曆的訪問?
在這種情況下,您可以考慮使用應用程序權限。
在Azure的AD:
- 登記在Azure的AD Web應用程序。
- 添加「在所有郵箱讀寫日曆」權限
![enter image description here](https://i.stack.imgur.com/vogPK.png)
- 生成應用祕密密鑰
在您的應用程序,調用Office 365的圖形API - 創建通過使用應用程序令牌的事件。
http://graph.microsoft.io/en-us/docs/api-reference/v1.0/api/user_post_events
var tmgr = new ApplicationTokenManagement();
var token = tmgr.AcquireToken(Settings.ResourceUrlOfGraph);
var api = new Graph.GraphCalendarAPI(token);
JObject body = new JObject
{
{"subject", "Create from Office 365 API"},
{"start", new JObject { { "DateTime", "2016-03-09T00:00:00"}, { "TimeZone", "China Standard Time" } } },
{"end", new JObject { { "DateTime", "2016-03-10T00:00:00"}, { "TimeZone", "China Standard Time" } } },
{"isAllDay", true }
};
var task = api.CreateEventAsync(body, "[email protected]");
task.Wait();
你可以找到完整的示例here。
它不需要每個用戶登錄?我打算在Windows服務應用程序中使用它,我可以訪問所有用戶的日曆,而無需登錄。我將使用管理員帳戶訪問所有...有沒有辦法做到這一點? – cdp
順便說一句我沒有看到一個選項來讀取和寫入所有郵箱日曆 – cdp