Link zum Teilen für ein DriveItem erstellen

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 Freigabe-Berechtigungen von ihren Vorgängern.

Berechtigungen

Eine der folgenden Berechtigungen ist erforderlich, um diese API aufzurufen. Weitere Informationen, unter anderem zur Auswahl von Berechtigungen, finden Sie unter Berechtigungen.

Berechtigungstyp Berechtigungen (von der Berechtigung mit den wenigsten Rechten zu der mit den meisten Rechten)
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

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.
scope string Optional. Der Bereich des zu erstellenden Links. Möglich sind anonymous oder organization.

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.

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.

Anforderung

POST /me/drive/items/{item-id}/createLink
Content-type: application/json

{
  "type": "view",
  "scope": "anonymous"
}

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"
    },
  }
}

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 /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 /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://onedive.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).