You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

调用Graph API /me/calendar/getSchedule获取会议室日程返回空数组问题

问题:调用Microsoft Graph API的/me/calendar/getSchedule获取会议室日程为空

我在Graph Explorer中调用Microsoft Graph API的/me/calendar/getSchedule端点,获取指定会议室room@mail.com的日程。明明该时间段内存在包含此会议室的事件,但返回的scheduleInformation中scheduleItems数组为空。测试查询创建该事件的用户日程时,结果正常。请问可能的原因是什么?

请求体

{
    "schedules": [
        "room@mail.com"
    ],
    "startTime": {
        "dateTime": "2022-12-11T09:00:00",
        "timeZone": "UTC"
    },
    "endTime": {
        "dateTime": "2022-12-13T23:59:00",
        "timeZone": "UTC"
    }
}

响应体

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#Collection(microsoft.graph.scheduleInformation)",
    "value": [
        {
            "scheduleId": "room@mail.com",
            "availabilityView": "000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
            "scheduleItems": []
        }
    ]
}

创建的事件示例

{
    "@odata.etag": "W/\"1z8A//yOl0a9+ObgH9y4KQAAAfmk/Q==\"",
    "id": "some id",
    "subject": "Let's go for lunch",
    "bodyPreview": "Does mid month work for you?",
    "body": {
        "contentType": "html",
        "content": "<html><head><meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\"></head><body>Does mid month work for you?</body></html>"
    },
    "start": {
        "dateTime": "2022-12-13T12:00:00.0000000",
        "timeZone": "UTC"
    },
    "end": {
        "dateTime": "2022-12-14T14:00:00.0000000",
        "timeZone": "UTC"
    },
    "location": {
        "displayName": "room@mail.com",
        "locationType": "default",
        "uniqueId": "room@mail.com",
        "uniqueIdType": "private"
    },
    "attendees": [],
    "organizer": {
        "emailAddress": {
            "name": "admin",
            "address": "admin@mail.com"
        }
    }
}

可能的原因

  • 事件未将会议室作为参会者添加:从提供的事件示例可见,attendees数组为空,仅在location字段填写了会议室邮箱。getSchedule接口需要会议室被添加为参会者(优先是必需参会者),才能识别其日程占用状态,仅设置位置不会被统计到会议室的日程中。
  • 权限不足:当前调用接口的账号没有读取该会议室日历的权限。需确保账号已授权Calendars.Read或Calendars.Read.Shared权限,且该会议室日历已共享给该账号,或者账号具备全局管理员/日历管理员权限。
  • 会议室邮箱配置异常:该会议室邮箱可能未被正确配置为Exchange资源邮箱,或者其日历权限设置中限制了查询账号的访问。需在Exchange管理中心检查该会议室的日历共享权限,确保允许查询账号读取其日程。
  • 时间范围覆盖不全:请求的结束时间是2022-12-13T23:59:00(UTC),而事件结束时间是2022-12-14T14:00:00(UTC),不过事件开始时间在请求范围内,这一点大概率不是主因,但仍需确认时间转换是否存在误差。

内容的提问来源于stack exchange,提问作者Ewelin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 23:35:26