Отправка приглашения к совместному использованию
Отправляет приглашение к совместному использованию ресурса DriveItem. Приглашение к совместному использованию предоставляет получателям разрешения и при необходимости отправляет им сообщение электронной почты с ссылкой совместного доступа.
Разрешения
Для вызова этого API требуется одно из следующих разрешений. Дополнительные сведения, включая сведения о том, как выбрать разрешения, см. в статье Разрешения.
Тип разрешения | Разрешения (в порядке повышения привилегий) |
---|---|
Делегированные (рабочая или учебная учетная запись) | Files.ReadWrite, Files.ReadWrite.All, Sites.ReadWrite.All |
Делегированные (личная учетная запись Майкрософт) | Files.ReadWrite, Files.ReadWrite.All |
Для приложений | Files.ReadWrite.All, Sites.ReadWrite.All |
HTTP-запрос
POST /drives/{drive-id}/items/{item-id}/invite
POST /groups/{group-id}/drive/items/{item-id}/invite
POST /me/drive/items/{item-id}/invite
POST /sites/{siteId}/drive/items/{itemId}/invite
POST /users/{userId}/drive/items/{itemId}/invite
Текст запроса
В тексте запроса предоставьте JSON-объект с указанными ниже параметрами.
{
"requireSignIn": false,
"sendInvitation": false,
"roles": [ "read | write"],
"recipients": [
{ "@odata.type": "microsoft.graph.driveRecipient" },
{ "@odata.type": "microsoft.graph.driveRecipient" }
],
"message": "string"
}
Параметр | Тип | Описание |
---|---|---|
recipients | Collection(DriveRecipient) | Коллекция получателей, которые будут получать доступ и приглашение к совместному использованию. |
message | String | Сообщение с обычным форматированным текстом, включенное в приглашение на доступ. Максимальная длина составляет 2000 символов. |
requireSignIn | Boolean | Указывает, должен ли получатель приглашения выполнить вход, чтобы просмотреть элемент, к которому предоставлен общий доступ. |
sendInvitation | Boolean | Если указано значение true, получателю отправляется ссылка совместного доступа. В противном случае разрешение предоставляется напрямую без отправки уведомления. |
roles | Collection(String) | Указывает роли, которые необходимо предоставить получателям приглашения к совместному использованию. |
Пример
В этом примере пользователю отправляется приглашение на общий доступ с адресом электронной почты "ryan@contoso.com" с сообщением о совместном использовании файла. Приглашение предоставляет пользователю Ryan доступ для чтения и записи к файлу.
HTTP-запрос
При успешном выполнении этот метод возвращает код ответа 200 OK
и объект коллекции permission в теле ответа.
POST /me/drive/items/{item-id}/invite
Content-type: application/json
{
"recipients": [
{
"email": "ryan@contoso.com"
}
],
"message": "Here's the file that we're collaborating on.",
"requireSignIn": true,
"sendInvitation": true,
"roles": [ "write" ]
}
Ответ
Ниже приведен пример отклика.
HTTP/1.1 200 OK
Content-type: application/json
{
"value": [
{
"grantedTo": {
"user": {
"displayName": "Ryan Gregg",
"id": "42F177F1-22C0-4BE3-900D-4507125C5C20"
}
},
"id": "CCFC7CA3-7A19-4D57-8CEF-149DB9DDFA62",
"invitation": {
"email": "ryan@contoso.com",
"signInRequired": true
},
"roles": [ "write" ]
}
]
}
Примечания
- Дискам, у которых параметр driveType имеет значение
personal
(OneDrive персональный), не удастся создать или изменить разрешения в корневой папке ресурса DriveItem. - Список доступных ролей см. в таблице Перечисление ролей.
Ответы с ошибками
Дополнительные сведения о том, как возвращаются ошибки, см. в статье Отклики ошибок.