创建 outlookTask(已弃用)
本文内容
命名空间:microsoft.graph
重要
Microsoft Graph版本下的 /beta API 可能会发生更改。 不支持在生产应用程序中使用这些 API。 若要确定 API 是否在 v1.0 中可用,请使用 版本 选择器。
在Outlook文件夹中创建一个任务。
POST 方法始终忽略请求正文中 startDateTime 和 dueDateTime 的时间部分,并假定时间始终为指定时区中的午夜。
权限
要调用此 API,需要以下权限之一。要了解详细信息,包括如何选择权限的信息,请参阅权限 。
权限类型
权限(从最低特权到最高特权)
委派(工作或学校帐户)
Tasks.ReadWrite
委派(个人 Microsoft 帐户)
Tasks.ReadWrite
应用程序
不支持。
HTTP 请求
POST /me/outlook/taskFolders/{id}/tasks
POST /me/outlook/taskGroups/{id}/taskFolders/{id}/tasks
POST /users/{id|userPrincipalName}/outlook/taskFolders/{id}/tasks
POST /users/{id|userPrincipalName}/outlook/taskGroups/{id}/taskFolders/{id}/tasks
名称
说明
Authorization
Bearer {token}。必需。
Prefer: outlook.timezone
指定响应中时间属性的时区,如果未指定此标头,则其时区为 UTC。 可选。
请求正文
在请求正文中,提供 outlookTask 对象的 JSON 表示形式。
响应
如果成功,此方法在 201 Created 响应正文中返回 响应代码和 outlookTask 对象。
示例
请求
下面是一个请求示例。
POST https://graph.microsoft.com/beta/me/outlook/taskfolders('AAMkADIyAAAhrbPXAAA=')/tasks
Content-type: application/json
{
"subject": "Shop for dinner",
"startDateTime": {
"dateTime": "2016-04-23T18:00:00",
"timeZone": "Pacific Standard Time"
},
"dueDateTime": {
"dateTime": "2016-04-25T13:00:00",
"timeZone": "Pacific Standard Time"
}
}
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var outlookTask = new OutlookTask
{
Subject = "Shop for dinner",
StartDateTime = new DateTimeTimeZone
{
DateTime = "2016-04-23T18:00:00",
TimeZone = "Pacific Standard Time"
},
DueDateTime = new DateTimeTimeZone
{
DateTime = "2016-04-25T13:00:00",
TimeZone = "Pacific Standard Time"
}
};
await graphClient.Me.Outlook.TaskFolders["{outlookTaskFolder-id}"].Tasks
.Request()
.AddAsync(outlookTask);
const options = {
authProvider,
};
const client = Client.init(options);
const outlookTask = {
subject: 'Shop for dinner',
startDateTime: {
dateTime: '2016-04-23T18:00:00',
timeZone: 'Pacific Standard Time'
},
dueDateTime: {
dateTime: '2016-04-25T13:00:00',
timeZone: 'Pacific Standard Time'
}
};
await client.api('/me/outlook/taskfolders('AAMkADIyAAAhrbPXAAA=')/tasks')
.version('beta')
.post(outlookTask);
MSHTTPClient *httpClient = [MSClientFactory createHTTPClientWithAuthenticationProvider:authenticationProvider];
NSString *MSGraphBaseURL = @"https://graph.microsoft.com/beta/";
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[MSGraphBaseURL stringByAppendingString:@"/me/outlook/taskfolders('AAMkADIyAAAhrbPXAAA=')/tasks"]]];
[urlRequest setHTTPMethod:@"POST"];
[urlRequest setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
MSGraphOutlookTask *outlookTask = [[MSGraphOutlookTask alloc] init];
[outlookTask setSubject:@"Shop for dinner"];
MSGraphDateTimeTimeZone *startDateTime = [[MSGraphDateTimeTimeZone alloc] init];
[startDateTime setDateTime: "2016-04-23T18:00:00"];
[startDateTime setTimeZone:@"Pacific Standard Time"];
[outlookTask setStartDateTime:startDateTime];
MSGraphDateTimeTimeZone *dueDateTime = [[MSGraphDateTimeTimeZone alloc] init];
[dueDateTime setDateTime: "2016-04-25T13:00:00"];
[dueDateTime setTimeZone:@"Pacific Standard Time"];
[outlookTask setDueDateTime:dueDateTime];
NSError *error;
NSData *outlookTaskData = [outlookTask getSerializedDataWithError:&error];
[urlRequest setHTTPBody:outlookTaskData];
MSURLSessionDataTask *meDataTask = [httpClient dataTaskWithRequest:urlRequest
completionHandler: ^(NSData *data, NSURLResponse *response, NSError *nserror) {
//Request Completed
}];
[meDataTask execute];
GraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
OutlookTask outlookTask = new OutlookTask();
outlookTask.subject = "Shop for dinner";
DateTimeTimeZone startDateTime = new DateTimeTimeZone();
startDateTime.dateTime = "2016-04-23T18:00:00";
startDateTime.timeZone = "Pacific Standard Time";
outlookTask.startDateTime = startDateTime;
DateTimeTimeZone dueDateTime = new DateTimeTimeZone();
dueDateTime.dateTime = "2016-04-25T13:00:00";
dueDateTime.timeZone = "Pacific Standard Time";
outlookTask.dueDateTime = dueDateTime;
graphClient.me().outlook().taskFolders("AAMkADIyAAAhrbPXAAA=").tasks()
.buildRequest()
.post(outlookTask);
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.NewOutlookTask()
subject := "Shop for dinner"
requestBody.SetSubject(&subject)
startDateTime := msgraphsdk.NewDateTimeTimeZone()
requestBody.SetStartDateTime(startDateTime)
dateTime := "2016-04-23T18:00:00"
startDateTime.SetDateTime(&dateTime)
timeZone := "Pacific Standard Time"
startDateTime.SetTimeZone(&timeZone)
dueDateTime := msgraphsdk.NewDateTimeTimeZone()
requestBody.SetDueDateTime(dueDateTime)
dateTime := "2016-04-25T13:00:00"
dueDateTime.SetDateTime(&dateTime)
timeZone := "Pacific Standard Time"
dueDateTime.SetTimeZone(&timeZone)
outlookTaskFolderId := "outlookTaskFolder-id"
result, err := graphClient.Me().Outlook().TaskFoldersById(&outlookTaskFolderId).Tasks().Post(requestBody)
Import-Module Microsoft.Graph.Users
$params = @{
Subject = "Shop for dinner"
StartDateTime = @{
DateTime = "2016-04-23T18:00:00"
TimeZone = "Pacific Standard Time"
}
DueDateTime = @{
DateTime = "2016-04-25T13:00:00"
TimeZone = "Pacific Standard Time"
}
}
# A UPN can also be used as -UserId.
New-MgUserOutlookTaskFolderTask -UserId $userId -OutlookTaskFolderId $outlookTaskFolderId -BodyParameter $params
在请求正文中,提供 outlookTask 对象的 JSON 表示形式。
响应
POST 方法忽略请求正文中的时间部分,并假定在 PST (指定时区中始终为午夜) 。 然后,默认情况下,POST 方法在响应中转换和显示所有与日期相关的属性(采用 UTC)。
注意:为了提高可读性,可能缩短了此处显示的响应对象。
HTTP/1.1 201 Created
Content-type: application/json
{
"createdDateTime": "2016-04-22T05:44:01.2012012Z",
"lastModifiedDateTime": "2016-04-22T05:44:02.9980882Z",
"changeKey": "1/KC9Vmu40G3DwB6Lgs7MAAAIOJMxw==",
"categories": [ ],
"assignedTo": "null",
"body": {
"contentType": "Text",
"content": ""
},
"completedDateTime": null,
"dueDateTime": {
"dateTime": "2016-04-25T07:00:00.0000000",
"timeZone": "UTC"
},
"hasAttachments":false,
"importance": "Normal",
"isReminderOn": false,
"owner": "Administrator",
"parentFolderId": "AQMkADA1MTkAAAAIBEgAAAA==",
"recurrence": null,
"reminderDateTime": null,
"sensitivity": "Normal",
"startDateTime": {
"dateTime": "2016-04-23T07:00:00.0000000",
"timeZone": "UTC"
},
"status": "NotStarted",
"subject": "Shop for dinner"
}