Compartilhar via


Pesquisar um DriveItem em uma unidade

Pesquise a hierarquia de itens para itens que correspondam a uma consulta. Você pode pesquisar em uma hierarquia de pastas, uma unidade inteira ou arquivos compartilhados com o usuário atual.

Permissões

Uma das seguintes permissões é necessária para chamar esta API. Para saber mais, incluindo como escolher permissões, confira Permissões.

Tipo de permissão Permissões (da com menos para a com mais privilégios)
Delegado (conta corporativa ou de estudante) Files.Read, Files.ReadWrite, Files.Read.All, Files.ReadWrite.All, Sites.Read.All, Sites.ReadWrite.All
Delegado (conta pessoal da Microsoft) Files.Read, Files.ReadWrite, Files.Read.All, Files.ReadWrite.All
Aplicativo Files.Read.All, Files.ReadWrite.All, Sites.Read.All, Sites.ReadWrite.All

Solicitação HTTP

GET /drives/{drive-id}/root/search(q='{search-text}')
GET /groups/{group-id}/drive/root/search(q='{search-text}')
GET /me/drive/root/search(q='{search-text}')
GET /sites/{site-id}/drive/root/search(q='{search-text}')
GET /users/{user-id}/drive/root/search(q='{search-text}')

Parâmetros de consulta opcionais

Este método suporta os $expandparâmetros de consulta , $select, $skipToken, $tope $orderbyOData para personalizar a resposta.

Parâmetros de função

Nome Valor Descrição
q string O texto de consulta usado para pesquisar itens. Os valores podem ser correspondidos em vários campos, incluindo nome do arquivo, metadados e conteúdo do arquivo.

Exemplo

Solicitação

Aqui está um exemplo da solicitação de que pesquisa o OneDrive do usuário atual

GET /me/drive/root/search(q='{search-query}')

Resposta

Este método retorna um objeto que contém uma coleção de DriveItems que correspondem aos critérios de pesquisa. Se não forem encontrados itens, uma coleção vazia será retornada.

Se houver muitas correspondências, a resposta será paginada, e uma propriedade @odata.nextLink conterá uma URL para a próxima página de resultados. Você pode usar o parâmetro de consulta $top para especificar o número de itens na página.

HTTP/1.1 200 OK
Content-type: application/json

{
    "value": [
      {
        "id": "0123456789abc!123",
        "name": "Contoso Project",
        "folder": {},
        "searchResult": { "onClickTelemetryUrl": "https://bing.com/0123456789abc!123" }
      },
      {
        "id": "0123456789abc!456",
        "name": "Contoso Project 2016",
        "folder": {},
        "searchResult": { "onClickTelemetryUrl": "https://bing.com/0123456789abc!456" }
      }
    ],
    "@odata.nextLink": "https://graph.microsoft.com/v1.0/me/drive/root/search(query='contoso project')&skipToken=1asdlnjnkj1nalkm!asd"
}

Pesquisando itens que um usuário pode acessar

Além de procurar itens em uma unidade, seu aplicativo pode pesquisar amplamente para incluir itens compartilhados com o usuário atual. Para ampliar o escopo da pesquisa, use o método search no recurso Drive.

Exemplo

GET /me/drive/search(q='{search-query}')

Resposta

As respostas ao pesquisar por meio do recurso drive podem incluir itens fora da unidade (itens compartilhados com o usuário atual). Estes itens incluirão a faceta remoteItem para indicar que estão armazenados fora da unidade de destino.

HTTP/1.1 200 OK
Content-type: application/json

{
    "value": [
      {
        "id": "0123456789abc!123",
        "name": "Contoso Project",
        "folder": {},
        "searchResult": { "onClickTelemetryUrl": "https://bing.com/0123456789abc!123" },
        "remoteItem": { "id": "!23141901", "parentReference": { "driveId": "s!1020101jlkjl12lx" } }
      },
      {
        "id": "0123456789abc!456",
        "name": "Contoso Project 2016",
        "folder": {},
        "searchResult": { "onClickTelemetryUrl": "https://bing.com/0123456789abc!456" }
      }
    ],
    "@odata.nextLink": "https://graph.microsoft.com/v1.0/me/drive/root/search(query='contoso project')&skipToken=1asdlnjnkj1nalkm!asd"
}

Comentários

Observação: No OneDrive for Business e no SharePoint, ao pesquisar em uma hierarquia de pastas, os tipos de arquivo de imagem podem não ser retornados nos resultados.

Respostas de erros

Confira Respostas de Erros para saber mais sobre como os erros retornam.