Conheça o serviço REST do SharePoint

O SharePoint inclui um serviço REST (Representational State Transfer) comparável aos modelos de objetos de cliente existentes no SharePoint. Agora, os desenvolvedores podem interagir remotamente com dados do SharePoint usando qualquer tecnologia que ofereça suporte a solicitações Web do REST. Isso significa que os desenvolvedores podem executar operações Criar, Ler, Atualizar e Excluir (CRUD) de seus suplementos, soluções e aplicativos cliente do SharePoint, usando tecnologias da Web REST e sintaxe OData (protocolo de Dados Abertos) padrão.

Pré-requisitos

Este tópico pressupõe que você tenha familiaridade básica com o REST e como construir solicitações REST.

Como funciona o serviço REST do SharePoint

O SharePoint agregou a capacidade de interagir remotamente com sites do SharePoint usando REST. Agora você pode interagir diretamente com objetos do SharePoint usando qualquer tecnologia que ofereça suporte a recursos padrão REST.

Para acessar os recursos do SharePoint usando o REST, construa uma solicitação HTTP RESTful, usando o padrão OData que corresponda à API do modelo de objeto cliente desejado. Por exemplo:

var items = List.GetByTitle(listname).GetItems();

O serviço web client.svc no SharePoint manipula a solicitação HTTP e oferece a resposta apropriada no formato Atom ou no formato JSON (JavaScript Object Notation). Seu aplicativo cliente, em seguida, deverá analisar essa resposta. A figura a seguir mostra uma visão de alto nível da arquitetura REST do SharePoint.

Arquitetura do serviço REST do SharePoint

SharePoint REST service architecture

Devido à funcionalidade e à facilidade de uso dos modelos de objeto cliente, eles continuam como a principal opção de desenvolvimento para comunicação com os sites do SharePoint usando .NET Framework, Silverlight (agora substituído) ou JavaScript (JSOM).

Usar comandos HTTP com o serviço REST do SharePoint

Para usar os recursos REST internos ao SharePoint, crie uma solicitação HTTP RESTful, usando o padrão OData, que corresponde à API do modelo de objeto cliente que você deseja usar. O serviço Web client.svc manipula a solicitação HTTP e fornece uma resposta ou no formato Atom ou no JSON. O aplicativo cliente, em seguida, deverá analisar essa resposta.

Os pontos de extremidade no serviço REST do SharePoint correspondem aos tipos e membros nos modelos de objeto do cliente do SharePoint. Usando solicitações HTTP, você pode usar esses pontos de extremidade REST para executar operações CRUD típicas em relação a entidades do SharePoint, como listas e sites.

Se você quiser fazer isso com um ponto de extremidade Use esta solicitação HTTP Tenha em mente
Ler um recurso GET
Criar ou atualizar um recurso POST
  • Use o método POST para criar entidades como listas e sites.
  • O serviço REST do SharePoint oferece suporte ao envio de comandos POST que incluem definições de objeto para pontos de extremidade que representam coleções.
  • Para operações POST, todas as propriedades que não forem necessárias serão definidas com os seus valores padrão.
  • Se você tentar definir uma propriedade de somente leitura como parte de uma operação POST, o serviço retornará uma exceção.
Atualizar ou inserir um recurso PUT
  • Use as operações PUT e MERGE para atualizar objetos do SharePoint existentes.
  • Qualquer ponto de extremidade de serviço que represente uma propriedade de objeto de operação set oferece suporte a solicitações PUT e MERGE.
  • Para as solicitações MERGE, a definição de propriedades é opcional; qualquer propriedade que você não definir explicitamente, manterá a propriedade atual.
  • Se você não especificar todas as propriedades necessárias nas atualizações de objeto em solicitações PUT, o serviço REST retornará uma exceção.
  • Além disso, as propriedades opcionais não especificadas explicitamente são definidas como suas propriedades padrão.
Excluir um recurso DELETE
  • Usar o comando HTTP DELETE em relação à URL de ponto de extremidade específico para excluir o objeto SharePoint representado por esse ponto de extremidade.
  • Para objetos recicláveis, como listas, arquivos e itens de lista, isso resulta em uma operação de Reciclagem.

Construir URLs REST para acessar recursos do SharePoint

Sempre que possível, o URI desses pontos de extremidade REST simula de forma próxima a assinatura API do recurso no modelo de objeto cliente do SharePoint. Os pontos de entrada principais do serviço REST representam o conjunto de sites e o site do contexto especificado.

Para acessar um conjunto de sites específico, use a seguinte construção:

https://{site_url}/_api/site

Para acessar um site específico, use a seguinte construção:

https://{site_url}/_api/web

Em cada caso, server representa o nome do servidor e site representa o nome ou o caminho para o site específico.

Nesse ponto inicial, você pode construir URIs REST mais específicas “percorrendo” o modelo de objeto usando os nomes das APIs do modelo de objeto do cliente separadas por uma barra (/).

Essa sintaxe não se aplica às APIs REST SocialFeedManager ou SocialFollowingManager. Para saber mais, confira:

Consulte Determinar URIs de ponto de extremidade do serviço REST do SharePoint para obter mais diretrizes para determinar URIs de ponto de extremidade do REST do SharePoint na assinatura das APIs de modelo de objeto cliente correspondente.

