Link zum Teilen für ein DriveItem erstellen

Namespace: microsoft.graph

Sie können die Aktion createLink verwenden, um ein DriveItem über einen Link zu teilen.

Die Aktion createLink erstellt einen neuen Freigabelink, falls der angegebene Linktyp für die aufrufende Anwendung noch nicht existiert. Existiert für die App bereits ein Freigabelink des angegebenen Typs, wird dieser bereits vorhandene Freigabelink zurückgegeben.

DriveItem-Ressourcen erben Berechtigungen zum Teilen von ihren Vorgängern.

Diese API ist in den folgenden nationalen Cloudbereitstellungen verfügbar.

Globaler Dienst US Government L4 US Government L5 (DOD) China, betrieben von 21Vianet

Berechtigungen

Wählen Sie für diese API die Als am wenigsten privilegierten Berechtigungen gekennzeichneten Berechtigungen aus. Verwenden Sie nur dann eine Berechtigung mit höheren Berechtigungen , wenn dies für Ihre App erforderlich ist. Ausführliche Informationen zu delegierten Berechtigungen und Anwendungsberechtigungen finden Sie unter Berechtigungstypen. Weitere Informationen zu diesen Berechtigungen finden Sie in der Berechtigungsreferenz.

Berechtigungstyp Berechtigungen mit den geringsten Berechtigungen Berechtigungen mit höheren Berechtigungen
Delegiert (Geschäfts-, Schul- oder Unikonto) Files.ReadWrite Files.ReadWrite.All, Sites.ReadWrite.All
Delegiert (persönliches Microsoft-Konto) Files.ReadWrite Files.ReadWrite.All
Anwendung Files.ReadWrite.All Sites.ReadWrite.All

HTTP-Anforderung

POST /drives/{driveId}/items/{itemId}/createLink
POST /groups/{groupId}/drive/items/{itemId}/createLink
POST /me/drive/items/{itemId}/createLink
POST /sites/{siteId}/drive/items/{itemId}/createLink
POST /users/{userId}/drive/items/{itemId}/createLink

Anforderungsheader

Name Beschreibung
Authorization Bearer {token}. Erforderlich. Erfahren Sie mehr über die Authentifizierung und Autorisierung.
Content-Type application/json. Erforderlich.

Anforderungstext

Der Anforderungstext definiert die Eigenschaften des Links zum Teilen, den Ihre Anwendung anfordert. Bei der Anforderung sollte es sich um ein JSON-Objekt mit folgenden Eigenschaften handeln:

Name Typ Beschreibung
type string Der Typ Freigabelink, der erstellt werden soll. Möglich sind view, edit oder embed.
password string Das Kennwort des Freigabelinks, der vom Ersteller festgelegt wird. Optional und nur OneDrive Personal.
expirationDateTime string Eine Zeichenfolge mit dem Format yyyy-MM-ddTHH:mm:ssZ von DateTime gibt die Ablaufzeit der Berechtigung an.
retainInheritedPermissions Boolescher Wert Optional. Wenn true (Standard), werden alle vorhandenen geerbten Berechtigungen für das freigegebene Element beibehalten, wenn dieses Element zum ersten Mal freigegeben wird. Gibt falsean, dass alle vorhandenen Berechtigungen bei der erstmaligen Freigabe entfernt werden.
scope string Optional. Der Bereich des zu erstellenden Links. Möglich sind anonymous, organization oder users.

Für den Parameter type sind die folgenden Werte zulässig:

Typwert Beschreibung
view Erstellt einen schreibgeschützten Link zum DriveItem.
edit Erstellt einen Link mit Lese-/Schreibzugriff zum DriveItem.
embed Erstellt einen einbettbaren Link zum DriveItem. Diese Option ist nur für das persönliche OneDrive verfügbar.

Bereichstypen

Für den Parameter scope sind die nachfolgend aufgeführten Werte zulässig. Wenn der scope-Parameter nicht angegeben ist, wird der Standardlinktyp für die Organisation erstellt.

