Recherche pour les éléments de lecteur dans un lecteur

Espace de noms: microsoft.graph

Importante

Les API sous la version /beta dans Microsoft Graph sont susceptibles d’être modifiées. L’utilisation de ces API dans des applications de production n’est pas prise en charge. Pour déterminer si une API est disponible dans v1.0, utilisez le sélecteur Version .

Recherchez la hiérarchie des éléments pour des éléments correspondant à une requête. Vous pouvez effectuer une recherche dans une hiérarchie de dossiers, un lecteur entier ou des fichiers partagés avec l’utilisateur actuel.

Autorisations

Choisissez l’autorisation ou les autorisations marquées comme moins privilégiées pour cette API. Utilisez une autorisation ou des autorisations privilégiées plus élevées uniquement si votre application en a besoin. Pour plus d’informations sur les autorisations déléguées et d’application, consultez Types d’autorisations. Pour en savoir plus sur ces autorisations, consultez les informations de référence sur les autorisations.

Type d’autorisation Autorisations avec privilèges minimum Autorisations privilégiées plus élevées
Déléguée (compte professionnel ou scolaire) Files.Read Files.Read.All, Files.ReadWrite, Files.ReadWrite.All, Sites.Read.All, Sites.ReadWrite.All
Déléguée (compte Microsoft personnel) Files.Read Files.Read.All, Files.ReadWrite, Files.ReadWrite.All
Application Files.Read.All Files.ReadWrite.All, Sites.Read.All, Sites.ReadWrite.All

Remarque : Cette méthode ne prend pas en charge l’autorisation d’application Sites.Selected.

Requête 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}')

Paramètres facultatifs de la requête

Cette méthode prend en charge les $expandparamètres de requête , $select$skipToken, $top, et $orderbyOData pour personnaliser la réponse.

Paramètres de fonction

Paramètre Type Description
q string Texte de requête utilisé pour rechercher des éléments. Les valeurs peuvent être mises en correspondance sur plusieurs champs, y compris le nom de fichier, les métadonnées et le contenu du fichier.

Exemple

Demande

L’exemple suivant recherche un résultat pour « Projet Contoso » dans plusieurs champs dans les éléments du drive de l’utilisateur connecté.

GET /me/drive/root/search(q='Contoso Project')

Réponse

Cette méthode renvoie un objet qui contient une collection d’objets DriveItem qui correspondent aux critères de recherche. Si aucun élément n’est trouvé, une collection vide est renvoyée.

S’il y a trop de correspondances, la réponse sera être paginée et une propriété @odata.nextLink contiendra une URL vers la page de résultats suivante. Vous pouvez utiliser le paramètre de requête $top pour spécifier le nombre d’éléments dans la page.

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"
}

Recherche d’éléments auxquels peut accéder un utilisateur

Outre la recherche d’éléments dans un lecteur, votre application peut effectuer une recherche plus large pour inclure des éléments partagés avec l’utilisateur actuel. Pour élargir l’étendue de recherche, utilisez la méthode de recherche sur la ressource Drive.

Exemple

GET /me/drive/search(q='Contoso Project')

Réponse

Les réponses lors de la recherche à partir de la ressource drive peuvent inclure des éléments à l’extérieur du lecteur (éléments partagés avec l’utilisateur actuel). Ces éléments incluront la facette remoteItem pour indiquer qu’ils sont stockés en dehors du lecteur cible.

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", "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"
}

Réponses d’erreur

Pour plus d’informations sur la façon dont les erreurs sont renvoyées, voir Réponses d’erreur.