- 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
- SpellResult.SuggestionType
- SafeHtmlProto
- 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 üçüncü taraflardan dizine eklediğiniz verilerden gelebilir.
Not: Bu API'nin yürütülmesi için standart bir son kullanıcı hesabı gerekir. Hizmet hesabı, sorgu API isteklerini doğrudan gerçekleştiremez. Sorgu gerçekleştirmek için hizmet hesabı kullanmak istiyorsanız Google Workspace alan genelinde yetki devrini ayarlayı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 metni
İstek içeriği aşağıdaki yapıyla birlikte verileri içerir:
| JSON gösterimi |
|---|
{ "requestOptions": { object ( |
| Alanlar | |
|---|---|
requestOptions |
Arama uygulaması ve kullanıcının saat dilimi gibi istek seçenekleri. |
query |
Ham sorgu dizesi. Desteklenen arama operatörlerini Operatörleri kullanarak aramanızı daraltma bölümünde bulabilirsiniz. |
pageSize |
Bir sayfada döndürülecek maksimum arama sonucu sayısı. Geçerli değerler 1 ile 100 arasındadır (bu değerler dahil). Varsayılan değer 10'dur. 2.000'den fazla sonuç istendiğinde minimum değer 50'dir. |
start |
Sonuçların başlangıç dizini. |
dataSourceRestrictions[] |
Sorgu için kullanılacak kaynaklar. Belirtilmezse mevcut arama uygulamasındaki tüm veri kaynakları kullanılır. |
facetOptions[] |
|
sortOptions |
Arama sonuçlarını sıralama seçenekleri |
queryInterpretationOptions |
kullanıcı sorgusunu yorumlama seçenekleri. |
contextAttributes[] |
Arama sonuçlarının sıralamasını ayarlamak için kullanılacak isteğe ait bağlam özellikleri. Maksimum öğe sayısı 10'dur. |
Yanıt metni
Search API yanıtı. NEXT kimliği: 19
Başarılı olursa yanıt metni aşağıdaki yapıyla birlikte verileri içerir:
| JSON gösterimi |
|---|
{ "queryInterpretation": { object ( |
| Alanlar | |
|---|---|
queryInterpretation |
kullanıcı sorgusu için sorgu yorumlama sonucu. Sorgu yorumlama devre dışıysa boş olur. |
results[] |
Arama sorgusunun sonuçları. |
structuredResults[] |
Kullanıcı sorgusu için yapılandırılmış sonuçlar. Bu sonuçlar, pageSize'a göre sayılmaz. |
spellResults[] |
Sorgu için önerilen yazım. |
facetResults[] |
Tekrarlanan yön 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ı bilgileri. |
Sistemin tüm belgelerde arama yapamadığı nadir durumlarda sorguyu yeniden çalıştırın. |
|
resultCountEstimate |
Bu sorgu için tahmini sonuç sayısı. |
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.queryhttps://www.googleapis.com/auth/cloud_search
Daha fazla bilgi için Yetkilendirme kılavuzu'na bakın.
QueryInterpretationOptions
kullanıcı sorgusunu yorumlama seçenekleri.
| 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'tur. Doğal dil yorumlamayı devre dışı bırakmak için true olarak ayarlayın. Doğal dil yorumu 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 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şaretin herhangi biri doğruysa NL yorumu 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ç ayarı, True olarak ayarlanırsa öncelikli olur. |
QueryInterpretation
| JSON gösterimi |
|---|
{ "interpretedQuery": string, "interpretationType": enum ( |
| Alanlar | |
|---|---|
interpretedQuery |
Aramada kullanılan sorgunun yorumu. Örneğin, "Ali'den gelen e-posta" gibi doğal dil amaçlı sorgular "from:ali source:mail" olarak yorumlanır. Bu alan, neden NOT_ENOUGH_RESULTS_FOUND_FOR_USER_QUERY olduğunda doldurulmaz. |
interpretationType |
|
reason |
Sorgunun yorumlanma nedeni. Yorum türü NONE değilse bu alan UNSPECIFIED olmaz. |
interpretedQueryActualResultCount |
Yorumlanan sorgu tarafından döndürülen gerçek sonuç sayısı. |
interpretedQueryEstimatedResultCount |
Yorumlanan sorgu tarafından döndürülen tahmini sonuç sayısı. |
QueryInterpretation.InterpretationType
| Sıralamalar | |
|---|---|
NONE |
Arama sonuçlarını getirmek için ne doğal dil yorumu ne de sorgunun daha geniş 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 sorgunun sonuçlarıyla karıştırılma nedeni aşağıdaki "neden" alanında belirtilir. |
REPLACE |
Orijinal sorgunun sonuçları değiştirilir. Orijinal sorgudan elde edilen sonuçların değiştirilme nedeni aşağıdaki "neden" alanında belirtilir. |
QueryInterpretation.Reason
| Sıralamalar | |
|---|---|
UNSPECIFIED |
|
QUERY_HAS_NATURAL_LANGUAGE_INTENT |
Arama sonuçlarını getirmek için sorgunun doğal dil yorumu kullanılır. |
NOT_ENOUGH_RESULTS_FOUND_FOR_USER_QUERY |
Kullanıcı sorgusu için yeterli sonuç bulunmadığından ek arama sonuçları almak üzere sorguyu seçici bir şekilde genişletmek için sorgu ve doküman terimleri benzerliği kullanılır. Bu durumda yorumlanan sorgu boş olacaktır. |
SearchResult
Bir dokümanla ilgili dizine eklenmiş bilgileri içeren sonuçlar. Sonraki kimlik: 16
| JSON gösterimi |
|---|
{ "title": string, "url": string, "snippet": { object ( |
| Alanlar | |
|---|---|
title |
arama sonucunun başlığı. |
url |
Arama sonucunun URL'si. URL, Google yönlendirmesiyle asıl öğeye yönlendiriyor. 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 gösterilir. Mevcut kaynak kümeleme için etkinleştirilmemişse bu alan boş olur. |
debugInfo |
Bu arama sonucuyla ilgili hata ayıklama bilgileri. |
Snippet
Sonuç sayfasının içeriğini özetleyen arama sonucu snippet'i.
| JSON gösterimi |
|---|
{
"snippet": string,
"matchRanges": [
{
object ( |
| Alanlar | |
|---|---|
snippet |
Dokümanın snippet'i. Oluşturulmadan önce kod dışına çıkarılması gereken, kod dışına çıkarılmış HTML karakteri içerebilir. |
matchRanges[] |
Snippet'teki eşleşen aralıklar. |
MatchRange
Bir 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'te maçın sonu. |
Meta veri
eşleşen arama sonucunun meta verileri.
| JSON gösterimi |
|---|
{ "source": { object ( |
| Alanlar | |
|---|---|
source |
Sonucun adlandırılmış kaynağı (ör. Gmail). |
mimeType |
Arama sonucunun MIME türü. |
thumbnailUrl |
Sonucun küçük resim URL'si. |
owner |
Dokümanın veya arama sonucu nesnesinin sahibi (genellikle oluşturucusu). |
createTime |
Arama sonucundaki bu dokümanın veya nesnenin oluşturulma zamanı. Zaman damgasında RFC 3339 kullanılır. Yani oluşturulan çıkış her zaman Z ile normalleştirilir ve 0, 3, 6 veya 9 kesirli basamak kullanılır. "Z" dışındaki zaman farkları da kabul edilir. Örnekler: |
updateTime |
Arama sonucundaki nesnenin son değiştirilme tarihi. Öğede ayarlanmamışsa burada döndürülen değer boştur. Zaman damgasında RFC 3339 kullanılır. Yani oluşturulan çıkış her zaman Z ile normalleştirilir ve 0, 3, 6 veya 9 kesirli basamak kullanılır. "Z" dışındaki zaman farkları da kabul edilir. Örnekler: |
fields[] |
Yapılandırılmış verilerdeki dizine eklenmiş alanlar, genel adlandırılmış özellik olarak döndürülür. |
displayOptions |
Yapılandırılmış veri arama sonucunun nasıl görüntüleneceğini belirten seçenekler. |
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ırları içeriği. |
ResultDisplayMetadata.ResultDisplayLine
Görüntülenen bir satırı oluşturan alanlar koleksiyonu
| JSON gösterimi |
|---|
{
"fields": [
{
object ( |
| Alanlar | |
|---|---|
fields[] |
|
ResultDisplayMetadata.ResultDisplayField
query.search sonuçları için görüntülenen alanlar
| JSON gösterimi |
|---|
{
"label": string,
"operatorName": string,
"property": {
object ( |
| Alanlar | |
|---|---|
label |
Tesisin görünen etiketi. |
operatorName |
Tesisin işletmecisinin adı. |
property |
Özelliğin ad-değer çifti. |
ResultDebugInfo
Sonuçla ilgili hata ayıklama bilgileri.
| JSON gösterimi |
|---|
{ "formattedDebugInfo": string } |
| Alanlar | |
|---|---|
formattedDebugInfo |
Görüntüleme 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 |
|---|
{ // Union field |
| Alanlar | |
|---|---|
|
|
person |
Bir kişinin temsili |
SpellResult
| JSON gösterimi |
|---|
{ "suggestedQuery": string, "suggestionType": enum ( |
| Alanlar | |
|---|---|
suggestedQuery |
Sorgunun önerilen yazımı. |
suggestionType |
geçerli sorgu için öneri tetiklenir. |
suggestedQueryHtml |
Kullanıcı arayüzünde kullanılabilen, yazımı düzeltilmiş sorguyu temsil eden temizlenmiş HTML. Bu genellikle, sorgunun yazım denetimi yapılan kısımlarını işaretlemek için dile özgü etiketler içerir. |
SpellResult.SuggestionType
Sorgu için tetiklenen öneri türü.
| Sıralamalar | |
|---|---|
SUGGESTION_TYPE_UNSPECIFIED |
Varsayılan yazım denetimi türü |
NON_EMPTY_RESULTS_SPELL_SUGGESTION |
Sonuç değiştirilmeden yazım önerisi. Sonuçlar, sıfır olmayan sonuçlar içeren orijinal sorgu için gösterilmeye devam ederken sonuç içerecek yazım önerisi de gösterilir. |
ZERO_RESULTS_FULL_PAGE_REPLACEMENT |
Orijinal sorgu sonuç içermediğinde yazım önerisi tetiklenir. Orijinal sorgu sonuç vermediğinde ve yazım önerisi sonuç verdiğinde, yazımı düzeltilmiş sorgunun sonuçlarını tetikleriz. |
SafeHtmlProto
ÖNEMLİ: Saldırganların, türün güvenlik sözleşmesini karşılamayan serileştirilmiş iletiler oluşturması kolay olduğundan (örneğin, saldırgan tarafından kontrol edilen bir komut dosyası içerebilir) bu iletiyi güvenilmeyen bir kaynaktan kabul etmek güvenli değildir. SafeHtmlProto alan bir sistem, SafeHtmlProto'nun üreticisine örtülü olarak güvenir. Bu nedenle, bu mesajı RPC yanıtlarında döndürmek genellikle güvenli olsa da RPC isteklerinde kabul etmek genellikle güvenli değildir.
| JSON gösterimi |
|---|
{ "privateDoNotAccessOrElseSafeHtmlWrappedValue": string } |
| Alanlar | |
|---|---|
privateDoNotAccessOrElseSafeHtmlWrappedValue |
ÖNEMLİ: Bu alanı testlerden bile olsa asla ayarlamayın veya okumayın. Bu alan özeldir. Bu mesajı oluşturmak veya okumak için kullanılacak programlama dili paketleri hakkında bilgi edinmek üzere .proto dosyasının üst kısmındaki dokümanlara bakın. |
FacetResult
Kaynağa özgü yön yanıtı
| JSON gösterimi |
|---|
{
"sourceName": string,
"objectType": string,
"operatorName": string,
"buckets": [
{
object ( |
| Alanlar | |
|---|---|
sourceName |
Faset sonuçlarının döndürüldüğü kaynak adı. Boş olmayacak. |
objectType |
Faset sonuçlarının döndürüldüğü nesne türü. Boş olabilir. |
operatorName |
Facet oluşturma için seçilen operatörün adı. @see cloudsearch.SchemaPropertyOptions |
buckets[] |
Yanıtın değerleri için, ilgili filtreyle en az bir sonuç içeren FacetBuckets. |
FacetBucket
Bir yönün içindeki grup, temel işlem birimidir. Bir grup, gruplandırılan alanın türüne bağlı olarak 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ılmaktadır.
| JSON gösterimi |
|---|
{ "count": integer, "percentage": integer, "filter": { object ( |
| Alanlar | |
|---|---|
count |
Paket değeriyle eşleşen sonuç sayısı. Sayım doğruluğu sağlandığında yalnızca arama için sonuç döndürülür. Cloud Search, hiçbir sorgu için yön sayısı garantisi vermez ve yön sayıları, aynı sorgular için bile yalnızca aralıklı olarak gösterilebilir. Faset sayısı varlığına bağımlılık oluşturmayın. Bunun yerine, her zaman döndürülen faset 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] arasındadır ve kesirli ise tam sayıya yuvarlanır. Değer açıkça döndürülmüyorsa 0'a yuvarlanan bir yüzde değerini temsil eder. Yüzdeler tüm aramalar için döndürülür ancak bunlar tahmini değerlerdir. Yüzdeler her zaman döndürüldüğünden, sayı yerine yüzdeleri oluşturmanız gerekir. |
filter |
İlgili grup seçilirse arama isteğinde iletilecek filtre. |
bucket_value birleşik alanı. Fasetlenen grubun aralığı veya değeri bucket_value yalnızca aşağıdakilerden biri olabilir: |
|
value |
|
ResponseDebugInfo
Yanıtla ilgili hata ayıklama bilgileri.
| JSON gösterimi |
|---|
{ "formattedDebugInfo": string } |
| Alanlar | |
|---|---|
formattedDebugInfo |
Görüntüleme 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ı.
| 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 sonucu başına sayı bilgileri.
| JSON gösterimi |
|---|
{ "source": { object ( |
| Alanlar | |
|---|---|
source |
Sonuç sayısı bilgilerinin ilişkilendirildiği kaynak. |
hasMoreResults |
Bu kaynak için daha fazla arama sonucu olup olmadığı. |
|
|
resultCountEstimate |
Bu kaynak için tahmini sonuç sayısı. |
resultCountExact |
Bu kaynağın tam sonuç sayısı. |