Exemplos de ponto de extremidade REST do SharePoint

A tabela a seguir contém exemplos de URL de ponto de extremidade REST comuns para que você comece a trabalhar com dados do SharePoint. Coloque http://server/site/_api/ antes dos fragmentos de URL mostrados na tabela para construir uma URL REST totalmente qualificada. Onde necessário para comandos POST, a tabela contém dados de amostra que você precisa passar no corpo da solicitação HTTP para criar o item do SharePoint especificado. Itens entre aspas representam variáveis que você precisa substituir com seus valores.

Descrição Ponto de extremidade de URL Método HTTP Conteúdo do corpo
Recupera o título de um site web/title GET Não aplicável
Recupera todas as listas em um site lists GET Não aplicável
Recupera metadados de uma única lista lists/getbytitle('listname') GET Não aplicável
Recupera itens dentro de uma lista lists/getbytitle('listname')/items GET Não aplicável
Recupera uma propriedade específica de um documento.
(Nesse caso, o título do documento)
lists/getbytitle('listname')?select=Title GET Não aplicável
Cria uma lista lists POST Ver exemplo
Adicionar um item a uma lista lists/getbytitle('listname')/items POST Ver exemplo

Exemplo de Cria uma lista :

{
  "__metadata": {
    "type": "SP.List"
  },
  "AllowContentTypes": true,
  "BaseTemplate": 104 ,
  "ContentTypesEnabled": true,
  "Description": "My list description ",
  "Title": "RestTest "
}

Exemplo de Adiciona um item a uma lista:

{
  "__metadata": {
    "type": "SP.Data.listname.ListItem"
  },
  "Title": "MyItem"
}

No JSON acima, substitua ListName pelo nome da sua lista do SharePoint omitindo os espaços.

Suporte ao trabalho em lotes

O serviço REST do SharePoint Online (e o SharePoint 2016 no local ou posterior) dá suporte à combinação de várias solicitações em uma única chamada para o serviço usando a opção de consulta $batch do OData. Para obter detalhes e links de amostras de código, confira Fazer solicitações em lote com APIs REST.

Recursos do OData

Tópicos do serviço REST do SharePoint

Use os recursos listados abaixo para saber mais sobre como usar o serviço REST do SharePoint.

Título Descrição
Realizar operações básicas usando os pontos de extremidade REST do SharePoint Realizar operações básicas de criação, leitura, atualização e exclusão (CRUD) com a interface REST do SharePoint.
Trabalhar com listas e itens de listas com REST Realizar operações básicas de criação, leitura, atualização e exclusão (CRUD) em listas e itens de lista com a interface REST do SharePoint.
Trabalhar com pastas e arquivos com REST Realizar operações básicas de criação, leitura, atualização e exclusão (CRUD) em pastas e arquivos com a interface REST do SharePoint.
Navegar pela estrutura de dados do SharePoint representada no serviço REST Começar por um ponto de extremidade REST de um determinado item do SharePoint, navegando até os itens relacionados e acessando tais itens, como sites pai ou a estrutura de biblioteca na qual o item reside.
Determinar as URIs de ponto de extremidade do serviço REST do SharePoint Diretrizes gerais para determinar URIs de ponto de extremidade REST SharePoint das APIs de assinatura do modelo de objeto cliente correspondente.
Usar operações de consulta OData em solicitações REST do SharePoint Usar uma ampla gama de operadores de cadeia de caracteres de consulta OData para selecionar, filtrar e organizar os dados que você solicita do serviço REST do SharePoint.
Faça solicitações em lote com as APIs REST Saiba como combinar várias solicitações em uma única chamada do serviço REST.
Sincronizar os itens do SharePoint usando o serviço REST Aprenda como sincronizar os itens entre o SharePoint e seus suplementos ou serviços usando o recurso GetListItemChangesSinceToken, parte do serviço REST do SharePoint.
Carregar um arquivo, usando a API REST e o jQuery Os exemplos de código neste artigo usam as solicitações jQuery AJAX e a interface REST para adicionar um arquivo local à biblioteca de Documentos e, em seguida, alterar as propriedades do item da lista que representa o arquivo carregado.
Definir permissões personalizadas em uma lista usando a interface REST Os sites, listas e itens de lista do SharePoint são tipos de SecurableObject, que herda as permissões do seu objeto pai. Para definir permissões personalizadas de um objeto, você precisará interromper a herança para que ele pare de herdar permissões do site pai e depois definir novas permissões adicionando ou removendo atribuições de função.
Conceitos básicos de fluxos de trabalho no SharePoint Adicione a funcionalidade de pesquisa e aplicativos móveis para os clientes usando o serviço de Pesquisa REST no SharePoint Server 2013 e em qualquer tecnologia compatível com os requisitos da Web para REST.
Referência de API REST de feed social para o SharePoint Saiba mais sobre pontos de extremidade REST do SharePoint para tarefas relacionadas a feeds.
Referência de API REST de seguir pessoas e conteúdo para o SharePoint Saiba mais sobre pontos de extremidade REST do SharePoint para o acompanhamento de pessoas e conteúdo.
Desenvolver Suplementos do SharePoint Localize artigos e recursos detalhados para ajudá-lo a criar funcionalidades avançadas nos seus Suplementos do SharePoint.