Otomatik Tamamla (Yeni)

Platform seçin: Android iOS JavaScript Web Hizmeti

Otomatik Tamamlama (Yeni) hizmeti, bir HTTP isteğine yanıt olarak yer tahminleri ve sorgu tahminleri döndüren bir web hizmetidir. İstekte, arama alanını kontrol eden bir metin arama dizesi ve coğrafi sınırlar belirtin.

Otomatik Tamamlama (Yeni) hizmeti, yer adlarını, adresleri ve plus kodlarını çözerek girişin tam kelimelerini ve alt dizelerini eşleştirebilir. Bu nedenle uygulamalar, anında yer ve sorgu tahminleri sağlamak için kullanıcı yazarken sorgular gönderebilir.

Autocomplete (Yeni) API'den gelen yanıt iki tür tahmin içerebilir:

  • Yer tahminleri: Belirtilen giriş metin dizesine ve arama alanına göre işletmeler, adresler ve önemli yerler gibi yerler. Yer tahminleri varsayılan olarak döndürülür.
  • Sorgu tahminleri: Giriş metin dizesi ve arama alanıyla eşleşen sorgu dizeleri. Sorgu tahminleri varsayılan olarak döndürülmez. Yanıta sorgu tahminleri eklemek için includeQueryPredictions istek parametresini kullanın.

Örneğin, giriş olarak kısmi bir kullanıcı girişi içeren bir dize (ör. "Sicilya piz") kullanarak API'yi çağırırsınız. Arama alanı, San Francisco, CA ile sınırlıdır. Ardından yanıtta, arama dizesi ve arama alanıyla eşleşen yer tahminlerinin listesi (ör. "Sicilian Pizza Kitchen" adlı restoran) ve yerle ilgili ayrıntılar yer alır.

Döndürülen yer tahminleri, kullanıcıya istenen yeri seçmesine yardımcı olmak amacıyla sunulacak şekilde tasarlanmıştır. Döndürülen yer tahminlerinden herhangi biri hakkında daha fazla bilgi edinmek için Yer Ayrıntıları (Yeni) isteği gönderebilirsiniz.

Yanıt, arama dizesi ve arama alanıyla eşleşen sorgu tahminlerinin (ör. "Sicilian Pizza & Pasta") bir listesini de içerebilir. Yanıttaki her sorgu tahmini, önerilen bir metin arama dizesi içeren text alanını içerir. Daha ayrıntılı bir arama yapmak için bu dizeyi Metin Arama (Yeni)'de giriş olarak kullanın.

API Gezgini, API ve API seçenekleri hakkında bilgi sahibi olmak için canlı istekler yapmanıza olanak tanır:

Deneyin.

Otomatik Tamamlama (Yeni) istekleri

Otomatik Tamamlama (Yeni) isteği, aşağıdaki biçimdeki bir URL'ye gönderilen bir HTTP POST isteğidir:

https://places.googleapis.com/v1/places:autocomplete

Tüm parametreleri JSON istek gövdesinde veya POST isteğinin bir parçası olarak üstbilgilerde iletin. Örneğin:

curl -X POST -d '{
  "input": "pizza",
  "locationBias": {
    "circle": {
      "center": {
        "latitude": 37.7937,
        "longitude": -122.3965
      },
      "radius": 500.0
    }
  }
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
https://places.googleapis.com/v1/places:autocomplete

Yanıt hakkında

Otomatik Tamamlama (Yeni), yanıt olarak bir JSON nesnesi döndürür. Yanıtta:

  • suggestions dizisi, tahmin edilen tüm yerleri ve sorguları algılanan alaka düzeylerine göre sırayla içerir. Her yer placePrediction alanıyla ve her sorgu queryPrediction alanıyla temsil edilir.
  • placePrediction alanında yer kimliği ve metin açıklaması da dahil olmak üzere tek bir yer tahmini hakkında ayrıntılı bilgiler yer alır.
  • queryPrediction alanı, tek bir sorgu tahminiyle ilgili ayrıntılı bilgileri içerir.

JSON nesnesinin tamamı şu şekildedir:

