Enviar um convite de compartilhamento
Envia um convite de compartilhamento para um DriveItem. Um convite de compartilhamento fornece permissões para os destinatários e, opcionalmente, envia um email com um link de compartilhamento.
Permissões
Uma das permissões a seguir é necessária para chamar essa API. Para saber mais, incluindo como escolher permissões, confira Permissões.
Tipo de permissão | Permissões (da com menos para a com mais privilégios) |
---|---|
Delegado (conta corporativa ou de estudante) | Files.ReadWrite, Files.ReadWrite.All, Sites.ReadWrite.All |
Delegado (conta pessoal da Microsoft) | Files.ReadWrite, Files.ReadWrite.All |
Aplicativo | Files.ReadWrite.All, Sites.ReadWrite.All |
Solicitação 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
Corpo da solicitação
Forneça um objeto JSON com os seguintes parâmetros no corpo da solicitação.
{
"requireSignIn": false,
"sendInvitation": false,
"roles": [ "read | write"],
"recipients": [
{ "@odata.type": "microsoft.graph.driveRecipient" },
{ "@odata.type": "microsoft.graph.driveRecipient" }
],
"message": "string"
}
Parâmetro | Tipo | Descrição |
---|---|---|
destinatários | Collection(DriveRecipient) | Uma coleção dos destinatários que receberão o acesso e o convite de compartilhamento. |
mensagem | String | Uma mensagem de texto sem formatação que está incluída no convite de compartilhamento. Comprimento máximo de 2000 caracteres. |
requireSignIn | Booleano | Especifica se o destinatário do convite precisa fazer logon para visualizar o item compartilhado. |
sendInvitation | Booliano | Se verdadeiro, um link de compartilhamento será enviado ao destinatário. Caso contrário, uma permissão é concedida diretamente sem enviar uma notificação. |
funções | Collection(String) | Especifique as funções que devem ser concedidas aos destinatários do convite de compartilhamento. |
Exemplo
Este exemplo envia um convite de compartilhamento para um usuário com endereço de email "ryan@contoso.com" com uma mensagem sobre um arquivo em que está sendo colaborado. O convite concede acesso de leitura e gravação ao arquivo para Ryan.
Solicitação HTTP
Se bem-sucedido, este método retorna o código de resposta 200 OK
e o objeto de coleção permission no corpo da resposta.
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" ]
}
Resposta
Veja a seguir um exemplo da resposta.
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" ]
}
]
}
Comentários
- Drives com driveType de
personal
(OneDrive Pessoal) não podem criar ou alterar as permissões no DriveItem raiz. - Para obter uma lista das funções disponíveis, confira Funções de enumeração.
Respostas de erro
Leia o tópico Respostas de Erro para obter mais informações sobre como os erros são retornados.