Envoyer une invitation de partage

Espace de noms: microsoft.graph

Envoie une invitation de partage pour un driveItem. Une invitation de partage fournit des autorisations aux destinataires et envoie en option un e-mail contenant un lien de partage.

Cette API est disponible dans les déploiements de cloud national suivants.

Service global Gouvernement des États-Unis L4 Us Government L5 (DOD) Chine gérée par 21Vianet

Autorisations

Choisissez l’autorisation ou les autorisations marquées comme moins privilégiées pour cette API. Utilisez une autorisation ou des autorisations privilégiées plus élevées uniquement si votre application en a besoin. Pour plus d’informations sur les autorisations déléguées et d’application, consultez Types d’autorisations. Pour en savoir plus sur ces autorisations, consultez les informations de référence sur les autorisations.

Type d’autorisation Autorisations avec privilèges minimum Autorisations privilégiées plus élevées
Déléguée (compte professionnel ou scolaire) Files.ReadWrite Files.ReadWrite.All, Sites.ReadWrite.All
Déléguée (compte Microsoft personnel) Files.ReadWrite Files.ReadWrite.All
Application Files.ReadWrite.All Sites.ReadWrite.All

Requête 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

En-têtes de demande

Nom Description
Autorisation Porteur {token}. Obligatoire. En savoir plus sur l’authentification et l’autorisation.
Content-Type application/json. Obligatoire.

Corps de la demande

Dans le corps de la demande, indiquez un objet JSON avec les paramètres suivants.

{
  "requireSignIn": false,
  "sendInvitation": false,
  "roles": [ "read | write"],
  "recipients": [
    { "@odata.type": "microsoft.graph.driveRecipient" },
    { "@odata.type": "microsoft.graph.driveRecipient" }
  ],
  "message": "string"
}
Paramètre Type Description
destinataires Collection(DriveRecipient) Une collection des destinataires qui recevront l’accès et l’invitation de partage.
message String Un message au format texte brut qui est inclus dans l’invitation de partage. Caractères de longueur maximale 2 000.
requireSignIn Valeur booléenne Indique si le destinataire de l’invitation doit se connecter pour afficher l’élément partagé.
sendInvitation Valeur booléenne Si la valeur est true, un lien de partage est envoyé au destinataire. Dans le cas contraire, une autorisation est accordée directement sans envoi de notification.
roles Collection(String) Spécifie les rôles qui doivent être accordés aux destinataires de l’invitation de partage.
expirationDateTime DateTimeOffset Spécifie la dateTime après laquelle l’autorisation expire. Pour OneDrive Entreprise et SharePoint, xpirationDateTime s’applique uniquement aux autorisations sharingLink. Disponible sur les comptes OneDrive personnels OneDrive Entreprise, SharePoint et Premium.
mot de passe Chaîne Mot de passe défini sur l’invitation par le créateur. Facultatif et OneDrive Personnel uniquement.
retainInheritedPermissions Boolean Facultatif. Si true la valeur est (valeur par défaut), toutes les autorisations héritées existantes sont conservées sur l’élément partagé lors du premier partage de cet élément. Si la valeur est false, toutes les autorisations existantes sont supprimées lors du premier partage.

Exemple

Cet exemple envoie une invitation de partage à un utilisateur avec l’adresse e-mail «ryan@contoso.com » avec un message concernant un fichier en cours de collaboration. L’invitation donne à Ryan un accès au fichier en lecture/écriture.

Requête HTTP

Si elle réussit, cette méthode renvoie un code de réponse 200 OK et un objet de collection permission dans le corps de la réponse.

POST https://graph.microsoft.com/v1.0/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" ],
  "password": "password123",
  "expirationDateTime": "2018-07-15T14:00:00.000Z"
}

Réponse

L’exemple suivant illustre la réponse.

HTTP/1.1 200 OK
Content-type: application/json

{
  "value": [
    {
      "@deprecated.GrantedTo": "GrantedTo has been deprecated. Refer to GrantedToV2",
      "grantedTo": {
        "user": {
          "displayName": "Robin Danielsen",
          "id": "42F177F1-22C0-4BE3-900D-4507125C5C20"
        }
      },
      "grantedToV2": {
        "user": {
          "id": "42F177F1-22C0-4BE3-900D-4507125C5C20",
          "displayName": "Robin Danielsen"
        },
        "siteUser": {
          "id": "1",
          "displayName": "Robin Danielsen",
          "loginName": "Robin Danielsen"
        }
      },
      "hasPassword": true,
      "id": "CCFC7CA3-7A19-4D57-8CEF-149DB9DDFA62",
      "invitation": {
        "email": "robin@contoso.com",
        "signInRequired": true
      },
      "roles": [ "write" ],
      "expirationDateTime": "2018-07-15T14:00:00.000Z"
    }
  ]
}

Remarques

  • Les ressources drive dont la valeur driveType est personal (compte personnel OneDrive) ne peuvent pas créer ni modifier d’autorisations sur la ressource DriveItem racine.
  • Pour obtenir la liste des rôles disponibles, consultez Valeurs des propriétés de rôles.

Réponses d’erreur

Pour plus d’informations sur la façon dont les erreurs sont renvoyées, voir Réponses d’erreur.