Пространство имен: microsoft.graph
Важно!
API версии /beta
в Microsoft Graph могут быть изменены. Использование этих API в производственных приложениях не поддерживается. Чтобы определить, доступен ли API в версии 1.0, используйте селектор версий.
Создайте экземпляр offerShiftRequest.
Этот API доступен в следующих национальных облачных развертываниях.
Глобальная служба |
Правительство США L4 |
Правительство США L5 (DOD) |
Китай управляется 21Vianet |
✅ |
❌ |
❌ |
❌ |
Разрешения
Выберите разрешение или разрешения, помеченные как наименее привилегированные для этого API. Используйте более привилегированное разрешение или разрешения только в том случае, если это требуется приложению. Дополнительные сведения о делегированных разрешениях и разрешениях приложений см. в разделе Типы разрешений. Дополнительные сведения об этих разрешениях см. в справочнике по разрешениям.
Тип разрешения |
Разрешения с наименьшими привилегиями |
Более высокие привилегированные разрешения |
Делегированные (рабочая или учебная учетная запись) |
Schedule.ReadWrite.All |
Group.ReadWrite.All |
Делегированные (личная учетная запись Майкрософт) |
Не поддерживается. |
Не поддерживается. |
Приложение |
Schedule.ReadWrite.All |
Недоступно. |
HTTP-запрос
POST /teams/{teamId}/schedule/offerShiftRequests
Имя |
Описание |
Авторизация |
Bearer {token}. Обязательно. Дополнительные сведения о проверке подлинности и авторизации. |
MS-APP-ACTS-AS (не рекомендуется) |
Идентификатор пользователя (GUID). Требуется только в том случае, если маркер авторизации является маркером приложения; В противном случае — необязательно. Заголовок MS-APP-ACTS-AS не рекомендуется использовать и больше не требуется с маркерами приложения. |
Текст запроса
Укажите новый объект offershiftrequest в тексте запроса для этого метода.
Отклик
В случае успешного выполнения этот метод возвращает код отклика 200 OK
и объект offerShiftRequest в тексте отклика.
Примеры
Запрос
Ниже показан пример запроса.
POST https://graph.microsoft.com/beta/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.Beta.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}");
});
mgc-beta 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"\
}\
'
// Code snippets are only available for the latest major version. Current major version is $v0.*
// Dependencies
import (
"context"
abstractions "github.com/microsoft/kiota-abstractions-go"
msgraphsdk "github.com/microsoftgraph/msgraph-beta-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-beta-sdk-go/models"
graphteams "github.com/microsoftgraph/msgraph-beta-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)
// 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}");
});
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')
.version('beta')
.post(offerShiftRequest);
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\Teams\Item\Schedule\OfferShiftRequests\OfferShiftRequestsRequestBuilderPostRequestConfiguration;
use Microsoft\Graph\Beta\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();
Import-Module Microsoft.Graph.Beta.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-MgBetaTeamScheduleOfferShiftRequest -TeamId $teamId -BodyParameter $params
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph_beta import GraphServiceClient
from msgraph_beta.generated.teams.item.schedule.offer_shift_requests.offer_shift_requests_request_builder import OfferShiftRequestsRequestBuilder
from kiota_abstractions.base_request_configuration import RequestConfiguration
from msgraph_beta.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)
Отклик
Ниже показан пример отклика.
Примечание. Объект отклика, показанный здесь, может быть сокращен для удобочитаемости.
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"
}
}
}