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.
Escolha a permissão ou as permissões marcadas como menos privilegiadas para essa API. Use uma permissão ou permissões privilegiadas mais altas somente se o aplicativo exigir. Para obter detalhes sobre permissões delegadas e de aplicativo, consulte Tipos de permissão. Para saber mais sobre essas permissões, consulte a referência de permissões.
Tipo de permissão
Permissões menos privilegiadas
Permissões privilegiadas mais altas
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
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)
Especifica as funções que devem ser concedidas aos destinatários do convite de compartilhamento.
expirationDateTime
DateTimeOffset
Especifica o dateTime após o qual a permissão expira. Para OneDrive for Business e SharePoint, xpirationDateTime só é aplicável para permissões do sharingLink. Disponível em contas OneDrive for Business, SharePoint e OneDrive pessoais premium.
password
String
A senha definida no convite pelo criador. Somente Opcional e OneDrive Personal.
retainInheritedPermissions
Booleano
Opcional. Se true (padrão), todas as permissões herdadas existentes serão mantidas no item compartilhado ao compartilhar esse item pela primeira vez. Se false, todas as permissões existentes forem removidas ao compartilhar pela primeira vez.
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.
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Drives.Item.Items.Item.Invite;
using Microsoft.Graph.Models;
var requestBody = new InvitePostRequestBody
{
Recipients = new List<DriveRecipient>
{
new DriveRecipient
{
Email = "ryan@contoso.com",
},
},
Message = "Here's the file that we're collaborating on.",
RequireSignIn = true,
SendInvitation = true,
Roles = new List<string>
{
"write",
},
Password = "password123",
ExpirationDateTime = "2018-07-15T14:00:00.000Z",
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Drives["{drive-id}"].Items["{driveItem-id}"].Invite.PostAsInvitePostResponseAsync(requestBody);
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
com.microsoft.graph.drives.item.items.item.invite.InvitePostRequestBody invitePostRequestBody = new com.microsoft.graph.drives.item.items.item.invite.InvitePostRequestBody();
LinkedList<DriveRecipient> recipients = new LinkedList<DriveRecipient>();
DriveRecipient driveRecipient = new DriveRecipient();
driveRecipient.setEmail("ryan@contoso.com");
recipients.add(driveRecipient);
invitePostRequestBody.setRecipients(recipients);
invitePostRequestBody.setMessage("Here's the file that we're collaborating on.");
invitePostRequestBody.setRequireSignIn(true);
invitePostRequestBody.setSendInvitation(true);
LinkedList<String> roles = new LinkedList<String>();
roles.add("write");
invitePostRequestBody.setRoles(roles);
invitePostRequestBody.setPassword("password123");
invitePostRequestBody.setExpirationDateTime("2018-07-15T14:00:00.000Z");
var result = graphClient.drives().byDriveId("{drive-id}").items().byDriveItemId("{driveItem-id}").invite().post(invitePostRequestBody);
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.drives.item.items.item.invite.invite_post_request_body import InvitePostRequestBody
from msgraph.generated.models.drive_recipient import DriveRecipient
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = InvitePostRequestBody(
recipients = [
DriveRecipient(
email = "ryan@contoso.com",
),
],
message = "Here's the file that we're collaborating on.",
require_sign_in = True,
send_invitation = True,
roles = [
"write",
],
password = "password123",
expiration_date_time = "2018-07-15T14:00:00.000Z",
)
result = await graph_client.drives.by_drive_id('drive-id').items.by_drive_item_id('driveItem-id').invite.post(request_body)