命名空间:microsoft.graph
从用户的默认日历或用户的其他日历中获取由时间范围定义的日历视图中事件的发生次数、异常和单个实例。
此 API 可用于以下国家级云部署。
全局服务 |
美国政府 L4 |
美国政府 L5 (DOD) |
由世纪互联运营的中国 |
✅ |
✅ |
✅ |
✅ |
权限
为此 API 选择标记为最低特权的权限。
只有在应用需要它时,才使用更高的特权权限。 有关委派权限和应用程序权限的详细信息,请参阅权限类型。 要了解有关这些权限的详细信息,请参阅 权限参考。
权限类型 |
最低特权权限 |
更高特权权限 |
委派(工作或学校帐户) |
Calendars.ReadBasic |
Calendars.Read、Calendars.ReadWrite |
委派(个人 Microsoft 帐户) |
Calendars.ReadBasic |
Calendars.Read、Calendars.ReadWrite |
应用程序 |
Calendars.ReadBasic |
Calendars.Read、Calendars.ReadWrite |
HTTP 请求
用户的默认 calendar。
GET /me/calendar/calendarView?startDateTime={start_datetime}&endDateTime={end_datetime}
GET /users/{id | userPrincipalName}/calendarView?startDateTime={start_datetime}&endDateTime={end_datetime}
默认 calendarGroup 中的用户 calendar。
GET /me/calendars/{id}/calendarView?startDateTime={start_datetime}&endDateTime={end_datetime}
GET /users/{id | userPrincipalName}/calendars/{id}/calendarView?startDateTime={start_datetime}&endDateTime={end_datetime}
指定 calendarGroup 中用户的 日历。
GET /me/calendarGroups/{id}/calendars/{id}/calendarView?startDateTime={start_datetime}&endDateTime={end_datetime}
GET /users/{id | userPrincipalName}/calendarGroups/{id}/calendars/{id}/calendarView?startDateTime={start_datetime}&endDateTime={end_datetime}
查询参数
在请求 URL 中,提供以下必要查询参数的值。
参数 |
类型 |
说明 |
startDateTime |
String |
时间范围的开始日期和时间以 ISO 8601 格式表示。 例如,“2019-11-08T19:00:00-08:00”。 |
endDateTime |
String |
时间范围的结束日期和时间以 ISO 8601 格式表示。 例如,“2019-11-08T20:00:00-08:00”。 |
和 endDateTime
的值startDateTime
使用值中指定的时区偏移量进行解释,并且不受标头值Prefer: outlook.timezone
(如果存在)的影响。 如果值中未包含时区偏移量,则将其解释为 UTC。
此方法还支持一些 OData 查询参数 来帮助自定义响应。
注意
事件的 createdDateTime 和 lastModifiedDateTime 属性不支持 $select
。 若要获取它们的值,只需在 calendarView 上进行查询,而不应用 $select
。
名称 |
类型 |
说明 |
Authorization |
string |
持有者 {token}。 必填。 详细了解 身份验证和授权。 |
Prefer: outlook.timezone |
string |
此选项可用于指定响应中开始时间和结束时间的时区。 如果未指定,返回的这些时间值采用 UTC 时区。 可选。 |
Prefer: outlook.body-content-type |
string |
要返回的 body 属性的格式。 可取值为“text”或“html”。 如果指定此 Preference-Applied 头,返回 Prefer 头作为证明。 如果未指定此头,采用 HTML 格式返回 body 属性。 可选。 |
请求正文
请勿提供此方法的请求正文。
响应
如果成功,此方法在响应正文中返回 200 OK
响应代码和 event 对象集合。
示例
请求
以下示例显示了一个请求。
GET https://graph.microsoft.com/v1.0/me/calendarView?startDateTime=2020-01-01T19:00:00-08:00&endDateTime=2020-01-02T19:00:00-08:00
// Code snippets are only available for the latest version. Current version is 5.x
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Me.CalendarView.GetAsync((requestConfiguration) =>
{
requestConfiguration.QueryParameters.StartDateTime = "2020-01-01T19:00:00-08:00";
requestConfiguration.QueryParameters.EndDateTime = "2020-01-02T19:00:00-08:00";
});
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
mgc users calendar-view list --user-id {user-id} --start-date-time "2020-01-01T19:00:00-08:00" --end-date-time "2020-01-02T19:00:00-08:00"
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
// Code snippets are only available for the latest major version. Current major version is $v1.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
graphusers "github.com/microsoftgraph/msgraph-sdk-go/users"
//other-imports
)
requestStartDateTime := "2020-01-01T19:00:00-08:00"
requestEndDateTime := "2020-01-02T19:00:00-08:00"
requestParameters := &graphusers.ItemCalendarViewRequestBuilderGetQueryParameters{
StartDateTime: &requestStartDateTime,
EndDateTime: &requestEndDateTime,
}
configuration := &graphusers.ItemCalendarViewRequestBuilderGetRequestConfiguration{
QueryParameters: requestParameters,
}
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
calendarView, err := graphClient.Me().CalendarView().Get(context.Background(), configuration)
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
EventCollectionResponse result = graphClient.me().calendarView().get(requestConfiguration -> {
requestConfiguration.queryParameters.startDateTime = "2020-01-01T19:00:00-08:00";
requestConfiguration.queryParameters.endDateTime = "2020-01-02T19:00:00-08:00";
});
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
const options = {
authProvider,
};
const client = Client.init(options);
let calendarView = await client.api('/me/calendarView?startDateTime=2020-01-01T19:00:00-08:00&endDateTime=2020-01-02T19:00:00-08:00')
.get();
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
<?php
use Microsoft\Graph\GraphServiceClient;
use Microsoft\Graph\Generated\Users\Item\CalendarView\CalendarViewRequestBuilderGetRequestConfiguration;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestConfiguration = new CalendarViewRequestBuilderGetRequestConfiguration();
$queryParameters = CalendarViewRequestBuilderGetRequestConfiguration::createQueryParameters();
$queryParameters->startDateTime = "2020-01-01T19:00:00-08:00";
$queryParameters->endDateTime = "2020-01-02T19:00:00-08:00";
$requestConfiguration->queryParameters = $queryParameters;
$result = $graphServiceClient->me()->calendarView()->get($requestConfiguration)->wait();
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.users.item.calendar_view.calendar_view_request_builder import CalendarViewRequestBuilder
from kiota_abstractions.base_request_configuration import RequestConfiguration
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
query_params = CalendarViewRequestBuilder.CalendarViewRequestBuilderGetQueryParameters(
start_date_time = "2020-01-01T19:00:00-08:00",
end_date_time = "2020-01-02T19:00:00-08:00",
)
request_configuration = RequestConfiguration(
query_parameters = query_params,
)
result = await graph_client.me.calendar_view.get(request_configuration = request_configuration)
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
响应
以下示例显示了相应的响应。 注意:为了提高可读性,可能缩短了此处显示的响应对象。
HTTP/1.1 200 OK
Content-type: application/json
{
"value": [
{
"originalStartTimeZone": "Pacific Standard Time",
"originalEndTimeZone": "Pacific Standard Time",
"responseStatus": {
"response": "accepted",
"time": "2016-10-19T10:37:00Z"
},
"iCalUId": "040000008200E00074C5B7101A82E00800000000D3D70B8A6A17D70100000000000000001000000074665914A06C3F49BB4B7D7EEE4304DA",
"reminderMinutesBeforeStart": 15,
"isReminderOn": true
}
]
}