- 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 veya bir üçüncü taraftan dizine eklediğiniz verilerden gelebilir.
Not: Bu API'nin yürütülmesi için standart bir son kullanıcı hesabı gerekir. Bir hizmet hesabı, Query API isteklerini doğrudan gerçekleştiremez. Sorgu gerçekleştirmek amacıyla bir hizmet hesabı kullanmak için Google Workspace alanı genelinde yetki verme ayarlarını 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 gövdesi, aşağıdaki yapıyla birlikte veriler içerir:
JSON gösterimi |
---|
{ "requestOptions": { object ( |
Alanlar | |
---|---|
requestOptions |
Arama uygulaması ve kullanıcı saat dilimi gibi istek seçenekleri. |
query |
Ham sorgu dizesi. Desteklenen arama operatörlerini görmek için Aramanızı operatörlerle daraltma başlıklı makaleyi inceleyin. |
pageSize |
Tek bir sayfada döndürülecek maksimum arama sonucu sayısı. Geçerli değerler 1 ile 100 arasındaki değerlerdir (1 ve 100 dahil). Varsayılan değer 10'dur. 2.000'in üzerindeki sonuçlar istendiğinde minimum değer 50'dir. |
start |
Sonuçların başlangıç dizini. |
dataSourceRestrictions[] |
Sorgulama için kullanılacak kaynaklar. Belirtilmezse 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, isteğin 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ş bırakılır. |
results[] |
Arama sorgusundan elde edilen sonuçlar. |
structuredResults[] |
Kullanıcı sorgusu için yapılandırılmış sonuçlar. Bu sonuçlar pageSize hesaplamasına dahil edilmez. |
spellResults[] |
Sorgu için önerilen yazım. |
facetResults[] |
Tekrarlanan özellik sonuçları. |
hasMoreResults |
Sorguyla eşleşen daha fazla arama sonucu olup olmadığı. |
debugInfo |
Yanıtla ilgili hata ayıklama bilgileri. |
errorInfo |
Yanıtla ilgili hata bilgileri. |
resultCounts |
Genişletilmiş sonuç sayısı bilgisi. |
Nadiren de olsa sistem tüm dokümanlarda arama yapamadığında sorguyu yeniden çalıştırın. |
|
resultCountEstimate |
Bu sorgu için tahmini sonuç sayısıdır. |
resultCountExact |
Bu sorgu için 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 göz atın.
QueryInterpretationOptions
seçenekleri vardır.
JSON gösterimi |
---|
{ "disableNlInterpretation": boolean, "enableVerbatimMode": boolean, "disableSupplementalResults": boolean } |
Alanlar | |
---|---|
disableNlInterpretation |
Sorguların doğal dil (NL) yorumlanmasını devre dışı bırakmak için işaretleyin. Varsayılan değer false (yanlış) şeklindedir. Doğal dil yorumlamasını devre dışı bırakmak için true olarak ayarlayın. NL çevirisi yalnızca önceden tanımlanmış veri kaynakları için geçerlidir. |
enableVerbatimMode |
Sorguların doğal dil (NL) yorumlanması, ek sonuç alma ve özel olanlar da dahil eş anlamlıların kullanımı gibi tüm dahili optimizasyonları kapatmak 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. Doğru değerine ayarlanırsa SearchApplication düzeyinde seçilen ek sonuçlar ayarı öncelikli olur. |
QueryInterpretation
JSON gösterimi |
---|
{ "interpretedQuery": string, "interpretationType": enum ( |
Alanlar | |
---|---|
interpretedQuery |
Aramada kullanılan sorgunun yorumlanması. Örneğin, "can'dan e-posta" gibi doğal bir dil amacı taşıyan sorgular, "from:john source:mail" olarak yorumlanır. Nedeni NOT_ENOUGH_RESULTS_FOUND_FOR_USER_QUERY ise bu alan doldurulmayacaktır. |
interpretationType |
|
reason |
Sorgunun yorumlanma nedeni. Yorum türü YOK ise, bu alan UNSPECIFIED olmaz. |
QueryInterpretation.InterpretationType
Sıralamalar | |
---|---|
NONE |
Arama sonuçlarını getirmek için ne doğal dil yorumu ne de sorgunun daha kapsamlı bir sürümü kullanılır. |
BLEND |
Orijinal sorgunun sonuçları diğer sonuçlarla karıştırılır. Bu diğer sonuçların orijinal sorgudaki sonuçlarla karıştırılma nedeni, aşağıdaki "Neden" alanına doldurulur. |
REPLACE |
Orijinal sorgunun sonuçları değiştirilir. Orijinal sorgudan alınan sonuçları değiştirme nedeni, aşağıdaki "Neden" alanına doldurulur. |
QueryInterpretation.Reason
Sıralamalar | |
---|---|
UNSPECIFIED |
|
QUERY_HAS_NATURAL_LANGUAGE_INTENT |
Arama sonuçlarını getirmek için sorgunun doğal dil yorumlanması kullanılır. |
NOT_ENOUGH_RESULTS_FOUND_FOR_USER_QUERY |
Kullanıcı sorgusu için yeterli sonuç bulunamadığından, ek arama sonuçları almak üzere sorguyu seçerek genişletmek için sorgu ve doküman terimleri benzerliği kullanılır. Bu durumda yorumlanan sorgu boş olur. |
SearchResult
Bir doküman için 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çerir. Bu URL imzalıdır ve değiştirilmemelidir. |
snippet |
Bu sonuç için mevcut olan tüm snippet'lerin (özetler) birleştirilmesi. |
metadata |
meta verilerini kullanın. |
clusteredResults[] |
Kaynak kümelenmişse kümelenmiş sonuçların listesini sağlayın. Yalnızca tek bir düzeyde kümelenmiş sonuçlar olacaktır. Geçerli kaynak kümeleme için etkinleştirilmemişse bu alan boş kalır. |
debugInfo |
Bu arama sonucuyla ilgili hata ayıklama bilgileri. |
Snippet
Arama sonucunun içeriğini özetleyen, arama sonucu snippet'i.
JSON gösterimi |
---|
{
"snippet": string,
"matchRanges": [
{
object ( |
Alanlar | |
---|---|
snippet |
Belgenin snippet'i. Belgenin snippet'i. Oluşturmadan önce atlatılması gereken çıkış karakterli HTML karakteri içerebilir. |
matchRanges[] |
Snippet'teki eşleşen aralıklar. |
MatchRange
Snippet'in eşleşen aralığı [başlangıç, bitiş).
JSON gösterimi |
---|
{ "start": integer, "end": integer } |
Alanlar | |
---|---|
start |
Snippet'teki eşleşmenin başlangıç konumu. |
end |
Snippet'teki eşleşmenin sonu. |
Meta veri
eşleşen arama sonucunun meta verileri.
JSON gösterimi |
---|
{ "source": { object ( |
Alanlar | |
---|---|
source |
Sonucun adlandırılmış kaynak (ör. Gmail). |
mimeType |
Arama sonucunun MIME türü. |
thumbnailUrl |
Sonucun küçük resim URL'si. |
owner |
sahibidir (genelde oluşturan kişi). |
createTime |
Arama sonucundaki bu doküman veya nesnenin oluşturulma zamanı. Nanosaniye çözünürlüğe ve en fazla dokuz kesir basamağına sahip, RFC3339 UTC "Zulu" biçiminde bir zaman damgası. Örnekler: |
updateTime |
Arama sonucundaki nesnenin son değiştirilme tarihidir. Öğede ayarlanmazsa burada döndürülen değer boş olur. Yenilik hesaplaması için Nanosaniye çözünürlüğe ve en fazla dokuz kesir basamağına sahip, RFC3339 UTC "Zulu" biçiminde bir zaman damgası. Örnekler: |
fields[] |
Yapılandırılmış verilerdeki dizine eklenmiş alanlar, genel adlandırılmış özellik olarak döndürülür. |
displayOptions |
seçenekler. |
objectType |
Arama sonucunun nesne türü. |
ResultDisplayMetadata
JSON gösterimi |
---|
{
"objectTypeLabel": string,
"metalines": [
{
object ( |
Alanlar | |
---|---|
objectTypeLabel |
Nesnenin görüntü etiketi. |
metalines[] |
Sonuçla birlikte gösterilecek metaline içeriği. |
ResultDisplayMetadata.ResultDisplayLine
Gösterilen satırı oluşturan alan koleksiyonu
JSON gösterimi |
---|
{
"fields": [
{
object ( |
Alanlar | |
---|---|
fields[] |
ResultDisplayMetadata.ResultDisplayField
query.search Sonuçları için Alanları Göster
JSON gösterimi |
---|
{
"label": string,
"operatorName": string,
"property": {
object ( |
Alanlar | |
---|---|
label |
Mülkün görüntü etiketi. |
operatorName |
Mülkün operatör adı. |
property |
Tesisin ad değer çifti. |
ResultDebugInfo
Sonuçla ilgili hata ayıklama bilgileri.
JSON gösterimi |
---|
{ "formattedDebugInfo": string } |
Alanlar | |
---|---|
formattedDebugInfo |
Ekran için biçimlendirilmiş genel hata ayıklama bilgileri. |
StructuredResult
Arama isteğinin bir parçası olarak 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ü özellik yanıtı
JSON gösterimi |
---|
{
"sourceName": string,
"objectType": string,
"operatorName": string,
"buckets": [
{
object ( |
Alanlar | |
---|---|
sourceName |
Özellik sonuçlarının döndürüldüğü kaynak adı. Boş olmayacak. |
objectType |
Özellik sonuçlarının döndürüldüğü nesne türü. Boş olabilir. |
operatorName |
Özellik için seçilen operatörün adı. @cloudsearch'e bakın.Schema PropertyOptions |
buckets[] |
İlgili filtreye sahip en az tek bir sonuç içeren yanıttaki değerlere ilişkin FacetBuckets. |
FacetBucket
Özellikteki bir paket, temel çalışma birimidir. Bir paket, gruplanan alanın türüne bağlı olarak tek bir değer VEYA bitişik bir değer aralığından oluşabilir. FacetBucket şu anda yalnızca yanıt nesnesini döndürmek için kullanılmaktadır.
JSON gösterimi |
---|
{ "count": integer, "percentage": integer, "filter": { object ( |
Alanlar | |
---|---|
count |
Paket değeriyle eşleşen sonuçların sayısı. Sayılar, yalnızca sayının doğruluğu sağlandığında aramalar için döndürülür. Cloud Search, herhangi bir sorgudaki özellik sayılarının sadece ara sıra (aynı sorgularda bile) bulunabileceğini garanti etmez. Özellik sayısının varlığına bağımlılık oluşturmayın. Bunun yerine, her zaman döndürülen özellik yüzdeleri kullanın. |
percentage |
Grup değeriyle eşleşen sonuçların yüzdesi. Döndürülen değer (0-100] arasındadır. Kesirliyse 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ılar yerine yüzdeler oluşturmanız gerekir. |
filter |
İlgili paket seçilirse arama isteğinde iletilecek filtre. |
value |
|
ResponseDebugInfo
Yanıtla ilgili hata ayıklama bilgileri.
JSON gösterimi |
---|
{ "formattedDebugInfo": string } |
Alanlar | |
---|---|
formattedDebugInfo |
Ekran için 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ı sayısı.
JSON gösterimi |
---|
{
"source": {
object ( |
Alanlar | |
---|---|
source |
|
errorMessage |
|
ResultCounts
Sonuç sayısı bilgileri
JSON gösterimi |
---|
{
"sourceResultCounts": [
{
object ( |
Alanlar | |
---|---|
sourceResultCounts[] |
Sonuç içeren her bir kaynak için sonuç sayısı bilgisi. |
SourceResultCount
Kaynak sonuç başına sayı bilgisi.
JSON gösterimi |
---|
{ "source": { object ( |
Alanlar | |
---|---|
source |
Sonuç sayısı bilgisinin ilişkilendirildiği kaynak. |
hasMoreResults |
Bu kaynak için daha fazla arama sonucu olup olmadığı. |
|
|
resultCountEstimate |
Bu kaynak için tahmini sonuç sayısıdır. |
resultCountExact |
Bu kaynak için tam sonuç sayısı. |