{
  "suggestions": [
    {
      "placePrediction": {
        "place": "places/ChIJ5YQQf1GHhYARPKG7WLIaOko",
        "placeId": "ChIJ5YQQf1GHhYARPKG7WLIaOko",
        "text": {
          "text": "Amoeba Music, Haight Street, San Francisco, CA, USA",
          "matches": [
            {
              "endOffset": 6
            }]
        },
      ...
    },
    {
      "queryPrediction": {
        "text": {
          "text": "Amoeba Music",
          "matches": [
            {
              "endOffset": 6
            }]
        },
        ...
    }
  ...]
}

Gerekli parametreler

  • giriş

    Arama yapılacak metin dizesi. Tam kelimeleri ve alt dizeleri, yer adlarını, adresleri ve artı kodlarını belirtin. Otomatik Tamamlama (Yeni) hizmeti, bu dizeye göre olası eşleşmeleri döndürür ve sonuçları algılanan alaka düzeylerine göre sıralar.

İsteğe bağlı parametreler

  • FieldMask

    Yanıt alanı maskesi oluşturarak yanıtta döndürülecek alanların listesini belirtin. HTTP üst bilgisi X-Goog-FieldMask'ü kullanarak yanıt alanı maskesini yönteme iletin.

    Döndürülecek öneri alanlarının virgülle ayrılmış listesini belirtin. Örneğin, önerinin suggestions.placePrediction.place ve suggestions.placePrediction.text değerlerini almak için.

      X-Goog-FieldMask: places.displayName,places.formattedAddress

    Tüm alanları almak için * değerini kullanın.

      X-Goog-FieldMask: *
  • includedPrimaryTypes

    Bir yerin Tablo A veya Tablo B'de listelenen türlerden yalnızca tek bir birincil türü olabilir. Örneğin, birincil tür "mexican_restaurant" veya "steak_house" olabilir.

    API varsayılan olarak, yerle ilişkili birincil tür değerinden bağımsız olarak tüm yerleri input parametresine göre döndürür. includedPrimaryTypes parametresini ileterek sonuçları belirli bir birincil tür veya birincil türlerle sınırlandırın.

    Tablo A veya Tablo B'den en fazla beş tür değeri belirtmek için bu parametreyi kullanın. Bir yer, yanıta dahil edilmek için belirtilen birincil tür değerlerinden biriyle eşleşmelidir.

    Bu parametre, bunun yerine (regions) veya (cities) özelliklerinden birini de içerebilir. (regions) türü koleksiyonu, mahalle ve posta kodu gibi alanlara veya bölümlere göre filtreler uygular. (cities) türü koleksiyon filtreleri, Google'ın şehir olarak tanımladığı yerleri filtreler.

    Aşağıdaki durumlarda istek INVALID_REQUEST hatasıyla reddedilir:

    • Beşten fazla tür belirtilmiş.
    • (cities) veya (regions)'a ek olarak herhangi bir tür belirtilir.
    • Tanınmayan türler belirtilir.
  • includePureServiceAreaBusinesses

    true olarak ayarlanırsa yanıt, müşterileri doğrudan ziyaret eden veya onlara teslimat yapan ancak fiziksel bir işletme konumu olmayan işletmeleri içerir. false olarak ayarlanırsa API yalnızca fiziksel bir işletme yeri olan işletmeleri döndürür.

  • includeQueryPredictions

    true ise yanıt, hem yer hem de sorgu tahminlerini içerir. Varsayılan değer false'tür. Bu, yanıtın yalnızca yer tahminlerini içerdiği anlamına gelir.

  • includedRegionCodes

    Yalnızca, en fazla 15 ccTLD ("üst düzey alan") iki karakterlik değerden oluşan bir dizi olarak belirtilen, belirtilen bölgeler listesinden sonuçları dahil edin. Atlanırsa yanıta herhangi bir kısıtlama uygulanmaz. Örneğin, bölgeleri Almanya ve Fransa ile sınırlamak için:

        "includedRegionCodes": ["de", "fr"]

    Hem locationRestriction hem de includedRegionCodes'ü belirtirseniz sonuçlar, iki ayarın kesişim alanında bulunur.

  • inputOffset

    input içindeki imleç konumunu belirten sıfır tabanlı Unicode karakter ofseti. İmlecin konumu, döndürülen tahminleri etkileyebilir. Boşsa varsayılan olarak input uzunluğuna ayarlanır.

  • languageCode

    Sonuçların döndürüleceği tercih edilen dil. input'te kullanılan dil languageCode tarafından belirtilen değerden farklıysa veya döndürülen yerin yerel dilden languageCode'e çevirisi yoksa sonuçlar karma dillerde olabilir.

    • Tercih edilen dili belirtmek için IETF BCP-47 dil kodlarını kullanmanız gerekir.
    • languageCode sağlanmazsa API, Accept-Language başlığında belirtilen değeri kullanır. Hiçbiri belirtilmezse varsayılan olarak en kullanılır. Geçersiz bir dil kodu belirtirseniz API, INVALID_ARGUMENT hatası döndürür.
    • Tercih edilen dil, API'nin döndürmeyi seçtiği sonuç grubu ve bu sonuçların döndürülme sırası üzerinde küçük bir etkiye sahiptir. Bu durum, API'nin yazım hatalarını düzeltme özelliğini de etkiler.
    • API, aynı zamanda kullanıcı girişini yansıtırken hem kullanıcı hem de yerel nüfus için okunabilen bir açık adres sağlamaya çalışır. Yer tahminleri, her istekteki kullanıcı girişine bağlı olarak farklı şekilde biçimlendirilir.
      • Öncelikle input parametresindeki eşleşen terimler seçilir. Mevcut olduğunda languageCode parametresi tarafından belirtilen dil tercihine uygun adlar kullanılır. Aksi takdirde, kullanıcı girişiyle en iyi eşleşen adlar kullanılır.
      • Cadde adresleri, mümkün olduğunda yerel dilde ve kullanıcı tarafından okunabilen bir komut dosyasında biçimlendirilir. Bu işlem, yalnızca input parametresindeki terimlerle eşleşen terimler seçildikten sonra yapılır.
      • Diğer tüm adresler, input parametresindeki terimlerle eşleşecek şekilde eşleşen terimler seçildikten sonra tercih edilen dilde döndürülür. Tercih edilen dilde bulunmayan bir ad varsa API en yakın eşlemeyi kullanır.
  • locationBias veya locationRestriction

    Arama alanını tanımlamak için locationBias veya locationRestriction ikilisinden birini belirtebilirsiniz; ikisini birden belirtmeyin. locationRestriction'ü, sonuçların içinde olması gereken bölgeyi, locationBias'ü ise sonuçların yakınında olması gereken ancak alanın dışında olabileceği bölgeyi belirtmek olarak düşünebilirsiniz.

    • locationBias

      Arama yapılacak bir alanı belirtir. Bu konum, bir önyargı görevi görür. Bu, belirtilen alanın dışındaki sonuçlar da dahil olmak üzere belirtilen konumun çevresindeki sonuçların döndürülebileceği anlamına gelir.

    • locationRestriction

      Arama yapılacak bir alanı belirtir. Belirtilen alanın dışındaki sonuçlar döndürülmez.

    locationBias veya locationRestriction bölgesini dikdörtgen görüntü alanı veya daire olarak belirtin.

    • Daireler, merkez noktası ve yarıçapı (metre cinsinden) ile tanımlanır. Yarıçap 0,0 ile 50000,0 arasında (bu değerler dahil) olmalıdır. Varsayılan değer 0,0'dır. locationRestriction için yarıçapı 0,0'dan büyük bir değere ayarlamanız gerekir. Aksi takdirde istek hiçbir sonuç döndürmez.

      Örneğin:

      "locationBias": {
        "circle": {
          "center": {
            "latitude": 37.7937,
            "longitude": -122.3965
          },
          "radius": 500.0
        }
      }
    • Dikdörtgen, low yönünde çapraz olarak iki ve yüksek noktayla temsil edilen enlem-boylam görüntü alanıdır. Görüntü alanı kapalı bir bölge olarak kabul edilir. Yani kendi sınırını içerir. Enlem sınırları -90 ile 90 derece arasında, boylam sınırları ise -180 ile 180 derece arasında olmalıdır:

      • low = high ise görüntü alanı tek bir noktadan oluşur.
      • low.longitude > high.longitude ise boylam aralığı tersine çevrilir (görüntü alanı 180 derece boylam çizgisini geçer).
      • low.longitude = -180 derece ve high.longitude = 180 derece olursa görüntü alanı tüm boylamları içerir.
      • low.longitude = 180 derece ve high.longitude = -180 derece ise boylam aralığı boş olur.

      Hem low hem de high doldurulmalı ve temsil edilen kutu boş olmamalıdır. Boş bir görüntü alanı hatayla sonuçlanır.

      Örneğin, bu görüntü alanı New York'u tamamen kapsıyor:

      "locationBias": {
        "rectangle": {
          "low": {
            "latitude": 40.477398,
            "longitude": -74.259087
          },
          "high": {
            "latitude": 40.91618,
            "longitude": -73.70018
          }
        }
      }
  • kaynak

    Hedefe olan düz çizgi mesafesinin hesaplanacağı başlangıç noktası (distanceMeters olarak döndürülür). Bu değer atlanırsa düz çizgi mesafesi döndürülmez. Enlem ve boylam koordinatları olarak belirtilmelidir:

    "origin": {
        "latitude": 40.477398,
        "longitude": -74.259087
    }
  • regionCode

    Yanıtı biçimlendirmek için kullanılan bölge kodu. ccTLD ("üst düzey alan") iki karakterli bir değer olarak belirtilir. Bazı önemli istisnalar dışında, çoğu ccTLD kodu ISO 3166-1 kodlarıyla aynıdır. Örneğin, Birleşik Krallık'ın ccTLD'si "uk" (.co.uk), ISO 3166-1 kodu "gb" (teknik olarak "Büyük Britanya ve Kuzey İrlanda'daki Birleşik Krallık'a" ait tüzel kişiye aittir)

    Geçersiz bir bölge kodu belirtirseniz API INVALID_ARGUMENT hatası verir. Parametre, geçerli yasaya göre sonuçları etkileyebilir.

  • sessionToken

    Oturum jetonları, Otomatik Tamamlama (Yeni) çağrılarını "oturumlar" olarak izleyen, kullanıcı tarafından oluşturulmuş dizelerdir. Otomatik Tamamlama (Yeni), kullanıcı otomatik tamamlama aramasının sorgu ve seçim aşamalarını faturalandırma amacıyla ayrı bir oturumda gruplandırmak için oturum jetonlarını kullanır. Daha fazla bilgi için Oturum jetonları bölümüne bakın.

Otomatik tamamlama (yeni) örnekleri

Konum kısıtlaması kullanarak aramayı bir alanla kısıtlama

locationRestriction, aranacak alanı belirtir. Belirtilen alanın dışındaki sonuçlar döndürülmez. Aşağıdaki örnekte, isteği San Francisco'nun merkezinde yarıçapı 5.000 metre olan bir çemberle sınırlamak için locationRestriction kullanıyorsunuz:

curl -X POST -d '{
  "input": "Art museum",
  "locationRestriction": {
    "circle": {
      "center": {
        "latitude": 37.7749,
        "longitude": -122.4194
      },
      "radius": 5000.0
    }
  }
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
https://places.googleapis.com/v1/places:autocomplete

Belirtilen alanların içindeki tüm sonuçlar suggestions dizisinde bulunur:

  {
    "suggestions": [
      {
        "placePrediction": {
          "place": "places/ChIJkQQVTZqAhYARHxPt2iJkm1Q",
          "placeId": "ChIJkQQVTZqAhYARHxPt2iJkm1Q",
          "text": {
            "text": "Asian Art Museum, Larkin Street, San Francisco, CA, USA",
            "matches": [
              {
                "startOffset": 6,
                "endOffset": 16
              }
            ]
          },
          "structuredFormat": {
            "mainText": {
              "text": "Asian Art Museum",
              "matches": [
                {
                  "startOffset": 6,
                  "endOffset": 16
                }
              ]
            },
            "secondaryText": {
              "text": "Larkin Street, San Francisco, CA, USA"
            }
          },
          "types": [
            "establishment",
            "museum",
            "point_of_interest"
          ]
        }
      },
      {
        "placePrediction": {
          "place": "places/ChIJI7NivpmAhYARSuRPlbbn_2w",
          "placeId": "ChIJI7NivpmAhYARSuRPlbbn_2w",
          "text": {
            "text": "de Young Museum, Hagiwara Tea Garden Drive, San Francisco, CA, USA",
            "matches": [
              {
                "endOffset": 15
              }
            ]
          },
          "structuredFormat": {
            "mainText": {
              "text": "de Young Museum",
              "matches": [
                {
                  "endOffset": 15
                }
              ]
            },
            "secondaryText": {
              "text": "Hagiwara Tea Garden Drive, San Francisco, CA, USA"
            }
          },
          "types": [
            "establishment",
            "point_of_interest",
            "tourist_attraction",
            "museum"
          ]
        }
      },
      /.../
    ]
  }

Aramaları dikdörtgen bir görüntü alanıyla sınırlamak için locationRestriction simgesini de kullanabilirsiniz. Aşağıdaki örnekte istek, San Francisco şehir merkeziyle sınırlandırılmıştır:

  curl -X POST -d '{
    "input": "Art museum",
    "locationRestriction": {
      "rectangle": {
        "low": {
          "latitude": 37.7751,
          "longitude": -122.4219
        },
        "high": {
          "latitude": 37.7955,
          "longitude": -122.3937
        }
      }
    }
  }' \
  -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
  https://places.googleapis.com/v1/places:autocomplete

Sonuçlar, suggestions dizisinde bulunur:

  {
    "suggestions": [
      {
        "placePrediction": {
          "place": "places/ChIJkQQVTZqAhYARHxPt2iJkm1Q",
          "placeId": "ChIJkQQVTZqAhYARHxPt2iJkm1Q",
          "text": {
            "text": "Asian Art Museum, Larkin Street, San Francisco, CA, USA",
            "matches": [
              {
                "startOffset": 6,
                "endOffset": 16
              }
            ]
          },
          "structuredFormat": {
            "mainText": {
              "text": "Asian Art Museum",
              "matches": [
                {
                  "startOffset": 6,
                  "endOffset": 16
                }
              ]
            },
            "secondaryText": {
              "text": "Larkin Street, San Francisco, CA, USA"
            }
          },
          "types": [
            "point_of_interest",
            "museum",
            "establishment"
          ]
        }
      },
      {
        "placePrediction": {
          "place": "places/ChIJyQNK-4SAhYARO2DZaJleWRc",
          "placeId": "ChIJyQNK-4SAhYARO2DZaJleWRc",
          "text": {
            "text": "International Art Museum of America, Market Street, San Francisco, CA, USA",
            "matches": [
              {
                "startOffset": 14,
                "endOffset": 24
              }
            ]
          },
          "structuredFormat": {
            "mainText": {
              "text": "International Art Museum of America",
              "matches": [
                {
                  "startOffset": 14,
                  "endOffset": 24
                }
              ]
            },
            "secondaryText": {
              "text": "Market Street, San Francisco, CA, USA"
            }
          },
          "types": [
            "museum",
            "point_of_interest",
            "tourist_attraction",
            "art_gallery",
            "establishment"
          ]
        }
      }
    ]
  }

locationBias kullanarak bir alana yönelik aramayı önyargılı hale getirme

locationBias ile konum, bir önyargı görevi görür. Bu, belirtilen alanın dışındaki sonuçlar da dahil olmak üzere belirtilen konumun çevresindeki sonuçların döndürülebileceği anlamına gelir. Aşağıdaki örnekte, isteği San Francisco şehir merkezine yönlendiriyorsunuz:

curl -X POST -d '{
  "input": "Amoeba",
  "locationBias": {
    "circle": {
      "center": {
        "latitude": 37.7749,
        "longitude": -122.4194
      },
      "radius": 5000.0
    }
  }
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
https://places.googleapis.com/v1/places:autocomplete

Sonuçlar artık 5.000 metre yarıçapının dışındaki sonuçlar da dahil olmak üzere çok daha fazla öğe içeriyor:

{
  "suggestions": [
    {
      "placePrediction": {
        "place": "places/ChIJ5YQQf1GHhYARPKG7WLIaOko",
        "placeId": "ChIJ5YQQf1GHhYARPKG7WLIaOko",
        "text": {
          "text": "Amoeba Music, Haight Street, San Francisco, CA, USA",
          "matches": [
            {
              "endOffset": 6
            }
          ]
        },
        "structuredFormat": {
          "mainText": {
            "text": "Amoeba Music",
            "matches": [
              {
                "endOffset": 6
              }
            ]
          },
          "secondaryText": {
            "text": "Haight Street, San Francisco, CA, USA"
          }
        },
        "types": [
          "electronics_store",
          "point_of_interest",
          "store",
          "establishment",
          "home_goods_store"
        ]
      }
    },
    {
      "placePrediction": {
        "place": "places/ChIJr7uwwy58hYARBY-e7-QVwqw",
        "placeId": "ChIJr7uwwy58hYARBY-e7-QVwqw",
        "text": {
          "text": "Amoeba Music, Telegraph Avenue, Berkeley, CA, USA",
          "matches": [
            {
              "endOffset": 6
            }
          ]
        },
        "structuredFormat": {
          "mainText": {
            "text": "Amoeba Music",
            "matches": [
              {
                "endOffset": 6
              }
            ]
          },
          "secondaryText": {
            "text": "Telegraph Avenue, Berkeley, CA, USA"
          }
        },
        "types": [
          "electronics_store",
          "point_of_interest",
          "establishment",
          "home_goods_store",
          "store"
        ]
      }
    },
    ...
  ]
}

Aramaları dikdörtgen bir görüntü alanıyla sınırlamak için locationBias simgesini de kullanabilirsiniz. Aşağıdaki örnekte istek, San Francisco şehir merkeziyle sınırlandırılmıştır:

  curl -X POST -d '{
    "input": "Amoeba",
    "locationBias": {
      "rectangle": {
        "low": {
          "latitude": 37.7751,
          "longitude": -122.4219
        },
        "high": {
          "latitude": 37.7955,
          "longitude": -122.3937
        }
      }
    }
  }' \
  -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
  https://places.googleapis.com/v1/places:autocomplete

