Trabalhar com listas e itens de listas com REST
Dica
O serviço REST do SharePoint Online (e o SharePoint 2016 e posterior no local) 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.
Pré-requisitos
Este tópico pressupõe que você já esteja familiarizado com os tópicos Conheça o serviço REST do Microsoft Office SharePoint Online e Concluir operações básicas usando pontos de extremidade REST do Microsoft Office SharePoint Online. Ele não fornece trechos de código.
Como recuperar listas e propriedades da lista com o REST
O exemplo a seguir mostra como recuperar uma lista específica, caso você tenha o GUID dela.
GET https://{site_url}/_api/web/lists(guid'{list_guid}')
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=verbose"
Observação
Se quiser a resposta em JSON, use application/json;odata=verbose
no cabeçalho Accept
.
Se quiser a resposta em formato Atom, use application/atom+xml
no cabeçalho Accept
.
O exemplo a seguir mostra como recuperar uma lista específica, caso você saiba o título dela.
GET https://{site_url}/_api/web/lists/GetByTitle('List Title')
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=verbose"
O XML a seguir mostra um exemplo das propriedades de lista que são retornadas quando você solicita o tipo de conteúdo de XML.
<content type="application/xml">
<m:properties>
<d:AllowContentTypes m:type="Edm.Boolean">true</d:AllowContentTypes>
<d:BaseTemplate m:type="Edm.Int32">100</d:BaseTemplate>
<d:BaseType m:type="Edm.Int32">0</d:BaseType>
<d:ContentTypesEnabled m:type="Edm.Boolean">false</d:ContentTypesEnabled>
<d:Created m:type="Edm.DateTime">2012-06-26T23:15:58Z</d:Created>
<d:DefaultContentApprovalWorkflowId m:type="Edm.Guid">00000000-0000-0000-0000-000000000000</d:DefaultContentApprovalWorkflowId>
<d:Description>A list created by Project Based Retention used to store Project Policy Items.</d:Description>
<d:Direction>none</d:Direction>
<d:DocumentTemplateUrl m:null="true" />
<d:DraftVersionVisibility m:type="Edm.Int32">0</d:DraftVersionVisibility>
<d:EnableAttachments m:type="Edm.Boolean">true</d:EnableAttachments>
<d:EnableFolderCreation m:type="Edm.Boolean">false</d:EnableFolderCreation>
<d:EnableMinorVersions m:type="Edm.Boolean">false</d:EnableMinorVersions>
<d:EnableModeration m:type="Edm.Boolean">false</d:EnableModeration>
<d:EnableVersioning m:type="Edm.Boolean">false</d:EnableVersioning>
<d:EntityTypeName>ProjectPolicyItemList</d:EntityTypeName>
<d:ForceCheckout m:type="Edm.Boolean">false</d:ForceCheckout>
<d:HasExternalDataSource m:type="Edm.Boolean">false</d:HasExternalDataSource>
<d:Hidden m:type="Edm.Boolean">true</d:Hidden>
<d:Id m:type="Edm.Guid">74de3ff3-029c-42f9-bd2a-1e9463def69d</d:Id>
<d:ImageUrl>/_layouts/15/images/itgen.gif</d:ImageUrl>
<d:IrmEnabled m:type="Edm.Boolean">false</d:IrmEnabled>
<d:IrmExpire m:type="Edm.Boolean">false</d:IrmExpire>
<d:IrmReject m:type="Edm.Boolean">false</d:IrmReject>
<d:IsApplicationList m:type="Edm.Boolean">false</d:IsApplicationList>
<d:IsCatalog m:type="Edm.Boolean">false</d:IsCatalog>
<d:IsPrivate m:type="Edm.Boolean">false</d:IsPrivate>
<d:ItemCount m:type="Edm.Int32">0</d:ItemCount>
<d:LastItemDeletedDate m:type="Edm.DateTime">2012-06-26T23:15:58Z</d:LastItemDeletedDate>
<d:LastItemModifiedDate m:type="Edm.DateTime">2012-06-26T23:15:59Z</d:LastItemModifiedDate>
<d:ListItemEntityTypeFullName>SP.Data.ProjectPolicyItemListItem</d:ListItemEntityTypeFullName>
<d:MultipleDataList m:type="Edm.Boolean">false</d:MultipleDataList>
<d:NoCrawl m:type="Edm.Boolean">true</d:NoCrawl>
<d:ParentWebUrl>/</d:ParentWebUrl>
<d:ServerTemplateCanCreateFolders m:type="Edm.Boolean">true</d:ServerTemplateCanCreateFolders>
<d:TemplateFeatureId m:type="Edm.Guid">00bfea71-de22-43b2-a848-c05709900100</d:TemplateFeatureId>
<d:Title>Project Policy Item List</d:Title>
</m:properties>
</content>
Observação
A ListItemEntityTypeFullName propriedade (SP.Data.ProjectPolicyItemListItem, no exemplo anterior) é especialmente importante se você quiser criar e atualizar itens de lista. Este valor deve ser passado como a propriedade type nos metadados passados no corpo da solicitação HTTP sempre que você criar e atualizar itens de lista.
Trabalhar com listas usando REST
O exemplo a seguir mostra como criar uma lista.
POST https://{site_url}/_api/web/lists
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=verbose"
Content-Type: "application/json"
Content-Length: {length of request body as integer}
X-RequestDigest: "{form_digest_value}"
{
"__metadata": {
"type": "SP.List"
},
"AllowContentTypes": true,
"BaseTemplate": 100,
"ContentTypesEnabled": true,
"Description": "My list description",
"Title": "Test"
}
O exemplo a seguir mostra como atualizar uma lista usando o método MERGE.
POST https://{site_url}/_api/web/lists(guid'{list_guid}')
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=verbose"
Content-Type: "application/json"
Content-Length: {length of request body as integer}
If-Match: "{etag or *}"
X-HTTP-Method: "MERGE"
X-RequestDigest: "{form_digest_value}"
{
"__metadata": {
"type": "SP.List"
},
"Title": "New title"
}
O exemplo a seguir mostra como criar um campo personalizado para uma lista.
POST https://{site_url}/_api/web/lists(guid'{list_guid}')/Fields
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=verbose"
Content-Type: "application/json"
Content-Length: {length of request body as integer}
X-RequestDigest: "{form_digest_value}"
{
"__metadata": {
"type": "SP.Field"
},
"Title": "field title",
"FieldTypeKind": FieldType value,
"Required": "true/false",
"EnforceUniqueValues": "true/false",
"StaticName": "field name"
}
O exemplo a seguir mostra como excluir uma lista.
POST https://{site_url}/_api/web/lists(guid'{list_guid}')
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=verbose"
If-Match: "{etag or *}"
X-HTTP-Method: "DELETE"
X-RequestDigest: "{form_digest_value}"
Alterações de coluna de pesquisa
Ao fazer referência a uma coluna de pesquisa dentro da lista usando API REST, use o nome de exibição de coluna de pesquisa em vez do nome interno.
GET https://{site_url}/_api/web/lists/getbytitle('ListName')/Items?&$filter=LookupColumnId eq 1
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=verbose"
Trabalhar com itens de lista usando REST
Recuperar todos os itens de lista
O exemplo a seguir mostra como recuperar todos os itens de uma lista.
Observação
- O parâmetro de consulta OData
$skip
não funciona ao consultar itens de lista. Em várias situações, é possível usar a opção $skiptoken. - Por padrão, os 100 primeiros itens serão retornados. Para saber mais sobre como controlar o número de itens, paginação, etc., confira a documentação sobre operações de consulta do OData
GET https://{site_url}/_api/web/lists/GetByTitle('Test')/items
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=verbose"
Recuperar um item de lista específico
O exemplo a seguir mostra como recuperar um item específico de lista.
GET https://{site_url}/_api/web/lists/GetByTitle('Test')/items({item_id})
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=verbose"
O XML a seguir mostra um exemplo das propriedades do item de lista que são retornadas quando você solicita o tipo de conteúdo XML.
<content type="application/xml">
<m:properties>
<d:FileSystemObjectType m:type="Edm.Int32">0</d:FileSystemObjectType>
<d:Id m:type="Edm.Int32">1</d:Id>
<d:ID m:type="Edm.Int32">1</d:ID>
<d:ContentTypeId>0x010049564F321A0F0543BA8C6303316C8C0F</d:ContentTypeId>
<d:Title>an item</d:Title>
<d:Modified m:type="Edm.DateTime">2012-07-24T22:47:26Z</d:Modified>
<d:Created m:type="Edm.DateTime">2012-07-24T22:47:26Z</d:Created>
<d:AuthorId m:type="Edm.Int32">11</d:AuthorId>
<d:EditorId m:type="Edm.Int32">11</d:EditorId>
<d:OData__UIVersionString>1.0</d:OData__UIVersionString>
<d:Attachments m:type="Edm.Boolean">false</d:Attachments>
<d:GUID m:type="Edm.Guid">eb6850c5-9a30-4636-b282-234eda8b1057</d:GUID>
</m:properties>
</content>
Obter itens como um fluxo
Obtém informações sobre a lista e seus dados. Usando esta API, você pode obter itens de lista caso eles usem campos complexos como pesquisas ou metadados gerenciados.
POST https://{site_url}/_api/web/GetList(@listUrl)/RenderListDataAsStream?@listUrl=%27%2Fsites%2Fteam-a%2Flists%2FList%27
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=nometadata"
Content-Type: "application/json;odata=nometadata"
{
"parameters": {
"AddRequiredFields": "true",
"DatesInUtc": "true",
"RenderOptions": 17
}
}
Parâmetros de URI RenderListDataAsStream
As propriedades a seguir podem ser adicionadas como parâmetros de cadeia de caracteres de consulta para manipular os dados retornados.
Propriedade | Descrição | Tipo | Exemplo |
---|---|---|---|
CascDelWarnMessage |
Especifica se uma mensagem deve ser exibida se houver um aviso de exclusão em cascata | number | 1 |
DrillDown |
Especifica que alguns grupos em uma exibição agrupada estão expandidos. Usado com GroupString . |
string | |
GroupString |
Identificador de grupo usado para o recurso de busca detalhada. | string | |
HasOverrideSelectCommand |
Usado para garantir que determinados campos estejam presentes para funcionamento correto do controle ListView do SharePoint. | string | |
Field |
Especifica um campo especial que deve estar incluído. | string | |
FieldInternalName |
Usado para identificar um campo quando uma lista tem uma fonte de dados externa. Também usado ao filtrar em um campo personalizado. | string | |
Filter |
Especifica se o modo de exibição solicitado deve ter um filtro aplicado. | string | |
FilterData |
Dados especificados por um filtro específico. | string | |
FilterData1 |
Dados especificados por um filtro específico. | string | |
FilterData2 |
Dados especificados por um filtro específico. | string | |
FilterData3 |
Dados especificados por um filtro específico. | string | |
FilterData4 |
Dados especificados por um filtro específico. | string | |
FilterData5 |
Dados especificados por um filtro específico. | string | |
FilterData6 |
Dados especificados por um filtro específico. | string | |
FilterData7 |
Dados especificados por um filtro específico. | string | |
FilterData8 |
Dados especificados por um filtro específico. | string | |
FilterData9 |
Dados especificados por um filtro específico. | string | |
FilterData10 |
Dados especificados por um filtro específico. | string | |
FilterField |
Um nome de campo de filtro de um filtro específico aplicado ao modo de exibição. | string | |
FilterField1 |
Um nome de campo de filtro de um filtro específico aplicado ao modo de exibição. | string | ID |
FilterField2 |
Um nome de campo de filtro de um filtro específico aplicado ao modo de exibição. | string | ID |
FilterField3 |
Um nome de campo de filtro de um filtro específico aplicado ao modo de exibição. | string | ID |
FilterField4 |
Um nome de campo de filtro de um filtro específico aplicado ao modo de exibição. | string | ID |
FilterField5 |
Um nome de campo de filtro de um filtro específico aplicado ao modo de exibição. | string | ID |
FilterField6 |
Um nome de campo de filtro de um filtro específico aplicado ao modo de exibição. | string | ID |
FilterField7 |
Um nome de campo de filtro de um filtro específico aplicado ao modo de exibição. | string | ID |
FilterField8 |
Um nome de campo de filtro de um filtro específico aplicado ao modo de exibição. | string | ID |
FilterField9 |
Um nome de campo de filtro de um filtro específico aplicado ao modo de exibição. | string | ID |
FilterField10 |
Um nome de campo de filtro de um filtro específico aplicado ao modo de exibição. | string | ID |
FilterFields |
Especifica vários campos que estão sendo filtrados em um filtro multiplicador. | string | |
FilterFields1 |
Especifica vários campos que estão sendo filtrados em um filtro multiplicador. | string | |
FilterFields2 |
Especifica vários campos que estão sendo filtrados em um filtro multiplicador. | string | |
FilterFields3 |
Especifica vários campos que estão sendo filtrados em um filtro multiplicador. | string | |
FilterFields4 |
Especifica vários campos que estão sendo filtrados em um filtro multiplicador. | string | |
FilterFields5 |
Especifica vários campos que estão sendo filtrados em um filtro multiplicador. | string | |
FilterFields6 |
Especifica vários campos que estão sendo filtrados em um filtro multiplicador. | string | |
FilterFields7 |
Especifica vários campos que estão sendo filtrados em um filtro multiplicador. | string | |
FilterFields8 |
Especifica vários campos que estão sendo filtrados em um filtro multiplicador. | string | |
FilterFields9 |
Especifica vários campos que estão sendo filtrados em um filtro multiplicador. | string | |
FilterFields10 |
Especifica vários campos que estão sendo filtrados em um filtro multiplicador. | string | |
FilterValue |
O valor do filtro associado a um filtro específico. Por exemplo, FilterField3 acompanha FilterValue3, e assim por diante. | string | |
FilterValue1 |
O valor do filtro associado a um filtro específico. Por exemplo, FilterField3 acompanha FilterValue3, e assim por diante. | string | 1 |
FilterValue2 |
O valor do filtro associado a um filtro específico. Por exemplo, FilterField3 acompanha FilterValue3, e assim por diante. | string | 1 |
FilterValue3 |
O valor do filtro associado a um filtro específico. Por exemplo, FilterField3 acompanha FilterValue3, e assim por diante. | string | 1 |
FilterValue4 |
O valor do filtro associado a um filtro específico. Por exemplo, FilterField3 acompanha FilterValue3, e assim por diante. | string | 1 |
FilterValue5 |
O valor do filtro associado a um filtro específico. Por exemplo, FilterField3 acompanha FilterValue3, e assim por diante. | string | 1 |
FilterValue6 |
O valor do filtro associado a um filtro específico. Por exemplo, FilterField3 acompanha FilterValue3, e assim por diante. | string | 1 |
FilterValue7 |
O valor do filtro associado a um filtro específico. Por exemplo, FilterField3 acompanha FilterValue3, e assim por diante. | string | 1 |
FilterValue8 |
O valor do filtro associado a um filtro específico. Por exemplo, FilterField3 acompanha FilterValue3, e assim por diante. | string | 1 |
FilterValue9 |
O valor do filtro associado a um filtro específico. Por exemplo, FilterField3 acompanha FilterValue3, e assim por diante. | string | 1 |
FilterValue10 |
O valor do filtro associado a um filtro específico. Por exemplo, FilterField3 acompanha FilterValue3, e assim por diante. | string | 1 |
FilterValues |
Usado com FilterFields para filtro multiplicador. Por exemplo, FilterFields3 acompanharia FilterValues3 e assim por diante. | string | |
FilterValues1 |
Usado com FilterFields para filtro multiplicador. Por exemplo, FilterFields3 acompanharia FilterValues3 e assim por diante. | string | |
FilterValues2 |
Usado com FilterFields para filtro multiplicador. Por exemplo, FilterFields3 acompanharia FilterValues3 e assim por diante. | string | |
FilterValues3 |
Usado com FilterFields para filtro multiplicador. Por exemplo, FilterFields3 acompanharia FilterValues3 e assim por diante. | string | |
FilterValues4 |
Usado com FilterFields para filtro multiplicador. Por exemplo, FilterFields3 acompanharia FilterValues3 e assim por diante. | string | |
FilterValues5 |
Usado com FilterFields para filtro multiplicador. Por exemplo, FilterFields3 acompanharia FilterValues3 e assim por diante. | string | |
FilterValues6 |
Usado com FilterFields para filtro multiplicador. Por exemplo, FilterFields3 acompanharia FilterValues3 e assim por diante. | string | |
FilterValues7 |
Usado com FilterFields para filtro multiplicador. Por exemplo, FilterFields3 acompanharia FilterValues3 e assim por diante. | string | |
FilterValues8 |
Usado com FilterFields para filtro multiplicador. Por exemplo, FilterFields3 acompanharia FilterValues3 e assim por diante. | string | |
FilterValues9 |
Usado com FilterFields para filtro multiplicador. Por exemplo, FilterFields3 acompanharia FilterValues3 e assim por diante. | string | |
FilterValues10 |
Usado com FilterFields para filtro multiplicador. Por exemplo, FilterFields3 acompanharia FilterValues3 e assim por diante. | string | |
FilterLookupId |
Usado ao filtrar em um campo de pesquisa. Esta é a ID do item na lista estrangeira que tem um valor que está sendo filtrado. | string | |
FilterLookupId1 |
Usado ao filtrar em um campo de pesquisa. Esta é a ID do item na lista estrangeira que tem um valor que está sendo filtrado. | string | |
FilterLookupId2 |
Usado ao filtrar em um campo de pesquisa. Esta é a ID do item na lista estrangeira que tem um valor que está sendo filtrado. | string | |
FilterLookupId3 |
Usado ao filtrar em um campo de pesquisa. Esta é a ID do item na lista estrangeira que tem um valor que está sendo filtrado. | string | |
FilterLookupId4 |
Usado ao filtrar em um campo de pesquisa. Esta é a ID do item na lista estrangeira que tem um valor que está sendo filtrado. | string | |
FilterLookupId5 |
Usado ao filtrar em um campo de pesquisa. Esta é a ID do item na lista estrangeira que tem um valor que está sendo filtrado. | string | |
FilterLookupId6 |
Usado ao filtrar em um campo de pesquisa. Esta é a ID do item na lista estrangeira que tem um valor que está sendo filtrado. | string | |
FilterLookupId7 |
Usado ao filtrar em um campo de pesquisa. Esta é a ID do item na lista estrangeira que tem um valor que está sendo filtrado. | string | |
FilterLookupId8 |
Usado ao filtrar em um campo de pesquisa. Esta é a ID do item na lista estrangeira que tem um valor que está sendo filtrado. | string | |
FilterLookupId9 |
Usado ao filtrar em um campo de pesquisa. Esta é a ID do item na lista estrangeira que tem um valor que está sendo filtrado. | string | |
FilterLookupId10 |
Usado ao filtrar em um campo de pesquisa. Esta é a ID do item na lista estrangeira que tem um valor que está sendo filtrado. | string | |
FilterOnly |
string | ||
FilterOp |
Operador de filtro. Usado ao filtrar com outros operadores que não sejam Eq (Geq , Leq , etc.) |
string | Geq |
FilterOp1 |
Operador de filtro. Usado ao filtrar com outros operadores que não sejam Eq (Geq , Leq , etc.) |
string | Geq |
FilterOp2 |
Operador de filtro. Usado ao filtrar com outros operadores que não sejam Eq (Geq , Leq , etc.) |
string | Geq |
FilterOp3 |
Operador de filtro. Usado ao filtrar com outros operadores que não sejam Eq (Geq , Leq , etc.) |
string | Geq |
FilterOp4 |
Operador de filtro. Usado ao filtrar com outros operadores que não sejam Eq (Geq , Leq , etc.) |
string | Geq |
FilterOp5 |
Operador de filtro. Usado ao filtrar com outros operadores que não sejam Eq (Geq , Leq , etc.) |
string | Geq |
FilterOp6 |
Operador de filtro. Usado ao filtrar com outros operadores que não sejam Eq (Geq , Leq , etc.) |
string | Geq |
FilterOp7 |
Operador de filtro. Usado ao filtrar com outros operadores que não sejam Eq (Geq , Leq , etc.) |
string | Geq |
FilterOp8 |
Operador de filtro. Usado ao filtrar com outros operadores que não sejam Eq (Geq , Leq , etc.) |
string | Geq |
FilterOp9 |
Operador de filtro. Usado ao filtrar com outros operadores que não sejam Eq (Geq , Leq , etc.) |
string | Geq |
FilterOp10 |
Operador de filtro. Usado ao filtrar com outros operadores que não sejam Eq (Geq , Leq , etc.) |
string | Geq |
ID |
A ID do item cujas informações estão sendo buscadas. | number | |
InplaceSearchQuery |
Termo de pesquisa para uma pesquisa de lista completa. | string | |
InplaceFullListSearch |
Um valor booliano que especifica se há uma pesquisa de lista completa. | string | |
IsCSR |
Se esse modo de exibição for um modo de exibição renderizado do lado do cliente. | string | |
CustomAction |
string | ||
IsGroupRender |
Usado para definir a propriedade IsGroupRender do SPView. | string | |
IsRibbon |
string | ||
IsXslView |
Se esse modo de exibição for um modo de exibição de lista xslt. | string | |
List |
string | ||
ListId |
string | ||
ListViewPageUrl |
string | ||
OverrideScope |
Usado para substituir um escopo no modo de exibição renderizado: SPView.Scope | string | |
OverrideSelectCommand |
Usado para garantir que certos campos estejam presentes na consulta, independentemente de estarem explicitamente incluídos na exibição. | string | |
PageFirstRow |
Informações de paginação sobre a primeira linha solicitada. Usado para modos de exibição de lista de paginação. | string | |
PageLastRow |
Informações de paginação sobre a última linha solicitada. Usado para modos de exibição de lista de paginação. | string | |
RootFolder |
A pasta que o modo de exibição está exibindo. | string | |
SortField |
Um campo no qual o modo de exibição deve ser classificado. | string | ID |
SortField1 |
Um campo no qual o modo de exibição deve ser classificado. | string | ID |
SortField2 |
Um campo no qual o modo de exibição deve ser classificado. | string | ID |
SortField3 |
Um campo no qual o modo de exibição deve ser classificado. | string | ID |
SortField4 |
Um campo no qual o modo de exibição deve ser classificado. | string | ID |
SortField5 |
Um campo no qual o modo de exibição deve ser classificado. | string | ID |
SortField6 |
Um campo no qual o modo de exibição deve ser classificado. | string | ID |
SortField7 |
Um campo no qual o modo de exibição deve ser classificado. | string | ID |
SortField8 |
Um campo no qual o modo de exibição deve ser classificado. | string | ID |
SortField9 |
Um campo no qual o modo de exibição deve ser classificado. | string | ID |
SortField10 |
Um campo no qual o modo de exibição deve ser classificado. | string | ID |
SortFields |
Especifica o nome do primeiro campo pelo qual classificar | string | |
SortFieldValues |
Especifica o nome do primeiro campo pelo qual classificar | string | |
SortDir |
A direção de classificação da classificação ad-hoc aplicada ao modo de exibição. | string | Desc |
SortDir1 |
A direção de classificação da classificação ad-hoc aplicada ao modo de exibição. | string | Desc |
SortDir2 |
A direção de classificação da classificação ad-hoc aplicada ao modo de exibição. | string | Desc |
SortDir3 |
A direção de classificação da classificação ad-hoc aplicada ao modo de exibição. | string | Desc |
SortDir4 |
A direção de classificação da classificação ad-hoc aplicada ao modo de exibição. | string | Desc |
SortDir5 |
A direção de classificação da classificação ad-hoc aplicada ao modo de exibição. | string | Desc |
SortDir6 |
A direção de classificação da classificação ad-hoc aplicada ao modo de exibição. | string | Desc |
SortDir7 |
A direção de classificação da classificação ad-hoc aplicada ao modo de exibição. | string | Desc |
SortDir8 |
A direção de classificação da classificação ad-hoc aplicada ao modo de exibição. | string | Desc |
SortDir9 |
A direção de classificação da classificação ad-hoc aplicada ao modo de exibição. | string | Desc |
SortDir10 |
A direção de classificação da classificação ad-hoc aplicada ao modo de exibição. | string | Desc |
View |
Especifica o modo de exibição base que será usado para renderizar a lista. | GUID | 3d13559e-3071-5000-76b8-8f1ca6b835f0 |
ViewPath |
Especifica o caminho do modo de exibição que será usado para renderizar a lista. Se ViewId for fornecido, ViewId será usado e este parâmetro será ignorado. |
string | |
ViewCount |
Quando vários modos de exibição de lista estão em uma página, isso identifica um deles. | string | |
ViewId |
Especifica o modo de exibição base que será usado para renderizar a lista. parâmetros ad-hoc serão aplicados a esse modo de exibição. Se tanto ViewXml como BaseViewId forem fornecidos, ViewXml será usado e os parâmetros ad-hoc serão ignorados. |
string | |
WebPartId |
A ID da web part do modo de exibição de lista que está exibindo esse modo de exibição. | string |
Propriedades do parâmetro do corpo RenderListDataAsStream
Propriedade | Descrição | Tipo | Exemplo |
---|---|---|---|
AddRequiredFields |
Especifica se os campos necessários deverão ser retornados ou não | bool | true |
AllowMultipleValueFilterForTaxonomyFields |
Especifica se a filtragem por vários valores é permitida ou não para campos de taxonomia | bool | true |
DatesInUtc |
Especifica se retornamos o campo DateTime na hora local ou UTC. | bool | true |
ExpandGroups |
Especifica se o agrupamento deve ser expandido ou não. | bool | true |
FirstGroupOnly |
Especifica se apenas o primeiro grupo deve ser retornado ou não (independentemente do esquema de modo de exibição). | bool | true |
FolderServerRelativeUrl |
Especifica a URL da pasta da qual os itens serão retornados. | string | /sites/team-a/lists/Orders/Europe |
ImageFieldsToTryRewriteToCdnUrls |
Lista separada por vírgulas dos nomes de campos cujos valores devem ser reescritos como URLs de CDN | string | ArticleImage,SecondaryImage |
OverrideViewXml |
Especifica o XML de substituição a ser combinado com o CAML do modo de exibição. Só é aplicável à parte Query/Where do CAML do modo de exibição. |
string | <Query><Where><Gt><FieldRef Name=\"OrderCount\" /><Value Type=\"Number\">3</Value></Gt></Where></Query> |
Paging |
Especifica as informações de paginação. | string | |
RenderOptions |
Especifica o tipo de saída a retornar. | SPRenderListDataOptions | Confira a próxima seção para ver os valores possíveis. Você pode especificar vários valores somando os valores deles |
ReplaceGroup |
Especifica se o agrupamento deve ser substituído ou não para lidar com a limitação de GroupBy. | bool | true |
ViewXml |
Especifica o XML da exibição CAML. | string |
Opções do SPRenderListDataOptions
Rótulo | Descrição | Valor |
---|---|---|
None |
Retornar um resultado padrão | 0 |
ContextInfo |
Retornar informações de contexto da lista | 1 |
ListData |
Retornar dados de lista (o mesmo que None ) |
2 |
ListSchema |
Retornar o esquema da lista | 4 |
MenuView |
Retornar HTML do menu de listas | 8 |
ListContentType |
Retorna informações sobre tipos de conteúdo de lista. Deve ser combinada com o sinalizador ContextInfo |
16 |
FileSystemItemId |
A lista retornada terá um campo FileSystemItemId em cada item, se possível. Deve ser combinada com o sinalizador ListData |
32 |
ClientFormSchema |
Retorna o esquema de formulário do cliente para adicionar e editar itens | 64 |
QuickLaunch |
Retorna nós de navegação de início rápido | 128 |
Spotlight |
Retorna informações de renderização do Spotlight | 256 |
Visualization |
Retorna informações de renderização de Visualização | 512 |
ViewMetadata |
Retorna o XML de exibição e outras informações sobre a exibição atual | 1024 |
DisableAutoHyperlink |
Impede que o AutoHyperlink seja executado nos campos de texto nesta consulta | 2048 |
EnableMediaTAUrls |
Habilita URLs que apontam para o serviço Media TA, como .thumbnailUrl , .videoManifestUrl , .pdfConversionUrls |
4096 |
ParentInfo |
Retorna informações da pasta pai | 8192 |
PageContextInfo |
Retorna informações de contexto da página para a lista atual que está sendo renderizada | 16384 |
ClientSideComponentManifest |
Retornar informações de manifesto do componente do lado do cliente associadas à lista (reservado para uso futuro) | 32768 |
Exemplos
Recuperar item com uma ID específica
POST https://{site_url}/sites/team-a/_api/web/GetList(@listUrl)/RenderListDataAsStream?@listUrl=%27%2Fsites%2Fteam-a%2Flists%2FList%27&FilterField1=ID&FilterValue1=1
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=nometadata"
...
Classificar itens em ordem decrescente por ID
POST https://{site_url}/sites/team-a/_api/web/GetList(@listUrl)/RenderListDataAsStream?@listUrl=%27%2Fsites%2Fteam-a%2Flists%2FList%27&SortField=ID&SortDir=Desc
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=nometadata"
...
Recuperar itens da pasta especificada
POST https://{site_url}/sites/team-a/_api/web/GetList(@listUrl)/RenderListDataAsStream?@listUrl=%27%2Fsites%2Fteam-a%2Flists%2FOrders%27
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=nometadata"
Content-Type: "application/json"
{
"parameters": {
"FolderServerRelativeUrl": "/sites/team-a/lists/Orders/Europe"
}
}
Recuperar o esquema da lista
POST https://{site_url}/sites/team-a/_api/web/GetList(@listUrl)/RenderListDataAsStream?@listUrl=%27%2Fsites%2Fteam-a%2Flists%2FList%27
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=nometadata"
Content-Type: "application/json"
{
"parameters": {
"RenderOptions": 4
}
}
Recuperar informações sobre tipos de conteúdo de lista
POST https://{site_url}/sites/team-a/_api/web/GetList(@listUrl)/RenderListDataAsStream?@listUrl=%27%2Fsites%2Fteam-a%2Flists%2FList%27
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=nometadata"
Content-Type: "application/json"
{
"parameters": {
"RenderOptions": 17
}
}
Criar item de lista
O exemplo a seguir mostra como criar um item de lista.
Observação
Para fazer essa operação, você deve saber a propriedade ListItemEntityTypeFullName da lista e passá-lo como o valor do type no corpo da solicitação HTTP. A seguir, uma chamada rest de exemplo para obter o ListItemEntityTypeFullName
GET https://{site_url}/_api/web/lists/GetByTitle('Test')?$select=ListItemEntityTypeFullName
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=nometadata"
POST https://{site_url}/_api/web/lists/GetByTitle('Test')/items
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=verbose"
Content-Type: "application/json;odata=verbose"
Content-Length: {length of request body as integer}
X-RequestDigest: "{form_digest_value}"
{
"__metadata": {
"type": "SP.Data.TestListItem"
},
"Title": "Test"
}
Criar item de lista em uma pasta
O exemplo a seguir mostra como criar um item de lista na pasta.
POST https://{site_url}/_api/web/lists/GetByTitle('Test')/AddValidateUpdateItemUsingPath
Authorization: "Bearer " + accessToken
Accept "application/json;odata=nometadata"
Content-Type "application/json;odata=nometadata"
X-RequestDigest "The appropriate digest for current site"
{
"listItemCreateInfo": {
"FolderPath": {
"DecodedUrl": "https://{site_url}/lists/Test/Folder/SubFolder"
},
"UnderlyingObjectType": 0
},
"formValues": [
{
"FieldName": "Title",
"FieldValue": "Item"
}
],
"bNewDocumentUpdate": false
}
Solicitar detalhes da propriedade
Propriedade | Descrição |
---|---|
listItemCreateInfo |
Informações sobre a lista e a pasta onde o item deve ser criado |
listItemCreateInfo.FolderPath.DecodedUrl |
URL absoluta da pasta onde o item deve ser criado |
listItemCreateInfo.UnderlyingObjectType |
Tipo do item a ser criado. Para obter mais informações, confira FileSystemObjectType |
formValues |
Matriz de nomes de campos e valores a definir no item recém-criado |
bNewDocumentUpdate |
Definir como false para criar um item de lista |
Respostas
Nome | Tipo | Descrição |
---|---|---|
200 OK | Boolean | Êxito |
{
"value": [
{
"ErrorMessage": null,
"FieldName": "Title",
"FieldValue": "Item",
"HasException": false,
"ItemId": 0
},
{
"ErrorMessage": null,
"FieldName": "Id",
"FieldValue": "1",
"HasException": false,
"ItemId": 0
}
]
}
A propriedade value
contém a lista de propriedades que foram definidas ao criar o item de lista.
Atualizar item de lista
O exemplo a seguir mostra como atualizar um item de lista.
Observação
Para fazer essa operação, você deve saber a propriedade ListItemEntityTypeFullName da lista e passá-lo como o valor do type no corpo da solicitação HTTP.
POST https://{site_url}/_api/web/lists/GetByTitle('Test')/items({item_id})
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=verbose"
Content-Type: "application/json"
Content-Length: {length of request body as integer}
If-Match: "{etag or *}"
X-HTTP-Method: "MERGE"
X-RequestDigest: "{form_digest_value}"
{
"__metadata": {
"type": "SP.Data.TestListItem"
},
"Title": "TestUpdated"
}
Excluir item de lista
O exemplo a seguir mostra como excluir um item de lista.
POST https://{site_url}/_api/web/lists/GetByTitle('Test')/items({item_id})
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=verbose"
Content-Type: "application/json"
If-Match: "{etag or *}"
X-HTTP-Method: "DELETE"
Usando valores ETag para determinar as versões do documento e do item de lista
O serviço REST do SharePoint, que segue o padrão OData, usa ETags de Cabeçalho de listas do SharePoint e itens de lista. Para verificar na versão de um item onde você realiza uma solicitação PUT, MERGE ou DELETE, especifique ETag no cabeçalho de solicitação HTTP If-Match.
Se o ETag especificado em sua solicitação não corresponder ao ETag do item de documento ou lista no servidor, o serviço REST retornará uma exceção 412, conforme a especificação do OData.
- Para forçar uma substituição do item independentemente da versão, defina o valor ETag como "*".
- Se você não especificar um ETag, o SharePoint substitui o item independentemente da versão.
No SharePoint, as ETags se aplicam apenas a listas do SharePoint e itens de lista.
Confira também
- Conheça o serviço REST do SharePoint
- SharePoint-Add-in-REST-OData-BasicDataOperations
- SharePoint: Realizar operações básicas de acesso a dados em arquivos e pastas usando REST
- Proteger acesso a dados e modelos de objeto cliente para suplementos do SharePoint
- Utilizar dados externos no SharePoint
- Recursos de OData
- Desenvolver suplementos do SharePoint