Wert Beschreibung
anonymous Jeder Benutzer, der über den Link verfügt, hat Zugriff, ohne sich anmelden zu müssen. Dies kann auch Personen von außerhalb Ihrer Organisation einschließen. Die Unterstützung für anonyme Links kann von einem Administrator deaktiviert werden.
organization Jede Person, die bei Ihrer Organisation (Mandant) angemeldet ist, kann den Link verwenden, um Zugriff zu erhalten. Nur in OneDrive for Business und SharePoint verfügbar.
users Nur für Personen freigeben, die Sie innerhalb oder außerhalb des organization auswählen.

Antwort

Bei Erfolg gibt diese Methode eine einzige Ressource des Typs Permission im Antworttext zurück. Dabei handelt es sich um die angeforderten Berechtigungen zum Teilen.

Wird ein neuer Link zum Teilen für das Element erstellt, lautet die Antwort 201 Created. Wird ein bereits vorhandener Link zurückgegeben, lautet die Antwort 200 OK.

Beispiel

Im folgenden Beispiel wird das Erstellen eines Links zum Teilen für das DriveItem angefordert, das durch {ItemId} im OneDrive des Benutzers angegeben wurde. Der Link zum Teilen ist schreibgeschützt konfiguriert und kann von allen verwendet werden. Alle vorhandenen Berechtigungen werden bei der erstmaligen Freigabe entfernt, wenn retainInheritedPermissions false ist.

Anforderung

POST https://graph.microsoft.com/v1.0/me/drive/items/{item-id}/createLink
Content-type: application/json

{
  "type": "view",
  "password": "ThisIsMyPrivatePassword",
  "scope": "anonymous",
  "retainInheritedPermissions": false
}

Antwort

HTTP/1.1 201 Created
Content-Type: application/json

{
  "id": "123ABC",
  "roles": ["write"],
  "link": {
    "type": "view",
    "scope": "anonymous",
    "webUrl": "https://1drv.ms/A6913278E564460AA616C71B28AD6EB6",
    "application": {
      "id": "1234",
      "displayName": "Sample Application"
    },
  },
  "hasPassword": true
}

OneDrive for Business und SharePoint unterstützen Links, die nur innerhalb eines Unternehmens geteilt werden können. Diese ähneln anonymen Links, funktionieren aber nur für Mitglieder der Besitzorganisation. Verwenden Sie den Parameter scope mit dem Wert organization, um einen Link zu erstellen, der nur innerhalb eines Unternehmens geteilt werden kann.

Anforderung

POST https://graph.microsoft.com/v1.0/me/drive/items/{item-id}/createLink
Content-Type: application/json

{
  "type": "edit",
  "scope": "organization"
}

Antwort

HTTP/1.1 201 Created
Content-Type: application/json

{
  "id": "123ABC",
  "roles": ["write"],
  "link": {
    "type": "edit",
    "scope": "organization",
    "webUrl": "https://contoso-my.sharepoint.com/personal/ellen_contoso_com/...",
    "application": {
      "id": "1234",
      "displayName": "Sample Application"
    },
  },
}

Bei Verwendung des Linktyps embed kann der zurückgegebene Wert für „webUrl“ in ein HTML-Element des Typs <iframe> eingebettet werden. Wird ein Einbettungslink erstellt, enthält die Eigenschaft webHtml den HTML-Code für einen <iframe>, der den Inhalt hostet.

Hinweis: Einbettungslinks werden nur fürdas persönlich OneDrive unterstützt.

Anforderung

POST https://graph.microsoft.com/v1.0/me/drive/items/{item-id}/createLink
Content-Type: application/json

{
  "type": "embed"
}

Antwort

HTTP/1.1 201 Created
Content-Type: application/json

{
  "id": "123ABC",
  "roles": ["read"],
  "link": {
    "type": "embed",
    "webHtml": "<IFRAME src=\"https://onedrive.live.com/...\"></IFRAME>",
    "webUrl": "https://onedrive.live.com/...",
    "application": {
      "id": "1234",
      "displayName": "Sample Application"
    },
  }
}

Anmerkungen

  • Mit dieser Aktion erstellte Links laufen nicht ab, es sei denn, für die Organisation wird eine Standardablaufrichtlinie erzwungen.
  • Links sind in den Berechtigungen zum Teilen für das Element sichtbar und können von einem Besitzer des Elements entfernt werden.
  • Links zeigen immer auf die aktuelle Version eines Elements, es sei denn, das Element ist ausgecheckt (nur SharePoint).