Dikdörtgen görüntü alanındaki arama sonuçları yanıtta görünse de bazı sonuçlar, önyargı nedeniyle tanımlanan sınırların dışındadır. Sonuçlar suggestions dizisinde de bulunur:

  {
    "suggestions": [
      {
        "placePrediction": {
          "place": "places/ChIJ5YQQf1GHhYARPKG7WLIaOko",
          "placeId": "ChIJ5YQQf1GHhYARPKG7WLIaOko",
          "text": {
            "text": "Amoeba Music, Haight Street, San Francisco, CA, USA",
            "matches": [
              {
                "endOffset": 6
              }
            ]
          },
          "structuredFormat": {
            "mainText": {
              "text": "Amoeba Music",
              "matches": [
                {
                  "endOffset": 6
                }
              ]
            },
            "secondaryText": {
              "text": "Haight Street, San Francisco, CA, USA"
            }
          },
          "types": [
            "point_of_interest",
            "store",
            "establishment"
          ]
        }
      },
      {
        "placePrediction": {
          "place": "places/ChIJr7uwwy58hYARBY-e7-QVwqw",
          "placeId": "ChIJr7uwwy58hYARBY-e7-QVwqw",
          "text": {
            "text": "Amoeba Music, Telegraph Avenue, Berkeley, CA, USA",
            "matches": [
              {
                "endOffset": 6
              }
            ]
          },
          "structuredFormat": {
            "mainText": {
              "text": "Amoeba Music",
              "matches": [
                {
                  "endOffset": 6
                }
              ]
            },
            "secondaryText": {
              "text": "Telegraph Avenue, Berkeley, CA, USA"
            }
          },
          "types": [
            "point_of_interest",
            "store",
            "establishment"
          ]
        }
      },
      {
        "placePrediction": {
          "place": "places/ChIJRdmfADq_woARYaVhnfQSUTI",
          "placeId": "ChIJRdmfADq_woARYaVhnfQSUTI",
          "text": {
            "text": "Amoeba Music, Hollywood Boulevard, Los Angeles, CA, USA",
            "matches": [
              {
                "endOffset": 6
              }
            ]
          },
          "structuredFormat": {
            "mainText": {
              "text": "Amoeba Music",
              "matches": [
                {
                  "endOffset": 6
                }
              ]
            },
            "secondaryText": {
              "text": "Hollywood Boulevard, Los Angeles, CA, USA"
            }
          },
          "types": [
            "point_of_interest",
            "store",
            "establishment"
          ]
        }
      },
    /.../
    ]
  }

