- Solicitação HTTP
- Corpo da solicitação
- Corpo da resposta
- Escopos de autorização
- QueryInterpretationOptions
- QueryInterpretation
- QueryInterpretation.InterpretationType
- QueryInterpretation.Reason
- SearchResult
- Snippet
- MatchRange
- Metadados
- ResultDisplayMetadata
- ResultDisplayMetadata.ResultDisplayLine
- ResultDisplayMetadata.ResultDisplayField
- ResultDebugInfo
- StructuredResult
- SpellResult
- FacetResult
- FacetBucket
- ResponseDebugInfo
- ErrorInfo
- ErrorMessage
- ResultCounts
- SourceResultCount
- Faça um teste
A API Cloud Search Query fornece o método de pesquisa, que retorna os resultados mais relevantes de uma consulta do usuário. Os resultados podem vir de apps do Google Workspace, como o Gmail ou o Google Drive, ou de dados indexados de terceiros.
Observação:essa API exige uma conta de usuário final padrão para ser executada. Uma conta de serviço não pode executar solicitações da API Query diretamente. Para usar uma conta de serviço para executar consultas, configure a delegação de autoridade em todo o domínio do Google Workspace.
Solicitação HTTP
POST https://cloudsearch.googleapis.com/v1/query/search
O URL usa a sintaxe de transcodificação gRPC.
Corpo da solicitação
O corpo da solicitação contém dados com a seguinte estrutura:
Representação JSON |
---|
{ "requestOptions": { object ( |
Campos | |
---|---|
requestOptions |
Opções de solicitação, como o aplicativo de pesquisa e o fuso horário do usuário. |
query |
A string de consulta bruta. Consulte os operadores de pesquisa compatíveis em Refinar a pesquisa com operadores. |
pageSize |
Número máximo de resultados de pesquisa retornados em uma página. Os valores válidos estão entre 1 e 100. O valor padrão é 10. O valor mínimo é 50 quando os resultados além de 2.000 são solicitados. |
start |
Índice inicial dos resultados. |
dataSourceRestrictions[] |
As origens a serem usadas para consultas. Se não for especificado, todas as fontes de dados do app de pesquisa atual serão usadas. |
facetOptions[] |
|
sortOptions |
As opções de classificação dos resultados da pesquisa |
queryInterpretationOptions |
opções para interpretar a consulta do usuário. |
contextAttributes[] |
Atributos de contexto da solicitação que serão usados para ajustar a classificação dos resultados da pesquisa. O número máximo de elementos é 10. |
Corpo da resposta
Se bem-sucedido, o corpo da resposta incluirá dados com a estrutura a seguir:
A resposta da API Search.
Representação JSON |
---|
{ "queryInterpretation": { object ( |
Campos | |
---|---|
queryInterpretation |
Resultado da interpretação da consulta para a consulta do usuário. Vazia se a interpretação de consulta estiver desativada. |
results[] |
Resultados de uma consulta de pesquisa. |
structuredResults[] |
Resultados estruturados para a consulta do usuário. Esses resultados não são contabilizados em relação ao pageSize. |
spellResults[] |
Sugestão de ortografia para a consulta. |
facetResults[] |
Resultados de atributos repetidos. |
hasMoreResults |
Se há mais resultados de pesquisa que correspondem à consulta. |
debugInfo |
Informações de depuração sobre a resposta. |
errorInfo |
Informações de erro sobre a resposta. |
resultCounts |
Informações sobre a contagem de resultados expandida. |
Campo de união
No caso raro em que o sistema não consegue pesquisar todos os documentos, execute a consulta novamente. |
|
resultCountEstimate |
A contagem de resultados estimada para essa consulta. |
resultCountExact |
A contagem exata de resultados para esta consulta. |
Escopos de autorização
Requer um dos seguintes escopos do OAuth:
https://www.googleapis.com/auth/cloud_search.query
https://www.googleapis.com/auth/cloud_search
Para mais informações, consulte o guia de autorização.
QueryInterpretationOptions
opções para interpretar a consulta do usuário.
Representação JSON |
---|
{ "disableNlInterpretation": boolean, "enableVerbatimMode": boolean, "disableSupplementalResults": boolean } |
Campos | |
---|---|
disableNlInterpretation |
Flag para desativar a interpretação de consultas em linguagem natural (NL, na sigla em inglês). O padrão é "false". Defina como "true" para desativar a interpretação de linguagem natural. A interpretação de NL só se aplica a fontes de dados predefinidas. |
enableVerbatimMode |
Ative essa flag para desativar todas as otimizações internas, como a interpretação de consultas em linguagem natural (NL, na sigla em inglês), a recuperação de resultados complementares e o uso de sinônimos, incluindo os personalizados. A interpretação de Nl será desativada se uma das duas flags for verdadeira. |
disableSupplementalResults |
Use essa flag para desativar os resultados complementares de uma consulta. A configuração de resultados suplementares escolhida no nível da SearchApplication vai ter precedência se definida como "True". |
QueryInterpretation
Representação JSON |
---|
{ "interpretedQuery": string, "interpretationType": enum ( |
Campos | |
---|---|
interpretedQuery |
A interpretação da consulta usada na pesquisa. Por exemplo, consultas com a intenção de linguagem natural, como "e-mail de João", serão interpretadas como "de:João origem:e-mail". Este campo não será preenchido quando o motivo for NOT_ENOUGH_RESULTS_FOUND_FOR_USER_QUERY. |
interpretationType |
|
reason |
O motivo da interpretação da consulta. Esse campo não será UNSPECIFIED se o tipo de interpretação não for NONE. |
QueryInterpretation.InterpretationType
Enums | |
---|---|
NONE |
Nem a interpretação da linguagem natural nem uma versão mais ampla da consulta são usadas para buscar os resultados da pesquisa. |
BLEND |
Os resultados da consulta original são mesclados com outros resultados. O motivo para combinar esses outros resultados com os resultados da consulta original é preenchido no campo "Motivo" abaixo. |
REPLACE |
Os resultados da consulta original são substituídos. O motivo da substituição dos resultados da consulta original é preenchido no campo "Motivo" abaixo. |
QueryInterpretation.Reason
Enums | |
---|---|
UNSPECIFIED |
|
QUERY_HAS_NATURAL_LANGUAGE_INTENT |
A interpretação da consulta em linguagem natural é usada para buscar os resultados da pesquisa. |
NOT_ENOUGH_RESULTS_FOUND_FOR_USER_QUERY |
A semelhança entre os termos da consulta e do documento é usada para ampliar seletivamente a consulta e recuperar outros resultados de pesquisa, já que não foram encontrados resultados suficientes para a consulta do usuário. A consulta interpretada vai estar vazia para esse caso. |
SearchResult
Resultados que contêm informações indexadas de um documento.
Representação JSON |
---|
{ "title": string, "url": string, "snippet": { object ( |
Campos | |
---|---|
title |
Título do resultado da pesquisa. |
url |
O URL do resultado da pesquisa. O URL contém um redirecionamento do Google para o item real. Esse URL é assinado e não pode ser alterado. |
snippet |
A concatenação de todos os trechos (resumos) disponíveis para esse resultado. |
metadata |
metadados do resultado da pesquisa. |
clusteredResults[] |
Se a origem for agrupada, forneça uma lista de resultados agrupados. Só haverá um nível de resultados agrupados. Se a origem atual não estiver ativada para agrupamento, esse campo vai ficar vazio. |
debugInfo |
Informações de depuração sobre esse resultado da pesquisa. |
Snippet
Snippet do resultado da pesquisa, que resume o conteúdo da página resultante.
Representação JSON |
---|
{
"snippet": string,
"matchRanges": [
{
object ( |
Campos | |
---|---|
snippet |
O snippet do documento. O snippet do documento. Pode conter caracteres HTML com escape que precisam ser removidos antes da renderização. |
matchRanges[] |
Os intervalos correspondentes no snippet. |
MatchRange
Intervalo correspondente de um snippet [início, fim].
Representação JSON |
---|
{ "start": integer, "end": integer } |
Campos | |
---|---|
start |
Posição inicial da correspondência no snippet. |
end |
Fim da correspondência no snippet. |
Metadados
metadados de um resultado de pesquisa correspondente.
Representação JSON |
---|
{ "source": { object ( |
Campos | |
---|---|
source |
A origem nomeada do resultado, como o Gmail. |
mimeType |
Tipo MIME do resultado da pesquisa. |
thumbnailUrl |
O URL da miniatura do resultado. |
owner |
proprietário (geralmente o criador) do documento ou objeto do resultado da pesquisa. |
createTime |
A hora de criação do documento ou objeto no resultado da pesquisa. Um carimbo de data/hora no formato RFC3339 UTC "Zulu", com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: |
updateTime |
A data da última modificação do objeto no resultado da pesquisa. Se não for definido no item, o valor retornado aqui vai estar vazio. Quando Um carimbo de data/hora no formato RFC3339 UTC "Zulu", com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: |
fields[] |
Campos indexados em dados estruturados, retornados como uma propriedade nomeada genérica. |
displayOptions |
opções que especificam como mostrar um resultado de pesquisa de dados estruturados. |
objectType |
Tipo de objeto do resultado da pesquisa. |
ResultDisplayMetadata
Representação JSON |
---|
{
"objectTypeLabel": string,
"metalines": [
{
object ( |
Campos | |
---|---|
objectTypeLabel |
O rótulo de exibição do objeto. |
metalines[] |
O conteúdo das metalinhas que será mostrado com o resultado. |
ResultDisplayMetadata.ResultDisplayLine
A coleção de campos que compõem uma linha exibida
Representação JSON |
---|
{
"fields": [
{
object ( |
Campos | |
---|---|
fields[] |
ResultDisplayMetadata.ResultDisplayField
Campos de exibição para resultados de pesquisa de query.
Representação JSON |
---|
{
"label": string,
"operatorName": string,
"property": {
object ( |
Campos | |
---|---|
label |
O rótulo de exibição da propriedade. |
operatorName |
O nome do operador da propriedade. |
property |
O par de nome e valor da propriedade. |
ResultDebugInfo
Informações de depuração sobre o resultado.
Representação JSON |
---|
{ "formattedDebugInfo": string } |
Campos | |
---|---|
formattedDebugInfo |
Informações gerais de depuração formatadas para exibição. |
StructuredResult
Resultados estruturados que são retornados como parte da solicitação de pesquisa.
Representação JSON |
---|
{
"person": {
object ( |
Campos | |
---|---|
person |
Representação de uma pessoa |
SpellResult
Representação JSON |
---|
{ "suggestedQuery": string } |
Campos | |
---|---|
suggestedQuery |
A ortografia sugerida da consulta. |
FacetResult
Resposta de faceta específica da origem
Representação JSON |
---|
{
"sourceName": string,
"objectType": string,
"operatorName": string,
"buckets": [
{
object ( |
Campos | |
---|---|
sourceName |
Nome da origem para os resultados de atributo retornados. Não pode estar em branco. |
objectType |
Tipo de objeto para que os resultados de facetas são retornados. Pode ficar vazio. |
operatorName |
O nome do operador escolhido para a divisão em facetas. @see cloudsearch.SchemaPropertyOptions |
buckets[] |
FacetBuckets para valores na resposta que contêm pelo menos um único resultado com o filtro correspondente. |
FacetBucket
Um bucket em uma faceta é a unidade básica de operação. Um bucket pode incluir um único valor OU um intervalo contínuo de valores, dependendo do tipo de bucket de campo. No momento, o FacetBucket é usado apenas para retornar o objeto de resposta.
Representação JSON |
---|
{ "count": integer, "percentage": integer, "filter": { object ( |
Campos | |
---|---|
count |
Número de resultados que correspondem ao valor do bucket. Os números são retornados apenas para pesquisas quando a precisão do cálculo é garantida. O Cloud Search não garante a contagem de facetas para nenhuma consulta, e as contagens de facetas podem estar presentes apenas de forma intermitente, mesmo para consultas idênticas. Não crie dependências na existência da contagem de facetas. Use as porcentagens de contagem de facetas, que são sempre retornadas. |
percentage |
Porcentagem de resultados que correspondem ao valor do bucket. O valor retornado está entre (0-100] e é arredondado para um número inteiro se for fracionário. Se o valor não for retornado explicitamente, ele vai representar um valor percentual arredondado para 0. As porcentagens são retornadas para todas as pesquisas, mas são uma estimativa. Como as porcentagens são sempre retornadas, renderize porcentagens em vez de contagens. |
filter |
Filtro a ser transmitido na solicitação de pesquisa se o bucket correspondente for selecionado. |
value |
|
ResponseDebugInfo
Informações de depuração sobre a resposta.
Representação JSON |
---|
{ "formattedDebugInfo": string } |
Campos | |
---|---|
formattedDebugInfo |
Informações gerais de depuração formatadas para exibição. |
ErrorInfo
Informações de erro sobre a resposta.
Representação JSON |
---|
{
"errorMessages": [
{
object ( |
Campos | |
---|---|
errorMessages[] |
|
ErrorMessage
Mensagem de erro por resposta de origem.
Representação JSON |
---|
{
"source": {
object ( |
Campos | |
---|---|
source |
|
errorMessage |
|
ResultCounts
Informações sobre a contagem de resultados
Representação JSON |
---|
{
"sourceResultCounts": [
{
object ( |
Campos | |
---|---|
sourceResultCounts[] |
Informações sobre a contagem de resultados para cada fonte com resultados. |
SourceResultCount
Informações de contagem de resultados por origem.
Representação JSON |
---|
{ "source": { object ( |
Campos | |
---|---|
source |
A origem com que as informações de contagem de resultados estão associadas. |
hasMoreResults |
Se há mais resultados de pesquisa para essa origem. |
Campo de união
|
|
resultCountEstimate |
A contagem de resultados estimados para essa origem. |
resultCountExact |
A contagem exata de resultados para essa origem. |