Gerenciar sites modernos do SharePoint usando REST
Este tópico pressupõe que você já esteja familiarizado com os tópicos a seguir:
- Conheça o serviço REST do SharePoint
- Realizar operações básicas usando os pontos de extremidade REST do SharePoint
Este tópico não fornece trechos de código. Os exemplos REST abaixo assumem um cabeçalho HTTP Accept de application/json;odata.metadata=none
.
Os seguintes comandos REST estão disponíveis para criar um site moderno de Comunicação do SharePoint:
- Criar. Criar um novo site do SharePoint.
- Excluir. Excluir um site do SharePoint.
- Status. Obter o status de um site do SharePoint.
A URL base dos comandos REST é _api/SPSiteManager
.
Criar um site moderno
Usando a seguinte API REST, você pode criar tanto sites de comunicação quanto sites do Teams não associados a grupos.
Para especificar o tipo de site a ser criado, use o atributo WebTemplate
. Use um dos modelos a seguir para selecionar o tipo de site a ser criado:
- Site de comunicação:
SITEPAGEPUBLISHING#0
- Site do Teams não associado a grupos:
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"
}
}
Importante
Se você usar um contexto somente de aplicativo para criar o conjunto de sites, a propriedade Owner será necessária. Em outros casos, essa é uma propriedade opcional e, se não estiver presente, será padronizada para o usuário chamando o ponto de extremidade REST.
Observação
O parâmetro "Classificação" define apenas o valor visível no site, mas não aplica a etiqueta no site. Utilize o novo parâmetro "SensitivityLabel" para aplicar a etiqueta na sua coleção de sites.
O ID de design do site pode ser recuperado usando os cmdlets Get-SPOSiteDesign (Shell de Gerenciamento do SharePoint Online da Microsoft) ou Get-PnPSiteDesign (PnP PowerShell). Se você quiser aplicar um design de site pronto para uso disponível, use os seguintes valores:
- Standard comunicação:
96c933ac-3698-44c7-9f4a-5fd17d71af9e
ou nula - Demonstação:
6142d2a0-63a5-4ba0-aede-d9fefca2c767
- Em branco:
f6cc5403-0d63-442e-96c0-285923709ffc
Importante
Para aplicar designs de site personalizados como recuperados com o Get-SPOSiteDesign (Shell de Gerenciamento do Microsoft SharePoint Online) ou com o Get-MailSiteDesign (PnP PowerShell), você terá que alterar a JSON da seguinte forma:
...
"SiteDesignId":"00000000-0000-0000-0000-000000000000",
"Owner":"owner@yourtenant.onmicrosoft.com",
"WebTemplateExtensionId":"<your site design ID>"
...
Observação
O PnP PowerShell é uma solução de software livre com uma comunidade ativa de suporte. Não há nenhuma SLA para o suporte da ferramenta de software livre por parte da Microsoft.
Resposta
Se for bem-sucedido, esse método retornará o código de resposta 200, OK
e o objeto JSON simples no corpo da resposta com os seguintes detalhes:
{
"SiteId":"d11e59ca-1465-424c-be90-c847ba849af5",
"SiteStatus":2,
"SiteUrl":"https://contoso.sharepoint.com/sites/commsite1"
}
Excluir um site moderno
A API REST para excluir um site moderno é:
url: /_api/SPSiteManager/delete
method: POST
accept: application/json;odata.metadata=none
odata-version: 4.0
body:
{
"siteId":"d11e59ca-1465-424c-be90-c847ba849af5"
}
Resposta
Se bem-sucedido, este método retorna um código de resposta 200, OK
.
Obter o status do site moderno
A API REST para obter o status de um site moderno do SharePoint:
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
Resposta
Se for bem-sucedido, esse método retornará o código de resposta 200, OK
e o objeto JSON simples no corpo da resposta com os seguintes detalhes:
Se o site existir, a resposta retorna o status do site e sua URL:
{
"SiteId":"d11e59ca-1465-424c-be90-c847ba849af5",
"SiteStatus":2,
"SiteUrl":"https://contoso.sharepoint.com/sites/comm1"
}
Se o site não existir, a resposta retornará um status de site de 0, sem URL e sem id do site.
{
"SiteId":,
"SiteStatus":0,
"SiteUrl":
}
O conjunto completo de valores para SiteStatus
é:
-
0
– Não Encontrado. O site não existe. -
1
– Provisionamento. No momento, o site está sendo provisionado. -
2
– Pronto. O site foi criado. -
3
– Erro. Ocorreu um erro durante o provisionamento do site. -
4
- O site com o URL solicitado já existe.