- Requête HTTP
- Corps de la requête
- Corps de la réponse
- Champs d'application des autorisations
- QueryInterpretationOptions
- QueryInterpretation
- QueryInterpretation.InterpretationType
- QueryInterpretation.Reason
- SearchResult
- Extrait
- MatchRange
- Métadonnées
- ResultDisplayMetadata
- ResultDisplayMetadata.ResultDisplayLine
- ResultDisplayMetadata.ResultDisplayField
- ResultDebugInfo
- StructuredResult
- SpellResult
- FacetResult
- FacetBucket
- ResponseDebugInfo
- ErrorInfo
- ErrorMessage
- ResultCounts
- SourceResultCount
- Essayer
L'API Cloud Search Query fournit la méthode de recherche, qui renvoie les résultats les plus pertinents d'une requête utilisateur. Les résultats peuvent provenir d'applications Google Workspace, comme Gmail ou Google Drive, ou de données que vous avez indexées à partir d'un tiers.
Remarque:Pour s'exécuter, cette API nécessite un compte utilisateur final standard. Un compte de service ne peut pas effectuer directement de requêtes à l'API Query. Pour utiliser un compte de service pour effectuer des requêtes, configurez la délégation d'autorité au niveau du domaine Google Workspace.
Requête HTTP
POST https://cloudsearch.googleapis.com/v1/query/search
L'URL utilise la syntaxe de transcodage gRPC.
Corps de la requête
Le corps de la requête contient des données présentant la structure suivante :
Représentation JSON |
---|
{ "requestOptions": { object ( |
Champs | |
---|---|
requestOptions |
Options de requête, telles que l'application de recherche et le fuseau horaire de l'utilisateur. |
query |
Chaîne de requête brute. Consultez les opérateurs de recherche compatibles dans Affiner votre recherche à l'aide d'opérateurs. |
pageSize |
Nombre maximal de résultats de recherche à renvoyer sur une page. Les valeurs valides sont comprises entre 1 et 100, inclus. La valeur par défaut est 10. La valeur minimale est de 50 lorsque des résultats au-delà de 2 000 sont demandés. |
start |
Index de début des résultats. |
dataSourceRestrictions[] |
Sources à utiliser pour les requêtes. Si ce paramètre n'est pas spécifié, toutes les sources de données de l'application de recherche actuelle sont utilisées. |
facetOptions[] |
|
sortOptions |
Options de tri des résultats de recherche |
queryInterpretationOptions |
options pour interpréter la requête de l'utilisateur. |
contextAttributes[] |
Attributs de contexte de la requête qui seront utilisés pour ajuster le classement des résultats de recherche. Le nombre maximal d'éléments est de 10. |
Corps de la réponse
Si la requête aboutit, le corps de la réponse contient des données qui ont la structure suivante :
Réponse de l'API Search.
Représentation JSON |
---|
{ "queryInterpretation": { object ( |
Champs | |
---|---|
queryInterpretation |
Résultat de l'interprétation de la requête de l'utilisateur. Vide si l'interprétation des requêtes est désactivée. |
results[] |
Résultats d'une requête de recherche. |
structuredResults[] |
Résultats structurés pour la requête utilisateur. Ces résultats ne sont pas comptabilisés dans la valeur "pageSize". |
spellResults[] |
Suggestion orthographique pour la requête. |
facetResults[] |
Résultats d'attributs répétés. |
hasMoreResults |
Indique si d'autres résultats de recherche correspondent à la requête. |
debugInfo |
Informations de débogage sur la réponse. |
errorInfo |
Informations d'erreur sur la réponse. |
resultCounts |
Informations détaillées sur le nombre de résultats |
Champ d'union
Dans de rares cas, lorsque le système ne parvient pas à rechercher dans tous les documents, exécutez à nouveau la requête. |
|
resultCountEstimate |
Nombre estimé de résultats pour cette requête. |
resultCountExact |
Nombre exact de résultats pour cette requête. |
Champs d'application des autorisations
Nécessite l'un des champs d'application OAuth suivants :
https://www.googleapis.com/auth/cloud_search.query
https://www.googleapis.com/auth/cloud_search
Pour en savoir plus, consultez le guide d'autorisation.
QueryInterpretationOptions
options pour interpréter la requête de l'utilisateur.
Représentation JSON |
---|
{ "disableNlInterpretation": boolean, "enableVerbatimMode": boolean, "disableSupplementalResults": boolean } |
Champs | |
---|---|
disableNlInterpretation |
Indicateur permettant de désactiver l'interprétation des requêtes en langage naturel. La valeur par défaut est "false". Définissez-la sur "true" pour désactiver l'interprétation en langage naturel. L'interprétation en néerlandais ne s'applique qu'aux sources de données prédéfinies. |
enableVerbatimMode |
Activez cet indicateur pour désactiver toutes les optimisations internes, comme l'interprétation des requêtes en langage naturel (NL), la récupération de résultats supplémentaires et l'utilisation de synonymes, y compris ceux personnalisés. L'interprétation Nl sera désactivée si l'un des deux indicateurs est défini sur "true". |
disableSupplementalResults |
Utilisez cet indicateur pour désactiver les résultats supplémentaires pour une requête. Le paramètre de résultats supplémentaires choisi au niveau de SearchApplication prévaut s'il est défini sur "True". |
QueryInterpretation
Représentation JSON |
---|
{ "interpretedQuery": string, "interpretationType": enum ( |
Champs | |
---|---|
interpretedQuery |
Interprétation de la requête utilisée dans la recherche. Par exemple, les requêtes avec un intent en langage naturel telles que "e-mail de John" seront interprétées comme "from:john source:mail". Ce champ ne sera pas renseigné lorsque le motif est NOT_ENOUGH_RESULTS_FOUND_FOR_USER_QUERY. |
interpretationType |
|
reason |
Raison de l'interprétation de la requête. Ce champ ne sera pas défini sur "UNSPECIFIED" si le type d'interprétation n'est pas "NONE". |
QueryInterpretation.InterpretationType
Enums | |
---|---|
NONE |
Ni l'interprétation en langage naturel, ni une version plus large de la requête ne sont utilisées pour extraire les résultats de recherche. |
BLEND |
Les résultats de la requête d'origine sont mélangés à d'autres résultats. La raison pour laquelle ces autres résultats sont mélangés à ceux de la requête d'origine est indiquée dans le champ "Motif" ci-dessous. |
REPLACE |
Les résultats de la requête d'origine sont remplacés. La raison du remplacement des résultats de la requête d'origine est renseignée dans le champ "Raison" ci-dessous. |
QueryInterpretation.Reason
Enums | |
---|---|
UNSPECIFIED |
|
QUERY_HAS_NATURAL_LANGUAGE_INTENT |
L'interprétation de la requête en langage naturel permet d'extraire les résultats de recherche. |
NOT_ENOUGH_RESULTS_FOUND_FOR_USER_QUERY |
La similarité entre les termes de la requête et les termes des documents est utilisée pour élargir sélectivement la requête afin de récupérer des résultats de recherche supplémentaires, car un nombre insuffisant de résultats n'a pas été trouvé pour la requête de l'utilisateur. La requête interprétée sera vide dans ce cas. |
SearchResult
Résultats contenant des informations indexées pour un document.
Représentation JSON |
---|
{ "title": string, "url": string, "snippet": { object ( |
Champs | |
---|---|
title |
Titre du résultat de recherche. |
url |
URL du résultat de recherche. L'URL contient une redirection Google vers l'élément réel. Cette URL est signée et ne doit pas être modifiée. |
snippet |
Chaîne de tous les extraits (résumés) disponibles pour ce résultat. |
metadata |
les métadonnées du résultat de recherche ; |
clusteredResults[] |
Si la source est groupée, fournissez la liste des résultats groupés. Il n'y a qu'un seul niveau de résultats regroupés. Si la source actuelle n'est pas activée pour le clustering, ce champ est vide. |
debugInfo |
Informations de débogage sur ce résultat de recherche. |
Extrait
Extrait du résultat de recherche, qui résume le contenu de la page affichée.
Représentation JSON |
---|
{
"snippet": string,
"matchRanges": [
{
object ( |
Champs | |
---|---|
snippet |
Extrait du document. Extrait du document. Peut contenir un caractère HTML échappé qui doit être déséchappé avant l'affichage. |
matchRanges[] |
Intervalles correspondants dans l'extrait. |
MatchRange
Plage correspondante d'un extrait [début, fin).
Représentation JSON |
---|
{ "start": integer, "end": integer } |
Champs | |
---|---|
start |
Position de départ de la correspondance dans l'extrait. |
end |
Fin de la correspondance dans l'extrait. |
Métadonnées
les métadonnées d'un résultat de recherche correspondant.
Représentation JSON |
---|
{ "source": { object ( |
Champs | |
---|---|
source |
Source nommée du résultat, par exemple Gmail. |
mimeType |
Type MIME du résultat de recherche. |
thumbnailUrl |
URL de la vignette du résultat. |
owner |
propriétaire (généralement le créateur) du document ou de l'objet du résultat de recherche ; |
createTime |
Heure de création de ce document ou de cet objet dans les résultats de recherche. Horodatage au format RFC3339 UTC "Zulu", avec une résolution de l'ordre de la nanoseconde et jusqu'à neuf chiffres décimaux. Exemples : |
updateTime |
Date de la dernière modification de l'objet dans le résultat de recherche. Si cette valeur n'est pas définie dans l'élément, la valeur renvoyée ici est vide. Lorsque Horodatage au format RFC3339 UTC "Zulu", avec une résolution de l'ordre de la nanoseconde et jusqu'à neuf chiffres décimaux. Exemples : |
fields[] |
Champs indexés dans les données structurées, renvoyés en tant que propriété nommée générique. |
displayOptions |
options qui spécifient comment afficher un résultat de recherche de données structurées. |
objectType |
Type d'objet du résultat de recherche. |
ResultDisplayMetadata
Représentation JSON |
---|
{
"objectTypeLabel": string,
"metalines": [
{
object ( |
Champs | |
---|---|
objectTypeLabel |
Libellé à afficher pour l'objet. |
metalines[] |
Contenu des métalignes à afficher avec le résultat. |
ResultDisplayMetadata.ResultDisplayLine
Ensemble de champs qui constituent une ligne affichée
Représentation JSON |
---|
{
"fields": [
{
object ( |
Champs | |
---|---|
fields[] |
ResultDisplayMetadata.ResultDisplayField
Champs d'affichage pour les résultats de query.search
Représentation JSON |
---|
{
"label": string,
"operatorName": string,
"property": {
object ( |
Champs | |
---|---|
label |
Libellé à afficher pour la propriété. |
operatorName |
Nom de l'opérateur de la propriété. |
property |
Paire nom-valeur de la propriété. |
ResultDebugInfo
Informations de débogage sur le résultat.
Représentation JSON |
---|
{ "formattedDebugInfo": string } |
Champs | |
---|---|
formattedDebugInfo |
Informations de débogage générales mises en forme pour être affichées. |
StructuredResult
Résultats structurés renvoyés dans le cadre d'une requête de recherche.
Représentation JSON |
---|
{
"person": {
object ( |
Champs | |
---|---|
person |
Représentation d'une personne |
SpellResult
Représentation JSON |
---|
{ "suggestedQuery": string } |
Champs | |
---|---|
suggestedQuery |
Orthographe suggérée de la requête. |
FacetResult
Réponse de facette spécifique à la source
Représentation JSON |
---|
{
"sourceName": string,
"objectType": string,
"operatorName": string,
"buckets": [
{
object ( |
Champs | |
---|---|
sourceName |
Nom de la source pour laquelle les résultats des facettes sont renvoyés. Ne sera pas vide. |
objectType |
Type d'objet pour lequel les résultats des facettes sont renvoyés. Ce champ peut être vide. |
operatorName |
Nom de l'opérateur choisi pour la facettisation. @see cloudsearch.SchemaPropertyOptions |
buckets[] |
FacetBuckets pour les valeurs de la réponse contenant au moins un résultat avec le filtre correspondant. |
FacetBucket
Un bucket dans une facette est l'unité de base de l'opération. Un bucket peut contenir une seule valeur OU une plage de valeurs contiguë, en fonction du type du champ groupé. FacetBucket n'est actuellement utilisé que pour renvoyer l'objet de réponse.
Représentation JSON |
---|
{ "count": integer, "percentage": integer, "filter": { object ( |
Champs | |
---|---|
count |
Nombre de résultats correspondant à la valeur du bucket. Les nombres ne sont renvoyés que pour les recherches lorsque la précision des nombres est assurée. Cloud Search ne garantit pas le nombre de facettes pour une requête donnée. Il est possible que le nombre de facettes ne soit présent que de manière intermittente, même pour des requêtes identiques. Ne créez pas de dépendances sur l'existence du nombre de facettes. Utilisez plutôt les pourcentages de facettes, qui sont toujours renvoyés. |
percentage |
Pourcentage de résultats correspondant à la valeur du bucket. La valeur renvoyée est comprise entre 0 et 100, et est arrondie à l'entier inférieur si elle est fractionnaire. Si la valeur n'est pas explicitement renvoyée, elle représente une valeur en pourcentage arrondie à 0. Les pourcentages sont renvoyés pour toutes les recherches, mais il s'agit d'une estimation. Étant donné que des pourcentages sont toujours renvoyés, vous devez afficher des pourcentages plutôt que des décomptes. |
filter |
Filtre à transmettre dans la requête de recherche si le bucket correspondant est sélectionné. |
value |
|
ResponseDebugInfo
Informations de débogage sur la réponse.
Représentation JSON |
---|
{ "formattedDebugInfo": string } |
Champs | |
---|---|
formattedDebugInfo |
Informations de débogage générales mises en forme pour être affichées. |
Information sur l'erreur
Informations d'erreur sur la réponse.
Représentation JSON |
---|
{
"errorMessages": [
{
object ( |
Champs | |
---|---|
errorMessages[] |
|
ErrorMessage
Message d'erreur par réponse source.
Représentation JSON |
---|
{
"source": {
object ( |
Champs | |
---|---|
source |
|
errorMessage |
|
ResultCounts
Informations sur le nombre de résultats
Représentation JSON |
---|
{
"sourceResultCounts": [
{
object ( |
Champs | |
---|---|
sourceResultCounts[] |
Informations sur le nombre de résultats pour chaque source avec des résultats. |
SourceResultCount
Informations sur le nombre de résultats par source.
Représentation JSON |
---|
{ "source": { object ( |
Champs | |
---|---|
source |
Source à laquelle les informations sur le nombre de résultats sont associées. |
hasMoreResults |
Indique si d'autres résultats de recherche sont disponibles pour cette source. |
Champ d'union
|
|
resultCountEstimate |
Nombre estimé de résultats pour cette source. |
resultCountExact |
Nombre exact de résultats pour cette source. |