- HTTP isteği
- İstek metni
- Yanıt metni
- Yetkilendirme Kapsamları
- QueryInterpretationOptions
- QueryInterpretation
- QueryInterpretation.InterpretationType
- QueryInterpretation.Reason
- SearchResult
- Snippet
- MatchRange
- Meta veri
- ResultDisplayMetadata
- ResultDisplayMetadata.ResultDisplayLine
- ResultDisplayMetadata.ResultDisplayField
- ResultDebugInfo
- StructuredResult
- SpellResult
- FacetResult
- FacetBucket
- ResponseDebugInfo
- ErrorInfo
- ErrorMessage
- ResultCounts
- SourceResultCount
- Deneyin.
Cloud Search Query API, kullanıcı sorgusundan en alakalı sonuçları döndüren arama yöntemini sağlar. Sonuçlar Gmail veya Google Drive gibi Google Workspace uygulamalarından ya da bir üçüncü taraftan dizine eklediğiniz verilerden gelebilir.
Not: Bu API'nin çalıştırılması için standart bir son kullanıcı hesabı gerekir. Hizmet hesapları, Query API isteklerini doğrudan gerçekleştiremez. Sorgu yürütmek için bir hizmet hesabı kullanmak istiyorsanız Google Workspace alanı genelinde yetki verme işlemini yapın.
HTTP isteği
POST https://cloudsearch.googleapis.com/v1/query/search
URL, gRPC Kod Dönüştürme söz dizimini kullanır.
İstek içeriği
İstek metni aşağıdaki yapıyla birlikte verileri içerir:
JSON gösterimi |
---|
{ "requestOptions": { object ( |
Alanlar | |
---|---|
requestOptions |
Arama uygulaması ve kullanıcı saat dilimi gibi istek seçenekleri. |
query |
Ham sorgu dizesi. Operatörlerden yararlanarak aramanızı daraltma başlıklı makalede desteklenen arama operatörlerini görebilirsiniz. |
pageSize |
Bir sayfada döndürülecek maksimum arama sonucu sayısı. Geçerli değerler 1 ile 100 arasındadır (1 ve 100 dahil). Varsayılan değer 10'dur. 2000'den fazla sonuç istendiğinde minimum değer 50'dir. |
start |
Sonuçların başlangıç dizini. |
dataSourceRestrictions[] |
Sorgu için kullanılacak kaynaklar. Belirtilmemişse geçerli arama uygulamasındaki tüm veri kaynakları kullanılır. |
facetOptions[] |
|
sortOptions |
Arama sonuçlarını sıralama seçenekleri |
queryInterpretationOptions |
seçenekleri vardır. |
contextAttributes[] |
Arama sonuçlarının sıralamasını ayarlamak için kullanılacak istek bağlamı özellikleri. Maksimum öğe sayısı 10'dur. |
Yanıt gövdesi
Başarılı olursa yanıt metni aşağıdaki yapıyla birlikte verileri içerir:
Search API yanıtı.
JSON gösterimi |
---|
{ "queryInterpretation": { object ( |
Alanlar | |
---|---|
queryInterpretation |
Kullanıcı sorgusu için sorgu yorumlama sonucu. Sorgu yorumlama devre dışıysa boştur. |
results[] |
Bir arama sorgusunun sonuçları. |
structuredResults[] |
Kullanıcı sorgusu için yapılandırılmış sonuçlar. Bu sonuçlar pageSize'e dahil edilmez. |
spellResults[] |
Sorgu için önerilen yazım. |
facetResults[] |
Tekrarlanan yön sonuçları. |
hasMoreResults |
Sorguyla eşleşen başka arama sonucu olup olmadığı. |
debugInfo |
Yanıtla ilgili hata ayıklama bilgileri. |
errorInfo |
Yanıtla ilgili hata bilgileri. |
resultCounts |
Genişletilmiş sonuç sayısı bilgileri. |
Birlik alanı
Sistemin tüm dokümanları arayamamasının nadir bir durumda olması halinde sorguyu yeniden çalıştırın. |
|
resultCountEstimate |
Bu sorgu için tahmini sonuç sayısı. |
resultCountExact |
Bu sorgunun tam sonuç sayısı. |
Yetkilendirme kapsamları
Aşağıdaki OAuth kapsamlarından birini gerektirir:
https://www.googleapis.com/auth/cloud_search.query
https://www.googleapis.com/auth/cloud_search
Daha fazla bilgi için Yetkilendirme kılavuzuna bakın.
QueryInterpretationOptions
seçenekleri vardır.
JSON gösterimi |
---|
{ "disableNlInterpretation": boolean, "enableVerbatimMode": boolean, "disableSupplementalResults": boolean } |
Alanlar | |
---|---|
disableNlInterpretation |
Sorguların doğal dil (NL) yorumunu devre dışı bırakma işareti. Varsayılan değer false (yanlış) değerinidir. Doğal dil yorumlamayı devre dışı bırakmak için true (doğru) olarak ayarlayın. NL yorumu yalnızca önceden tanımlanmış veri kaynakları için geçerlidir. |
enableVerbatimMode |
Sorguların doğal dil (NL) yorumu, ek sonuç getirme ve özel olanlar da dahil olmak üzere eş anlamlı kelimelerin kullanımı gibi tüm dahili optimizasyonları devre dışı bırakmak için bu işareti etkinleştirin. İki işaretten biri doğruysa Nl yorumlaması devre dışı bırakılır. |
disableSupplementalResults |
Bir sorgu için ek sonuçları devre dışı bırakmak üzere bu işareti kullanın. SearchApplication düzeyinde seçilen ek sonuçlar ayarı, True olarak ayarlanırsa öncelikli olur. |
QueryInterpretation
JSON gösterimi |
---|
{ "interpretedQuery": string, "interpretationType": enum ( |
Alanlar | |
---|---|
interpretedQuery |
Aramada kullanılan sorgunun yorumu. Örneğin, "mehmet'in e-postası" gibi doğal dil amaçlı sorgular "from:mehmet source:mail" olarak yorumlanır. Neden NOT_ENOUGH_RESULTS_FOUND_FOR_USER_QUERY olduğunda bu alan doldurulmaz. |
interpretationType |
|
reason |
Sorgunun yorumlanma nedeni. Yorumlama türü NONE değilse bu alan UNSPECIFIED olmaz. |
QueryInterpretation.InterpretationType
Sıralamalar | |
---|---|
NONE |
Arama sonuçlarını almak için doğal dil yorumu veya sorgunun daha geniş bir sürümü kullanılmaz. |
BLEND |
Orijinal sorgudan elde edilen sonuçlar diğer sonuçlarla harmanlanır. Bu diğer sonuçların orijinal sorgudaki sonuçlarla birleştirilmesinin nedeni, aşağıdaki "Nedeni" alanına doldurulur. |
REPLACE |
Orijinal sorgunun sonuçları değiştirilir. Orijinal sorgudan alınan sonuçların değiştirilme nedeni, aşağıdaki "Nedeni" alanına doldurulur. |
QueryInterpretation.Reason
Sıralamalar | |
---|---|
UNSPECIFIED |
|
QUERY_HAS_NATURAL_LANGUAGE_INTENT |
Arama sonuçlarını almak için sorgunun doğal dil yorumu kullanılır. |
NOT_ENOUGH_RESULTS_FOUND_FOR_USER_QUERY |
Sorgu ve doküman terimleri benzerliği, kullanıcı sorgusu için yeterli sonuç bulunamadığından sorguyu seçici bir şekilde genişleterek ek arama sonuçları almak için kullanılır. Yorumlanmış sorgu bu durumda boş olur. |
SearchResult
Bir dokümanla ilgili dizine eklenen bilgileri içeren sonuçlar.
JSON gösterimi |
---|
{ "title": string, "url": string, "snippet": { object ( |
Alanlar | |
---|---|
title |
Arama sonucunun başlığı. |
url |
Arama sonucunun URL'si. URL, gerçek öğeye yönlendiren bir Google yönlendirmesi içeriyor. Bu URL imzalıdır ve değiştirilmemelidir. |
snippet |
Bu sonuç için kullanılabilen tüm snippet'lerin (özetlerin) birleştirilmesi. |
metadata |
arama sonucunun meta verileri. |
clusteredResults[] |
Kaynak kümelenmişse kümelenmiş sonuçların listesini sağlayın. Yalnızca bir düzeyde kümelenmiş sonuçlar olur. Mevcut kaynak gruplandırma için etkinleştirilmemişse bu alan boş olur. |
debugInfo |
Bu arama sonucuyla ilgili hata ayıklama bilgileri. |
Snippet
Arama sonucunun, sonuçlanan sayfanın içeriğini özetleyen snippet'i.
JSON gösterimi |
---|
{
"snippet": string,
"matchRanges": [
{
object ( |
Alanlar | |
---|---|
snippet |
Belgenin snippet'i. Belgenin snippet'i. Oluşturmadan önce kod dışı bırakılması gereken kod dışı bırakılmış HTML karakterleri içerebilir. |
matchRanges[] |
Snippet'te eşleşen aralıklar. |
MatchRange
Bir snippet'in eşleşen aralığı [start, end].
JSON gösterimi |
---|
{ "start": integer, "end": integer } |
Alanlar | |
---|---|
start |
Eşleşmenin snippet'teki başlangıç konumu. |
end |
Snippet'te maçın sonu. |
Meta veri
eşleşen bir arama sonucunun meta verileri.
JSON gösterimi |
---|
{ "source": { object ( |
Alanlar | |
---|---|
source |
Gmail gibi sonucun adlandırılmış kaynağı. |
mimeType |
Arama sonucunun MIME türü. |
thumbnailUrl |
Sonucun küçük resim URL'si. |
owner |
arama sonucunun sahibi (genellikle dosyayı veya nesneyi oluşturan kişi) |
createTime |
Arama sonucundaki bu dokümanın veya nesnenin oluşturulma zamanı. Nanosaniye çözünürlüğüne sahip ve en fazla dokuz kesirli basamak içeren RFC3339 UTC "Zulu" biçiminde bir zaman damgası. Örnekler: |
updateTime |
Arama sonucundaki nesnenin son değiştirilme tarihi. Öğede ayarlanmamışsa burada döndürülen değer boş olur. Güncelliği hesaplamak için Nanosaniye çözünürlüğüne sahip ve en fazla dokuz kesirli basamak içeren RFC3339 UTC "Zulu" biçiminde bir zaman damgası. Örnekler: |
fields[] |
Yapılandırılmış verilerdeki dizine eklenen alanlar, genel bir adlandırılmış mülk olarak döndürülür. |
displayOptions |
seçenekleri, yapılandırılmış veri arama sonucunun nasıl gösterileceğini belirtir. |
objectType |
Arama sonucunun nesne türü. |
ResultDisplayMetadata
JSON gösterimi |
---|
{
"objectTypeLabel": string,
"metalines": [
{
object ( |
Alanlar | |
---|---|
objectTypeLabel |
Nesnenin görüntüleme etiketi. |
metalines[] |
Sonuçla birlikte gösterilecek meta satır içeriği. |
ResultDisplayMetadata.ResultDisplayLine
Gösterilen bir satırı oluşturan alan koleksiyonu
JSON gösterimi |
---|
{
"fields": [
{
object ( |
Alanlar | |
---|---|
fields[] |
ResultDisplayMetadata.ResultDisplayField
query.search sonuçları için görüntüleme alanları
JSON gösterimi |
---|
{
"label": string,
"operatorName": string,
"property": {
object ( |
Alanlar | |
---|---|
label |
Tesisin görünen etiketi. |
operatorName |
Tesisin işletmeci adı. |
property |
Mülkün ad değeri çifti. |
ResultDebugInfo
Sonuçla ilgili hata ayıklama bilgileri.
JSON gösterimi |
---|
{ "formattedDebugInfo": string } |
Alanlar | |
---|---|
formattedDebugInfo |
Gösterilmek üzere biçimlendirilmiş genel hata ayıklama bilgileri. |
StructuredResult
Arama isteği kapsamında döndürülen yapılandırılmış sonuçlar.
JSON gösterimi |
---|
{
"person": {
object ( |
Alanlar | |
---|---|
person |
Bir kişinin temsili |
SpellResult
JSON gösterimi |
---|
{ "suggestedQuery": string } |
Alanlar | |
---|---|
suggestedQuery |
Sorgunun önerilen yazımı. |
FacetResult
Kaynağa özgü yön yanıtı
JSON gösterimi |
---|
{
"sourceName": string,
"objectType": string,
"operatorName": string,
"buckets": [
{
object ( |
Alanlar | |
---|---|
sourceName |
Yön bölümünün sonuçlarının döndürüldüğü kaynak adı. Boş olmaz. |
objectType |
Yön bölümünün sonuçlarının döndürüldüğü nesne türü. Boş bırakılabilir. |
operatorName |
Kelime öbeğine ayırma için seçilen operatörün adı. @see cloudsearch.SchemaPropertyOptions |
buckets[] |
Yanıttaki değerler için, ilgili filtreyle en az bir sonuç içeren FacetBuckets. |
FacetBucket
Bir kesite ait grup, temel işlem birimidir. Gruplandırılan alanın türüne bağlı olarak grup, tek bir değer VEYA bitişik bir değer aralığı içerebilir. FacetBucket şu anda yalnızca yanıt nesnesini döndürmek için kullanılır.
Alanlar | |
---|---|
count |
Grup değeriyle eşleşen sonuç sayısı. Sayılar yalnızca sayı doğruluğu sağlandığında aramalar için döndürülür. Cloud Search, herhangi bir sorgu için yön sayısı garanti etmez ve yön sayıları, aynı sorgular için bile yalnızca ara sıra gösterilebilir. Yüz sayısı varlığına bağlı bağımlılıklar oluşturmayın. Bunun yerine her zaman döndürülen yüz sayısı yüzdelerini kullanın. |
percentage |
Paket değeriyle eşleşen sonuçların yüzdesi. Döndürülen değer [0-100] aralığındadır ve kesirli ise tam sayıya yuvarlanır. Değer açıkça döndürülmezse 0'a yuvarlanan bir yüzde değerini temsil eder. Yüzdeler tüm aramalar için döndürülür ancak tahminidir. Yüzdeler her zaman döndürüldüğünden, sayı yerine yüzdeleri oluşturmanız gerekir. |
filter |
İlgili paket seçilirse arama isteğine iletilecek filtre. |
value |
|
ResponseDebugInfo
Yanıtla ilgili hata ayıklama bilgileri.
JSON gösterimi |
---|
{ "formattedDebugInfo": string } |
Alanlar | |
---|---|
formattedDebugInfo |
Gösterilmek üzere biçimlendirilmiş genel hata ayıklama bilgileri. |
ErrorInfo
Yanıtla ilgili hata bilgileri.
JSON gösterimi |
---|
{
"errorMessages": [
{
object ( |
Alanlar | |
---|---|
errorMessages[] |
|
ErrorMessage
Kaynak yanıtı başına hata mesajı.
JSON gösterimi |
---|
{
"source": {
object ( |
Alanlar | |
---|---|
source |
|
errorMessage |
|
ResultCounts
Sonuç sayısı bilgileri
JSON gösterimi |
---|
{
"sourceResultCounts": [
{
object ( |
Alanlar | |
---|---|
sourceResultCounts[] |
Sonuç içeren her kaynak için sonuç sayısı bilgileri. |
SourceResultCount
Kaynak başına sonuç sayısı bilgileri.
JSON gösterimi |
---|
{ "source": { object ( |
Alanlar | |
---|---|
source |
Sonuç sayısı bilgilerinin ilişkili olduğu kaynak. |
hasMoreResults |
Bu kaynak için daha fazla arama sonucu olup olmadığı. |
Birlik alanı
|
|
resultCountEstimate |
Bu kaynak için tahmini sonuç sayısı. |
resultCountExact |
Bu kaynak için tam sonuç sayısı. |