includedPrimaryTypes özelliğini kullanma

Tablo A, Tablo B veya yalnızca (regions) ya da yalnızca (cities)'den en fazla beş tür değeri belirtmek için includedPrimaryTypes parametresini kullanın. Bir yer, yanıta dahil edilmek için belirtilen birincil tür değerlerinden biriyle eşleşmelidir.

Aşağıdaki örnekte "Futbol" input dizesini belirtir ve sonuçları "sporting_goods_store" türündeki kuruluşlarla kısıtlamak için includedPrimaryTypes parametresini kullanırsınız:

curl -X POST -d '{
  "input": "Soccer",
  "includedPrimaryTypes": ["sporting_goods_store"],
  "locationBias": {
    "circle": {
      "center": {
        "latitude": 37.7749,
        "longitude": -122.4194
      },
      "radius": 500.0
    }
  }
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
https://places.googleapis.com/v1/places:autocomplete

includedPrimaryTypes parametresini çıkarırsanız sonuçlar, "athletic_field" gibi istemediğiniz bir türdeki kuruluşları içerebilir.

Sorgu tahminleri isteme

Sorgu tahminleri varsayılan olarak döndürülmez. Yanıta sorgu tahminleri eklemek için includeQueryPredictions istek parametresini kullanın. Örneğin:

