Arbeiten mit SharePoint-Websites in Microsoft Graph
Die SharePoint-API in Microsoft Graph unterstützt die folgenden wesentlichen Szenarios:
- Zugriff auf SharePoint-Websites, -Listen und -Laufwerke (Dokumentbibliotheken)
- Schreibgeschützte Unterstützung für Website-Ressourcen (keine Möglichkeit zum Erstellen neuer Websites)
- Lese-/ Schreibzugriff-Unterstützung für -Listen, listItems und driveItems
- Unterstützung für Lese-/Schreibzugriff für SharePointSettings auf Mandantenebene
- Adressierung von Ressourcen nach SharePoint-ID, URL oder relativem Pfad
Die SharePoint-API macht drei wichtige Ressourcentypen verfügbar:
Es folgt ein Beispiel für eine listItem-Ressource:
{
"fields": {
"Title": "Access card",
"Employee": "Ryan Gregg",
"EmployeeId": "10",
"CardSerial": "01235492",
"Alias": "RGregg",
"ID": 1,
"ContentType": "Item",
"Modified": "2016-09-19T23:15:25-07:00",
"Created": "2016-09-19T23:15:25-07:00"
},
"createdBy": {
"user": {
"id": "b757fdcb-0271-4807-b243-504139e4ba04",
"displayName": "Ryan Gregg"
}
},
"createdDateTime": "2016-09-20T06:15:25Z",
"eTag": "48e941c3-9515-4c48-9760-c07c90c79d48,1",
"id": "4",
"lastModifiedBy": {
"user": {
"id": "b757fdcb-0271-4807-b243-504139e4ba04",
"displayName": "Ryan Gregg"
}
},
"lastModifiedDateTime": "2016-09-20T06:15:25Z",
}
Ressourcen legen Daten auf drei verschiedene Arten offen:
- Eigenschaften (wie id und name) legen einfache Werte offen.
- Facets (wie fields und createdBy) legen komplexe Werte offen.
- References (wie items) verweisen auf Sammlungen anderer Ressourcen.
Sie können Sie Referenzen in der URL mit dem expand-Abfrageparameter erweitern, z. B. ?expand=fields
.
Sie können bestimmte Eigenschaften und Facets mit dem select Abfrageparameter abrufen, z. B. ?select=id,name
.
Standardmäßig werden die meisten Eigenschaften und Facets zurückgegeben, wohingegen alle Referenzen ausgeblendet werden.
Aus Leistungsgründen wird empfohlen, dass Sie select und expand nur für die Daten angeben, an denen Sie interessiert sind.
SharePoint-API-Stammressourcen
Die folgenden Beispiele sind relativ zu https://graph.microsoft.com/v1.0
.
Pfad | Beschreibung |
---|---|
/sites/root | Standardmäßige Website der Organisation |
/sites/{site-id} | Zugriff auf eine bestimmte Website anhand ihrer ID |
/sites/{site-id}/drive | Zugriff auf das standardmäßige Laufwerk (Dokumentbibliothek) für die angegebene Website |
/sites/{site-id}/drives | Aufzählung der Laufwerke (Dokumentbibliotheken) unter der Website |
/sites/{site-id}/sites | Aufzählung der Unterwebsites unter der site |
/sites/{site-id}/lists | Aufzählung der lists unter der site |
/sites/{site-id}/lists/{list-id}/items | Aufzählung der listItems unter der list |
/groups/{group-id}/sites/root | Zugriff auf die Teamwebsite einer Gruppe |
/admin/sharepoint/settings | Greifen Sie auf die Einstellungen auf Administratorebene der Organisation zu. |
Websites können auch mithilfe des SharePoint-Hostnamens, gefolgt von einem Doppelpunkt und dem relativen Pfad zur Website adressiert werden. Sie können optional wieder zur Adressierung des Ressourcenmodells wechseln, indem Sie einen weiteren Doppelpunkt am Ende setzen.
Path | Beschreibung |
---|---|
/sites/contoso.sharepoint.com:/teams/hr | Die Seite ist https://contoso.sharepoint.com/teams/hr zugeordnet. |
/sites/contoso.sharepoint.com:/teams/hr:/drive | Zugriff auf das standardmäßige Laufwerk für diese Website |
Hinweis für bestehende SharePoint-Entwickler
Zwischen der Microsoft Graph-SharePoint-API und den CSOM-APIs bestehen einige wesentliche Unterschiede.
Die site-Ressource ist SPWeb
zugeordnet.
Die Stammwebsite (SPSite
) in einer Websitesammlung verfügt über ein siteCollection-Facet, das Informationen über enthält.
Da IDs für Websites nur innerhalb einer Websitesammlung eindeutig sind, müssen zur Adressierung einer Website nach ID sowohl die Websitesammlungs-ID als auch die Website-ID angegeben werden.
GET https://graph.microsoft.com/v1.0/sites/{hostname},{spsite-id},{spweb-id}/
Eine URL, die nur mit dem Hostnamen erstellt wird, verweist auf die Stammwebsite (SPWeb
) in der Standardwebsitesammlung.
GET https://graph.microsoft.com/v1.0/sites/{hostname}
Eine URL, die nur mit dem Hostnamen und der siteCollection-ID (SPSite
) erstellt wird, verweist auf die Stammwebsite (SPWeb
) in der angegebenen Websitesammlung.
GET https://graph.microsoft.com/v1.0/sites/{hostname},{spsite-id}
Eine URL, die nur mit der siteCollection-ID (SPSite
) erstellt wird, verweist auf die Stammwebsite (SPWeb
) in der angegebenen Websitesammlung.
GET https://graph.microsoft.com/v1.0/sites/{spsite-id}
Zuordnen von SharePoint REST v1-API-URLs zu Microsoft Graph-API-URLs
Die folgenden Beispiele helfen Entwicklern, die mit SharePoint REST v1-API-URL-Mustern vertraut sind, ihre Anwendungsfälle an ähnliche Microsoft Graph-API-URL-Muster anzupassen.
Muster 1
Greifen Sie auf die Website zu, die der angegebenen SPWeb
URL zugeordnet ist.
GET https://graph.microsoft.com/v1.0/sites/{hostname}:/{site-server-relative-url}
Beispiel 1
Im folgenden Beispiel werden Informationen zur Website zurückgegeben, die der SPWeb
URL https://contoso.sharepoint.com/teams/hr/benefits
zugeordnet ist. Beachten Sie, dass benefits
innerhalb der Websitesammlung (SPSite
) unter https://contoso.sharepoint.com/teams/hr
istSPWeb
.
GET https://graph.microsoft.com/v1.0/sites/contoso.sharepoint.com:/teams/hr/benefits
Muster 2
Greifen Sie auf das Listenelement zu, das den folgenden Komponenten zugeordnet ist.
Komponente | Beschreibung |
---|---|
{hostname} | Der Hostname der Website. |
{site-server-relative-url} | Die serverrelative URL der Website (SPWeb ). |
{list-id} | Die GUID-ID der Liste (SPList ) auf der Website. |
{item-id} | Die GUID oder ganzzahlige ID des Listenelements (SPListItem ) in der Liste. |
Das folgende Beispiel zeigt eine Anforderung, die die vorherigen Komponenten enthält.
GET https://graph.microsoft.com/v1.0/sites/{hostname}:/{site-server-relative-url}:/lists/{list-id}/items/{item-id}
Beispiel 2
Im folgenden Beispiel werden Informationen zum mit der SPListItem
ganzzahligen ID 42
zurückgegeben, die zur Liste mit der GUID-ID 5771e865-4e91-48b8-a0de-35a25d4e52fe
gehört. Diese Liste gehört zu der Website, die der SPWeb
URL https://contoso.sharepoint.com/teams/hr/benefits
zugeordnet ist.
GET https://graph.microsoft.com/v1.0/sites/contoso.sharepoint.com:/teams/hr/benefits:/lists/5771e865-4e91-48b8-a0de-35a25d4e52fe/items/42