命名空间:microsoft.graph
创建 offerShiftRequest 的实例。
此 API 可用于以下国家级云部署。
全局服务 |
美国政府 L4 |
美国政府 L5 (DOD) |
由世纪互联运营的中国 |
✅ |
❌ |
❌ |
❌ |
权限
为此 API 选择标记为最低特权的权限。
只有在应用需要它时,才使用更高的特权权限。 有关委派权限和应用程序权限的详细信息,请参阅权限类型。 要了解有关这些权限的详细信息,请参阅 权限参考。
权限类型 |
最低特权权限 |
更高特权权限 |
委派(工作或学校帐户) |
Schedule.ReadWrite.All |
Group.ReadWrite.All |
委派(个人 Microsoft 帐户) |
不支持。 |
不支持。 |
应用程序 |
Schedule.ReadWrite.All |
不可用。 |
HTTP 请求
POST /teams/{teamId}/schedule/offerShiftRequests
名称 |
说明 |
Authorization |
持有者 {token}。 必填。 详细了解 身份验证和授权。 |
Content-type |
application/json. 必需。 |
MS-APP-ACTS-AS (已弃用) |
GUID) (用户 ID。 仅当授权令牌是应用程序令牌时才需要;否则为可选。 标头 MS-APP-ACTS-AS 已弃用,不再需要应用程序令牌。 |
请求正文
在此方法的请求正文中提供新的 offerShiftRequest 对象。
响应
如果成功,此方法在 200 OK
响应正文中返回响应代码和 offerShiftRequest 对象。
示例
请求
以下示例显示了一个请求。
POST https://graph.microsoft.com/v1.0/teams/788b75d2-a911-48c0-a5e2-dc98480457e3/schedule/offerShiftRequests
Authorization: Bearer {token}
Content-type: application/json
{
"senderShiftId": "SHFT_f7e484ed-fdd6-421c-92d9-0bc9e62e2c29",
"senderMessage": "Having a family emergency, could you take this shift for me?",
"recipientUserId": "fe278b61-21ac-4872-8b41-1962bbb98e3c"
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
var requestBody = new OfferShiftRequest
{
SenderShiftId = "SHFT_f7e484ed-fdd6-421c-92d9-0bc9e62e2c29",
SenderMessage = "Having a family emergency, could you take this shift for me?",
RecipientUserId = "fe278b61-21ac-4872-8b41-1962bbb98e3c",
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Teams["{team-id}"].Schedule.OfferShiftRequests.PostAsync(requestBody, (requestConfiguration) =>
{
requestConfiguration.Headers.Add("Authorization", "Bearer {token}");
});
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
mgc teams schedule offer-shift-requests create --team-id {team-id} --body '{\
"senderShiftId": "SHFT_f7e484ed-fdd6-421c-92d9-0bc9e62e2c29",\
"senderMessage": "Having a family emergency, could you take this shift for me?",\
"recipientUserId": "fe278b61-21ac-4872-8b41-1962bbb98e3c"\
}\
'
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
// Code snippets are only available for the latest major version. Current major version is $v1.*
// Dependencies
import (
"context"
abstractions "github.com/microsoft/kiota-abstractions-go"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-sdk-go/models"
graphteams "github.com/microsoftgraph/msgraph-sdk-go/teams"
//other-imports
)
headers := abstractions.NewRequestHeaders()
headers.Add("Authorization", "Bearer {token}")
configuration := &graphteams.ItemScheduleOfferShiftRequestsRequestBuilderPostRequestConfiguration{
Headers: headers,
}
requestBody := graphmodels.NewOfferShiftRequest()
senderShiftId := "SHFT_f7e484ed-fdd6-421c-92d9-0bc9e62e2c29"
requestBody.SetSenderShiftId(&senderShiftId)
senderMessage := "Having a family emergency, could you take this shift for me?"
requestBody.SetSenderMessage(&senderMessage)
recipientUserId := "fe278b61-21ac-4872-8b41-1962bbb98e3c"
requestBody.SetRecipientUserId(&recipientUserId)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
offerShiftRequests, err := graphClient.Teams().ByTeamId("team-id").Schedule().OfferShiftRequests().Post(context.Background(), requestBody, configuration)
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
OfferShiftRequest offerShiftRequest = new OfferShiftRequest();
offerShiftRequest.setSenderShiftId("SHFT_f7e484ed-fdd6-421c-92d9-0bc9e62e2c29");
offerShiftRequest.setSenderMessage("Having a family emergency, could you take this shift for me?");
offerShiftRequest.setRecipientUserId("fe278b61-21ac-4872-8b41-1962bbb98e3c");
OfferShiftRequest result = graphClient.teams().byTeamId("{team-id}").schedule().offerShiftRequests().post(offerShiftRequest, requestConfiguration -> {
requestConfiguration.headers.add("Authorization", "Bearer {token}");
});
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
const options = {
authProvider,
};
const client = Client.init(options);
const offerShiftRequest = {
senderShiftId: 'SHFT_f7e484ed-fdd6-421c-92d9-0bc9e62e2c29',
senderMessage: 'Having a family emergency, could you take this shift for me?',
recipientUserId: 'fe278b61-21ac-4872-8b41-1962bbb98e3c'
};
await client.api('/teams/788b75d2-a911-48c0-a5e2-dc98480457e3/schedule/offerShiftRequests')
.post(offerShiftRequest);
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
<?php
use Microsoft\Graph\GraphServiceClient;
use Microsoft\Graph\Generated\Teams\Item\Schedule\OfferShiftRequests\OfferShiftRequestsRequestBuilderPostRequestConfiguration;
use Microsoft\Graph\Generated\Models\OfferShiftRequest;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new OfferShiftRequest();
$requestBody->setSenderShiftId('SHFT_f7e484ed-fdd6-421c-92d9-0bc9e62e2c29');
$requestBody->setSenderMessage('Having a family emergency, could you take this shift for me?');
$requestBody->setRecipientUserId('fe278b61-21ac-4872-8b41-1962bbb98e3c');
$requestConfiguration = new OfferShiftRequestsRequestBuilderPostRequestConfiguration();
$headers = [
'Authorization' => 'Bearer {token}',
];
$requestConfiguration->headers = $headers;
$result = $graphServiceClient->teams()->byTeamId('team-id')->schedule()->offerShiftRequests()->post($requestBody, $requestConfiguration)->wait();
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
Import-Module Microsoft.Graph.Teams
$params = @{
senderShiftId = "SHFT_f7e484ed-fdd6-421c-92d9-0bc9e62e2c29"
senderMessage = "Having a family emergency, could you take this shift for me?"
recipientUserId = "fe278b61-21ac-4872-8b41-1962bbb98e3c"
}
New-MgTeamScheduleOfferShiftRequest -TeamId $teamId -BodyParameter $params
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.teams.item.schedule.offer_shift_requests.offer_shift_requests_request_builder import OfferShiftRequestsRequestBuilder
from kiota_abstractions.base_request_configuration import RequestConfiguration
from msgraph.generated.models.offer_shift_request import OfferShiftRequest
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = OfferShiftRequest(
sender_shift_id = "SHFT_f7e484ed-fdd6-421c-92d9-0bc9e62e2c29",
sender_message = "Having a family emergency, could you take this shift for me?",
recipient_user_id = "fe278b61-21ac-4872-8b41-1962bbb98e3c",
)
request_configuration = RequestConfiguration()
request_configuration.headers.add("Authorization", "Bearer {token}")
result = await graph_client.teams.by_team_id('team-id').schedule.offer_shift_requests.post(request_body, request_configuration = request_configuration)
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
响应
以下示例显示了相应的响应。
注意:为了提高可读性,可能缩短了此处显示的响应对象。
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.etag": "\"4000ee23-0000-0700-0000-5d1415f60000\"",
"id": "SREQ_0b87dd20-d5ed-4764-9c3e-cfc8516def09",
"createdDateTime": "2019-09-27T01:01:04.566Z",
"lastModifiedDateTime": "2019-09-28T01:03:48.874Z",
"assignedTo": "recipient",
"state": "pending",
"senderDateTime": "2019-09-27T01:01:04.566",
"senderMessage": "Having a family emergency, could you take this shift for me?",
"senderUserId": "a4704dd0-3f4c-4f2c-9bb5-8cc575703f30",
"managerActionDateTime": null,
"managerActionMessage": null,
"managerUserId": null,
"recipientActionDateTime": null,
"recipientActionMessage": null,
"senderShiftId": "SHFT_f7e484ed-fdd6-421c-92d9-0bc9e62e2c29",
"recipientUserId": "fe278b61-21ac-4872-8b41-1962bbb98e3c",
"lastModifiedBy": {
"application": null,
"device": null,
"conversation": null,
"user": {
"id": "fe278b61-21ac-4872-8b41-1962bbb98e3c",
"displayName": "Employee 1"
}
}
}