Verwalten moderner SharePoint-Websites mithilfe von REST
In diesem Thema wird davon ausgegangen, dass Sie bereits mit den folgenden Themen vertraut sind:
- Grundlegendes zum SharePoint-REST-Dienst
- Ausführen grundlegender Vorgänge unter Verwendung von SharePoint-REST-Endpunkten
In diesem Artikel werden keine Codeausschnitte bereitgestellt. In den REST-Beispielen unten wird angenommen, dass folgender HTTP-Accept-Header vorliegt: application/json;odata.metadata=none
.
Zur Erstellung moderner SharePoint-Kommunikationswebsites stehen die folgenden REST-Befehle zur Verfügung:
- Erstellen. Erstellen einer neuen SharePoint-Website.
- Löschen. Löschen einer SharePoint-Website.
- Status. Ruft den Status einer SharePoint-Website ab.
Die Basis-URL für die REST-Befehle lautet _api/SPSiteManager
.
Erstellen einer modernen Website
Mithilfe der folgenden REST-API können Sie sowohl Kommunikationswebsites als auch Teamwebsites erstellen, die keiner Gruppe zugeordnet sind.
Verwenden Sie das Attribut WebTemplate
, um anzugeben, welcher Typ von Website erstellt werden soll. Verwenden Sie eine der folgenden Vorlagen, um den Typ der zu erstellenden Website auszuwählen:
- Kommunikationswebsite:
SITEPAGEPUBLISHING#0
- Teamwebsite, die keiner Gruppe zugeordnet ist:
STS#3
url: /_api/SPSiteManager/create
accept: application/json;odata.metadata=none
odata-version: 4.0
method: POST
body:
{
"request": {
"Title": "Communication Site 1",
"Url":"https://contoso.sharepoint.com/sites/commsite1",
"Lcid": 1033,
"ShareByEmailEnabled":false,
"Classification":"Low Business Impact",
"SensitivityLabel": "<Your sensitivity label ID>",
"Description":"Description",
"WebTemplate":"SITEPAGEPUBLISHING#0",
"SiteDesignId":"6142d2a0-63a5-4ba0-aede-d9fefca2c767",
"Owner":"owner@yourtenant.onmicrosoft.com",
"WebTemplateExtensionId":"00000000-0000-0000-0000-000000000000"
}
}
Wichtig
Die Eigenschaft Besitzer ist erforderlich, wenn Sie einen nur-App-Kontext zum Erstellen der Websitesammlung verwenden. In anderen Fällen ist dies eine optionale Eigenschaft, und wenn sie nicht vorhanden ist, wird der Benutzer standardmäßig den REST-Endpunkt anrufen.
Hinweis
Der Parameter "Classification" legt nur den auf der Website sichtbaren Wert fest, wendet die Bezeichnung jedoch nicht auf der Website an. Verwenden Sie den neuen Parameter "SensitivityLabel", um die Bezeichnung tatsächlich auf Ihre Websitesammlung anzuwenden.
Die Website-Design-ID kann über die Cmdlets Get-SPOSiteDesign (Microsoft SharePoint Online-Verwaltungsshell) oder Get-PnPSiteDesign (PNP PowerShell) abgerufen werden. Wenn Sie ein anwendungsbereites Webseitendesign verwenden möchten, nutzen Sie die folgenden Werte:
- Thema:
96c933ac-3698-44c7-9f4a-5fd17d71af9e
oder Null - Showcase:
6142d2a0-63a5-4ba0-aede-d9fefca2c767
- Blank:
f6cc5403-0d63-442e-96c0-285923709ffc
Wichtig
Um Ihre benutzerdefinierten Website-Designs anzuwenden, die mit Get-SPOSiteDesign (Microsoft Office SharePoint Online-Verwaltungsshell) oder Get-PnPSiteDesign (PnP PowerShell) abgerufen wurden, müssen Sie den JSON wie folgt ändern:
...
"SiteDesignId":"00000000-0000-0000-0000-000000000000",
"Owner":"owner@yourtenant.onmicrosoft.com",
"WebTemplateExtensionId":"<your site design ID>"
...
Hinweis
PnP PowerShell ist eine Open Source-Lösung mit aktiver Community, die Support dafür bietet. Es gibt keine SLA für den Support des Open-Source-Tools durch Microsoft.
Antwort
Bei fehlerfreier Ausführung gibt die Methode im Antworttext den Antwortcode 200, OK
zurück sowie ein einfaches JSON-Objekt mit den folgenden Informationen:
{
"SiteId":"d11e59ca-1465-424c-be90-c847ba849af5",
"SiteStatus":2,
"SiteUrl":"https://contoso.sharepoint.com/sites/commsite1"
}
Löschen einer modernen Website
Die REST-API zum Löschen einer modernen Website lautet:
url: /_api/SPSiteManager/delete
method: POST
accept: application/json;odata.metadata=none
odata-version: 4.0
body:
{
"siteId":"d11e59ca-1465-424c-be90-c847ba849af5"
}
Antwort
Wenn die Methode erfolgreich verläuft, wird der Antwortcode 200, OK
zurückgegeben.
Abrufen des Status einer modernen Website
Die REST-API zum Abrufen des Status einer modernen SharePoint-Website sieht wie folgt aus:
url: /_api/SPSiteManager/status?url='https%3A%2F%2Fcontoso.sharepoint.com%2Fsites%2Fcommsite1'
method: GET
accept: application/json;odata.metadata=none
odata-version: 4.0
body: none
Antwort
Bei fehlerfreier Ausführung gibt die Methode im Antworttext den Antwortcode 200, OK
zurück sowie ein einfaches JSON-Objekt mit den folgenden Informationen:
Existiert die Website, gibt die Antwort den Status der Website sowie die URL der Website zurück.
{
"SiteId":"d11e59ca-1465-424c-be90-c847ba849af5",
"SiteStatus":2,
"SiteUrl":"https://contoso.sharepoint.com/sites/comm1"
}
Existiert die Website nicht, gibt die Antwort als Status der Website den Wert „0“ zurück, ohne URL oder Website-ID.
{
"SiteId":,
"SiteStatus":0,
"SiteUrl":
}
Der vollständige Satz von Werten für SiteStatus
ist wie folgt:
0
– Nicht gefunden. Die Website ist nicht vorhanden.1
– Bereitstellung. Die Website wird derzeit bereitgestellt.2
– Bereit. Die Website wurde erstellt.3
– Fehler. Beim Bereitstellen der Website ist ein Fehler aufgetreten.4
– Die Website mit der angeforderten URL ist bereits vorhanden.