curl -X POST -d '{
  "input": "Amoeba",
  "includeQueryPredictions": true,
  "locationBias": {
    "circle": {
      "center": {
        "latitude": 37.7749,
        "longitude": -122.4194
      },
      "radius": 5000.0
    }
  }
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
https://places.googleapis.com/v1/places:autocomplete

suggestions dizisi artık yukarıdaki Yanıt hakkında bölümünde gösterildiği gibi hem yer tahminlerini hem de sorgu tahminlerini içerir. Her sorgu tahmini, önerilen bir metin arama dizesi içeren text alanını içerir. Döndürülen sorgu tahminlerinden herhangi biri hakkında daha fazla bilgi edinmek için Metin Arama (Yeni) isteği gönderebilirsiniz.

Kaynağı kullan

Bu örnekte, enlem ve boylam koordinatları olarak isteğe origin ekleyin. origin eklediğinizde API, yanıta origin ile hedef arasındaki doğrusal mesafeyi içeren distanceMeters alanını ekler. Bu örnekte, başlangıç noktası San Francisco'nun merkezi olarak ayarlanmıştır:

curl -X POST -d '{
  "input": "Amoeba",
  "origin": {
    "latitude": 37.7749,
    "longitude": -122.4194
  },
  "locationRestriction": {
    "circle": {
      "center": {
        "latitude": 37.7749,
        "longitude": -122.4194
      },
      "radius": 5000.0
    }
  }
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
https://places.googleapis.com/v1/places:autocomplete

