发送共享邀请
发送 DriveItem 的共享邀请。 共享邀请向收件人提供权限,并选择性地向其发送带共享链接的电子邮件。
权限
调用此 API 需要以下权限之一。 若要了解详细信息,包括如何选择权限的信息,请参阅权限。
权限类型 | 权限(从最低特权到最高特权) |
---|---|
委派(工作或学校帐户) | Files.ReadWrite、Files.ReadWrite.All、Sites.ReadWrite.All |
委派(个人 Microsoft 帐户) | 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,则向收件人发送共享链接。 否则,直接授予权限,而不发送通知。 |
角色 | 集合(字符串) | 指定要授予共享邀请收件人的角色。 |
示例
本示例向电子邮件地址为“”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" ]
}
]
}
备注
错误响应
请阅读 错误响应 主题,了解有关如何返回错误的详细信息。