- Richiesta HTTP
- Corpo della richiesta
- Corpo della risposta
- Ambiti di autorizzazione
- QueryInterpretationOptions
- QueryInterpretation
- QueryInterpretation.InterpretationType
- QueryInterpretation.Reason
- SearchResult
- Snippet
- MatchRange
- Metadati
- ResultDisplayMetadata
- ResultDisplayMetadata.ResultDisplayLine
- ResultDisplayMetadata.ResultDisplayField
- ResultDebugInfo
- StructuredResult
- SpellResult
- FacetResult
- FacetBucket
- ResponseDebugInfo
- ErrorInfo
- ErrorMessage
- ResultCounts
- SourceResultCount
- Prova!
L'API Cloud Search Query fornisce il metodo di ricerca, che restituisce i risultati più pertinenti da una query dell'utente. I risultati possono provenire da app Google Workspace, come Gmail o Google Drive, oppure da dati indicizzati da terze parti.
Nota:per l'esecuzione di questa API è necessario un account utente finale standard. Un account di servizio non può eseguire direttamente richieste all'API Query. Per utilizzare un account di servizio per eseguire query, configura la delega dell'autorità a livello di dominio di Google Workspace.
Richiesta HTTP
POST https://cloudsearch.googleapis.com/v1/query/search
L'URL utilizza la sintassi di transcodifica gRPC.
Corpo della richiesta
Il corpo della richiesta contiene dati con la seguente struttura:
Rappresentazione JSON |
---|
{ "requestOptions": { object ( |
Campi | |
---|---|
requestOptions |
Opzioni di richiesta, ad esempio l'applicazione di ricerca e il fuso orario dell'utente. |
query |
La stringa di query non elaborata. Consulta gli operatori di ricerca supportati in Restringere la ricerca con gli operatori |
pageSize |
Numero massimo di risultati di ricerca da restituire in una pagina. I valori validi sono compresi tra 1 e 100, inclusi. Il valore predefinito è 10. Il valore minimo è 50 se vengono richiesti risultati oltre 2000. |
start |
Indice iniziale dei risultati. |
dataSourceRestrictions[] |
Le origini da utilizzare per le query. Se non specificato, vengono utilizzate tutte le origini dati dell'applicazione di ricerca corrente. |
facetOptions[] |
|
sortOptions |
Le opzioni per ordinare i risultati di ricerca |
queryInterpretationOptions |
opzioni per interpretare la query dell'utente. |
contextAttributes[] |
Attributi di contesto per la richiesta che verranno utilizzati per modificare il ranking dei risultati di ricerca. Il numero massimo di elementi è 10. |
Corpo della risposta
In caso di esito positivo, il corpo della risposta contiene dati con la seguente struttura:
La risposta dell'API di ricerca.
Rappresentazione JSON |
---|
{ "queryInterpretation": { object ( |
Campi | |
---|---|
queryInterpretation |
Risultato dell'interpretazione della query per la query dell'utente. Vuoto se l'interpretazione delle query è disattivata. |
results[] |
Risultati di una query di ricerca. |
structuredResults[] |
Risultati strutturati per la query dell'utente. Questi risultati non vengono conteggiati ai fini del parametro pageSize. |
spellResults[] |
Ortografia suggerita per la query. |
facetResults[] |
Risultati delle sfaccettature ripetuti. |
hasMoreResults |
Se sono presenti altri risultati di ricerca corrispondenti alla query. |
debugInfo |
Informazioni di debug sulla risposta. |
errorInfo |
Informazioni sull'errore relativo alla risposta. |
resultCounts |
Informazioni espanse sul conteggio dei risultati. |
Campo unione
Nei rari casi in cui il sistema non è in grado di eseguire ricerche in tutti i documenti, esegui di nuovo la query. |
|
resultCountEstimate |
Il numero stimato di risultati per questa query. |
resultCountExact |
Il conteggio esatto dei risultati per questa query. |
Ambiti di autorizzazione
Richiede uno dei seguenti ambiti OAuth:
https://www.googleapis.com/auth/cloud_search.query
https://www.googleapis.com/auth/cloud_search
Per ulteriori informazioni, consulta la Guida all'autorizzazione.
QueryInterpretationOptions
opzioni per interpretare la query dell'utente.
Rappresentazione JSON |
---|
{ "disableNlInterpretation": boolean, "enableVerbatimMode": boolean, "disableSupplementalResults": boolean } |
Campi | |
---|---|
disableNlInterpretation |
Indica se disattivare l'interpretazione delle query in linguaggio naturale (NL). Il valore predefinito è false. Imposta il valore true per disattivare l'interpretazione del linguaggio naturale. L'interpretazione in fiammingo si applica solo alle origini dati predefinite. |
enableVerbatimMode |
Attiva questo flag per disattivare tutte le ottimizzazioni interne, come l'interpretazione delle query in linguaggio naturale (NL), il recupero di risultati supplementari e l'utilizzo di sinonimi, inclusi quelli personalizzati. L'interpretazione in nl verrà disattivata se uno dei due flag è true. |
disableSupplementalResults |
Utilizza questo flag per disattivare i risultati supplementari per una query. L'impostazione dei risultati supplementari scelta a livello di SearchApplication avrà la precedenza se impostata su True. |
QueryInterpretation
Rappresentazione JSON |
---|
{ "interpretedQuery": string, "interpretationType": enum ( |
Campi | |
---|---|
interpretedQuery |
L'interpretazione della query utilizzata nella ricerca. Ad esempio, le query con intent di linguaggio naturale come "email da Giovanni" verranno interpretate come "da:Giovanni origine:email". Questo campo non verrà compilato se il motivo è NOT_ENOUGH_RESULTS_FOUND_FOR_USER_QUERY. |
interpretationType |
|
reason |
Il motivo dell'interpretazione della query. Questo campo non sarà UNSPECIFIED se il tipo di interpretazione non è NONE. |
QueryInterpretation.InterpretationType
Enum | |
---|---|
NONE |
Per recuperare i risultati di ricerca non viene utilizzata né l'interpretazione in linguaggio naturale né una versione più ampia della query. |
BLEND |
I risultati della query originale vengono combinati con altri risultati. Il motivo per cui questi altri risultati vengono combinati con i risultati della query originale viene inserito nel campo "Motivo" di seguito. |
REPLACE |
I risultati della query originale vengono sostituiti. Il motivo della sostituzione dei risultati della query originale viene inserito nel campo "Motivo" di seguito. |
QueryInterpretation.Reason
Enum | |
---|---|
UNSPECIFIED |
|
QUERY_HAS_NATURAL_LANGUAGE_INTENT |
Per recuperare i risultati di ricerca viene utilizzata l'interpretazione della query in linguaggio naturale. |
NOT_ENOUGH_RESULTS_FOUND_FOR_USER_QUERY |
La somiglianza dei termini delle query e dei documenti viene utilizzata per ampliare in modo selettivo la query in modo da recuperare ulteriori risultati di ricerca, poiché non sono stati trovati risultati sufficienti per la query dell'utente. La query interpretata sarà vuota per questa richiesta. |
SearchResult
Risultati contenenti informazioni indicizzate per un documento.
Rappresentazione JSON |
---|
{ "title": string, "url": string, "snippet": { object ( |
Campi | |
---|---|
title |
Titolo del risultato di ricerca. |
url |
L'URL del risultato di ricerca. L'URL contiene un reindirizzamento di Google all'articolo effettivo. Questo URL è firmato e non deve essere modificato. |
snippet |
La concatenazione di tutti gli snippet (riepiloghi) disponibili per questo risultato. |
metadata |
dei metadati del risultato di ricerca. |
clusteredResults[] |
Se l'origine è raggruppata, fornisci un elenco dei risultati raggruppati. Verrà utilizzato un solo livello di risultati raggruppati. Se l'origine corrente non è abilitata per il clustering, questo campo sarà vuoto. |
debugInfo |
Informazioni di debug su questo risultato di ricerca. |
Snippet
Snippet del risultato di ricerca, che riassume i contenuti della pagina risultante.
Rappresentazione JSON |
---|
{
"snippet": string,
"matchRanges": [
{
object ( |
Campi | |
---|---|
snippet |
Lo snippet del documento. Lo snippet del documento. Potrebbe contenere un carattere HTML con codice di escape che deve essere rimosso prima del rendering. |
matchRanges[] |
Gli intervalli corrispondenti nello snippet. |
MatchRange
Intervallo corrispondente di uno snippet [start, end].
Rappresentazione JSON |
---|
{ "start": integer, "end": integer } |
Campi | |
---|---|
start |
Posizione iniziale della corrispondenza nello snippet. |
end |
Fine della corrispondenza nello snippet. |
Metadati
metadati di un risultato di ricerca corrispondente.
Rappresentazione JSON |
---|
{ "source": { object ( |
Campi | |
---|---|
source |
L'origine denominata del risultato, ad esempio Gmail. |
mimeType |
Tipo MIME del risultato di ricerca. |
thumbnailUrl |
L'URL della miniatura del risultato. |
owner |
proprietario (di solito autore) del documento o dell'oggetto del risultato di ricerca. |
createTime |
La data e l'ora di creazione di questo documento o oggetto nel risultato di ricerca. Un timestamp in formato "Zulu" UTC RFC3339, con risoluzione in nanosecondi e fino a nove cifre frazionarie. Esempi: |
updateTime |
La data dell'ultima modifica dell'oggetto nel risultato di ricerca. Se non viene impostato nell'elemento, il valore restituito qui è vuoto. Quando Un timestamp in formato "Zulu" UTC RFC3339, con risoluzione in nanosecondi e fino a nove cifre frazionarie. Esempi: |
fields[] |
Campi indicizzati nei dati strutturati, restituiti come proprietà denominate generiche. |
displayOptions |
Opzioni che specificano come visualizzare un risultato di ricerca con dati strutturati. |
objectType |
Tipo di oggetto del risultato di ricerca. |
ResultDisplayMetadata
Rappresentazione JSON |
---|
{
"objectTypeLabel": string,
"metalines": [
{
object ( |
Campi | |
---|---|
objectTypeLabel |
L'etichetta di visualizzazione dell'oggetto. |
metalines[] |
I contenuti delle metaline da visualizzare con il risultato. |
ResultDisplayMetadata.ResultDisplayLine
La raccolta di campi che compongono una riga visualizzata
Rappresentazione JSON |
---|
{
"fields": [
{
object ( |
Campi | |
---|---|
fields[] |
ResultDisplayMetadata.ResultDisplayField
Visualizza i campi per i risultati di query.search
Rappresentazione JSON |
---|
{
"label": string,
"operatorName": string,
"property": {
object ( |
Campi | |
---|---|
label |
L'etichetta visualizzata per la proprietà. |
operatorName |
Il nome dell'operatore della struttura. |
property |
La coppia di nome e valore per la proprietà. |
ResultDebugInfo
Informazioni di debug sul risultato.
Rappresentazione JSON |
---|
{ "formattedDebugInfo": string } |
Campi | |
---|---|
formattedDebugInfo |
Informazioni di debug generali formattate per la visualizzazione. |
StructuredResult
Risultati strutturati restituiti nell'ambito della richiesta di ricerca.
Rappresentazione JSON |
---|
{
"person": {
object ( |
Campi | |
---|---|
person |
Rappresentazione di una persona |
SpellResult
Rappresentazione JSON |
---|
{ "suggestedQuery": string } |
Campi | |
---|---|
suggestedQuery |
L'ortografia suggerita della query. |
FacetResult
Risposta ai componenti specifici dell'origine
Rappresentazione JSON |
---|
{
"sourceName": string,
"objectType": string,
"operatorName": string,
"buckets": [
{
object ( |
Campi | |
---|---|
sourceName |
Nome dell'origine per cui vengono restituiti i risultati del livello. Non sarà vuoto. |
objectType |
Tipo di oggetto per cui vengono restituiti i risultati delle sfaccettature. Può essere vuoto. |
operatorName |
Il nome dell'operatore scelto per la suddivisione in livelli. @see cloudsearch.SchemaPropertyOptions |
buckets[] |
FacetBuckets per i valori nella risposta contenenti almeno un risultato con il filtro corrispondente. |
FacetBucket
Un bucket in una frazione è l'unità di base dell'operazione. Un bucket può comprendere un singolo valore OPPURE un intervallo contiguo di valori, a seconda del tipo di campo raggruppato. Al momento FacetBucket viene utilizzato solo per restituire l'oggetto di risposta.
Campi | |
---|---|
count |
Numero di risultati corrispondenti al valore del bucket. I conteggi vengono restituiti per le ricerche solo quando è garantita la loro accuratezza. Cloud Search non garantisce il conteggio dei componenti per nessuna query e i conteggi dei componenti potrebbero essere presenti solo a intermittenza, anche per query identiche. Non creare dipendenze sull'esistenza del conteggio delle sfaccettature; utilizza invece le percentuali del conteggio delle sfaccettature che vengono sempre restituite. |
percentage |
Percentuale di risultati che corrispondono al valore del bucket. Il valore restituito è compreso tra [0-100] e viene arrotondato per difetto a un numero intero se frazionario. Se il valore non viene restituito esplicitamente, rappresenta un valore percentuale arrotondato a 0. Le percentuali vengono restituite per tutte le ricerche, ma si tratta di una stima. Poiché vengono sempre restituite le percentuali, devi visualizzare le percentuali anziché i conteggi. |
filter |
Filtro da passare nella richiesta di ricerca se è selezionato il bucket corrispondente. |
value |
|
ResponseDebugInfo
Informazioni di debug sulla risposta.
Rappresentazione JSON |
---|
{ "formattedDebugInfo": string } |
Campi | |
---|---|
formattedDebugInfo |
Informazioni di debug generali formattate per la visualizzazione. |
ErrorInfo
Informazioni sull'errore relativo alla risposta.
Rappresentazione JSON |
---|
{
"errorMessages": [
{
object ( |
Campi | |
---|---|
errorMessages[] |
|
ErrorMessage
Messaggio di errore per risposta dell'origine.
Rappresentazione JSON |
---|
{
"source": {
object ( |
Campi | |
---|---|
source |
|
errorMessage |
|
ResultCounts
Informazioni sul conteggio dei risultati
Rappresentazione JSON |
---|
{
"sourceResultCounts": [
{
object ( |
Campi | |
---|---|
sourceResultCounts[] |
Informazioni sul conteggio dei risultati per ogni origine con risultati. |
SourceResultCount
Informazioni sul conteggio dei risultati per origine.
Rappresentazione JSON |
---|
{ "source": { object ( |
Campi | |
---|---|
source |
L'origine a cui sono associate le informazioni sul conteggio dei risultati. |
hasMoreResults |
Indica se sono presenti altri risultati di ricerca per questa origine. |
Campo unione
|
|
resultCountEstimate |
Il conteggio stimato dei risultati per questa origine. |
resultCountExact |
Il conteggio esatto dei risultati per questa origine. |