Yanıt artık distanceMeters içeriyor:

{
  "suggestions": [
    {
      "placePrediction": {
        "place": "places/ChIJ5YQQf1GHhYARPKG7WLIaOko",
        "placeId": "ChIJ5YQQf1GHhYARPKG7WLIaOko",
        "text": {
          "text": "Amoeba Music, Haight Street, San Francisco, CA, USA",
          "matches": [
            {
              "endOffset": 6
            }
          ]
        },
        "structuredFormat": {
          "mainText": {
            "text": "Amoeba Music",
            "matches": [
              {
                "endOffset": 6
              }
            ]
          },
          "secondaryText": {
            "text": "Haight Street, San Francisco, CA, USA"
          }
        },
        "types": [
          "home_goods_store",
          "establishment",
          "point_of_interest",
          "store",
          "electronics_store"
        ],
        "distanceMeters": 3012
      }
    }
  ]
}

Deneyin!

API Gezgini, API ve API seçeneklerini tanıyabilmeniz için örnek isteklerde bulunmanıza olanak tanır.

  1. Sayfanın sağ tarafındaki API simgesini (API Gezgini'ni genişletin.) seçin.
  2. İsteğe bağlı olarak Standart parametreleri göster seçeneğini genişletin ve fields parametresini alan maskesi olarak ayarlayın.
  3. İsteğe bağlı olarak İstek gövdesini düzenleyin.
  4. Yürüt düğmesini seçin. Pop-up'ta, isteği göndermek için kullanmak istediğiniz hesabı seçin.
  5. API Gezgini panelinde, API Gezgini penceresini genişletmek için genişlet simgesini API Gezgini'ni genişletin. seçin.