Method: places.autocomplete

Zwraca prognozy dla podanych danych wejściowych.

Żądanie HTTP

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

Adres URL używa składni transkodowania gRPC.

Treść żądania

Treść żądania zawiera dane o następującej strukturze:

Zapis JSON
{
  "input": string,
  "locationBias": {
    object (LocationBias)
  },
  "locationRestriction": {
    object (LocationRestriction)
  },
  "includedPrimaryTypes": [
    string
  ],
  "includedRegionCodes": [
    string
  ],
  "languageCode": string,
  "regionCode": string,
  "origin": {
    object (LatLng)
  },
  "inputOffset": integer,
  "includeQueryPredictions": boolean,
  "sessionToken": string
}
Pola
input

string

Wymagane. Ciąg tekstowy, który ma być przeszukiwany.

locationBias

object (LocationBias)

Opcjonalnie: Odchylenie wyników do określonej lokalizacji.

Należy ustawić maksymalnie jedną z tych wartości: locationBias lub locationRestriction. Jeśli nie ustawisz żadnej, wyniki będą zniekształcane ze względu na adres IP, co oznacza, że zostanie on zmapowany na nieprecyzyjną lokalizację i będzie używany jako sygnał promowania.

locationRestriction

object (LocationRestriction)

Opcjonalnie: Ogranicz wyniki do określonej lokalizacji.

Należy ustawić maksymalnie jedną z tych wartości: locationBias lub locationRestriction. Jeśli nie ustawisz żadnej, wyniki będą zniekształcane ze względu na adres IP, co oznacza, że zostanie on zmapowany na nieprecyzyjną lokalizację i będzie używany jako sygnał promowania.

includedPrimaryTypes[]

string

Opcjonalnie: Uwzględniony typ głównego miejsca (np. „restauracja” lub „stacja benzynowa”) z tabeli A lub tabeli B w typach miejsc (https://developers.google.com/maps/documentation/places/web-service/place-types) lub tylko (regiony) albo tylko (miasta). Miejsce jest zwracane tylko wtedy, gdy jego główny typ znajduje się na tej liście. Można określić maksymalnie 5 wartości. Jeśli nie podasz żadnych typów, zwrócone zostaną wszystkie typy miejsc.

includedRegionCodes[]

string

Opcjonalnie: Uwzględnij tylko wyniki z określonych regionów (maksymalnie 15 dwuznakowych kodów regionów CLDR). Pusty zestaw nie ogranicza wyników. Jeśli są ustawione zarówno locationRestriction, jak i includedRegionCodes, wyniki będą znajdować się na obszarze skrzyżowania.

languageCode

string

Opcjonalnie: Język, w którym mają być zwracane wyniki. Domyślna wartość to en-US. Wyniki mogą być w różnych językach, jeśli język używany w języku input jest inny niż languageCode lub jeśli zwrócone miejsce nie ma tłumaczenia z języka lokalnego na languageCode.

regionCode

string

Opcjonalnie: Kod regionu określony jako dwuznakowy kod regionu CLDR. Ma to wpływ na formatowanie adresu i ranking wyników oraz na wyświetlane wyniki. Nie ogranicza to wyników do określonego regionu. Aby ograniczyć wyniki do regionu, użyj region_code_restriction.

origin

object (LatLng)

Opcjonalnie: Punkt początkowy, z którego oblicza się odległość geodezyjną do miejsca docelowego (zwracany jako distanceMeters). Jeśli pominiesz tę wartość, odległość geodezyjna nie zostanie zwrócona.

inputOffset

integer

Opcjonalnie: Odsunięcie znaków Unicode input od zera, które wskazuje pozycję kursora w polu input. Pozycja kursora może wpływać na wyświetlane podpowiedzi.

Jeśli pole jest puste, domyślna długość to input.

includeQueryPredictions

boolean

Opcjonalnie: Jeśli ustawisz wartość prawda, odpowiedź będzie zawierać zarówno prognozy dotyczące miejsc, jak i zapytań. W przeciwnym razie odpowiedź będzie zawierać tylko prognozy dotyczące miejsc.

sessionToken

string

Opcjonalnie: Ciąg znaków, który identyfikuje sesję autouzupełniania w celach rozliczeniowych. Musi to być adres URL i nazwa pliku bezpieczny ciąg znaków w formacie base64 o długości maksymalnie 36 znaków ASCII. W przeciwnym razie zwracany jest błąd DOCUMENT_AR.

Sesja rozpoczyna się, gdy użytkownik zaczyna wpisywać zapytanie, a kończy się, gdy wybierze miejsce i następuje wywołanie informacji o miejscu lub weryfikacji adresu. Każda sesja może zawierać kilka zapytań, po których następuje jedno żądanie informacji o miejscu lub weryfikacji adresu. Dane logowania używane w każdym żądaniu w sesji muszą należeć do tego samego projektu w konsoli Google Cloud. Po zakończeniu sesji token straci ważność. aplikacja musi wygenerować nowy token dla każdej sesji. Jeśli parametr sessionToken zostanie pominięty lub użyjesz tokena sesji ponownie, sesja jest obciążana tak, jakby żaden token sesji nie został udostępniony (każde żądanie jest rozliczane oddzielnie).

Zalecamy stosowanie się do tych wskazówek:

  • Używaj tokenów sesji dla wszystkich wywołań autouzupełniania miejsc.
  • Wygeneruj nowy token dla każdej sesji. Zalecamy używanie identyfikatora UUID w wersji 4.
  • Upewnij się, że dane logowania używane we wszystkich żądaniach autouzupełniania miejsc, informacji o miejscach i weryfikacji adresu w ramach sesji należą do tego samego projektu w konsoli Cloud.
  • Pamiętaj, aby w przypadku każdej nowej sesji przekazać unikalny token sesji. Jeśli użyjesz tego samego tokena w więcej niż 1 sesji, każde żądanie będzie rozliczane osobno.

Treść odpowiedzi

Proto odpowiedzi dla places.autocomplete.

W przypadku powodzenia treść żądania zawiera dane o następującej strukturze:

Zapis JSON
{
  "suggestions": [
    {
      object (Suggestion)
    }
  ]
}
Pola
suggestions[]

object (Suggestion)

Zawiera listę sugestii uporządkowanych w kolejności malejącej według trafności.

LocationBias

Region do przeszukania. Wyniki mogą być zniekształcone w odniesieniu do określonego regionu.

Zapis JSON
{

  // Union field type can be only one of the following:
  "rectangle": {
    object (Viewport)
  },
  "circle": {
    object (Circle)
  }
  // End of list of possible types for union field type.
}
Pola

Pole sumy type.

type może mieć tylko jedną z tych wartości:

rectangle

object (Viewport)

Widoczny obszar zdefiniowany przez narożnik północno-wschodni i południowy.

circle

object (Circle)

Okrąg wyznaczony przez punkt środkowy i promień.

LocationRestriction

Region do przeszukania. Wyniki zostaną ograniczone do określonego regionu.

Zapis JSON
{

  // Union field type can be only one of the following:
  "rectangle": {
    object (Viewport)
  },
  "circle": {
    object (Circle)
  }
  // End of list of possible types for union field type.
}
Pola

Pole sumy type.

type może mieć tylko jedną z tych wartości:

rectangle

object (Viewport)

Widoczny obszar zdefiniowany przez narożnik północno-wschodni i południowy.

circle

object (Circle)

Okrąg wyznaczony przez punkt środkowy i promień.

Sugestia

Wynik sugestii autouzupełniania.

Zapis JSON
{

  // Union field kind can be only one of the following:
  "placePrediction": {
    object (PlacePrediction)
  },
  "queryPrediction": {
    object (QueryPrediction)
  }
  // End of list of possible types for union field kind.
}
Pola

Pole sumy kind.

kind może mieć tylko jedną z tych wartości:

placePrediction

object (PlacePrediction)

Prognoza dotycząca miejsca.

queryPrediction

object (QueryPrediction)

Prognoza dla zapytania.

PlacePrediction

Wyniki prognozowania dla podpowiedzi autouzupełniania miejsca.

Zapis JSON
{
  "place": string,
  "placeId": string,
  "text": {
    object (FormattableText)
  },
  "structuredFormat": {
    object (StructuredFormat)
  },
  "types": [
    string
  ],
  "distanceMeters": integer
}
Pola
place

string

Nazwa zasobu sugerowanego miejsca. Tej nazwy można używać w innych interfejsach API, które akceptują nazwy miejsc.

placeId

string

Unikalny identyfikator sugerowanego miejsca. Ten identyfikator może być używany w innych interfejsach API, które akceptują identyfikatory miejsc.

text

object (FormattableText)

Zawiera czytelną dla człowieka nazwę zwróconego wyniku. W przypadku wyników wyszukiwania są to zwykle nazwa i adres firmy.

text jest zalecany dla deweloperów, którzy chcą wyświetlać pojedynczy element interfejsu. Deweloperzy, którzy chcą pokazać 2 osobne, ale powiązane ze sobą elementy interfejsu, mogą zamiast tego użyć structuredFormat. Są to 2 różne sposoby reprezentowania prognozy dotyczącej miejsca. Użytkownicy nie powinni próbować analizowania składni structuredFormat jako text ani na odwrót.

Ten tekst może się różnić od wartości displayName zwróconej przez places.get.

Może być w różnych językach, jeśli żądania input i languageCode są w różnych językach lub jeśli miejsce nie ma tłumaczenia z języka lokalnego na languageCode.

structuredFormat

object (StructuredFormat)

Rozbicie prognozy dotyczącej miejsca na tekst główny zawierający nazwę miejsca i tekst dodatkowy, który zawiera dodatkowe elementy identyfikujące (np. miasto lub region).

structuredFormat jest zalecany dla deweloperów, którzy chcą wyświetlać 2 osobne, ale powiązane ze sobą elementy interfejsu. Deweloperzy, którzy chcą wyświetlać tylko 1 element interfejsu, mogą zamiast tego użyć interfejsu text. Są to 2 różne sposoby reprezentowania prognozy dotyczącej miejsca. Użytkownicy nie powinni próbować analizowania składni structuredFormat jako text ani na odwrót.

types[]

string

Lista typów dotyczących tego miejsca z tabeli A lub B tabeli https://developers.google.com/maps/documentation/places/web-service/place-types.

Typ to kategoryzacja miejsca. Miejsca o wspólnych typach będą miały podobne cechy.

distanceMeters

integer

Długość geodezji w metrach od origin, jeśli określono origin. Niektóre prognozy, takie jak trasy, mogą nie wypełniać tego pola.

FormattableText

Tekst reprezentujący miejsce lub prognozę zapytania. Tekst może być używany w niezmienionej formie lub w formacie.

Zapis JSON
{
  "text": string,
  "matches": [
    {
      object (StringRange)
    }
  ]
}
Pola
text

string

Tekst, którego można używać w takiej postaci lub w formacie matches.

matches[]

object (StringRange)

Lista zakresów ciągów wskazujących, w którym miejscu text zostało dopasowane żądanie wejściowe. Za pomocą zakresów można sformatować określone części obiektu text. Podłańcuchy mogą nie być dokładne zgodne z parametrem input, jeśli dopasowanie zostało określone na podstawie innych kryteriów niż dopasowanie ciągów znaków (na przykład przez korektę pisowni lub transliterację).

Te wartości to przesunięcia znaków w zestawie Unicode text. Zakresy będą uporządkowane w coraz większej wartości przesunięcia.

StringRange

Identyfikuje podłańcuch w danym tekście.

Zapis JSON
{
  "startOffset": integer,
  "endOffset": integer
}
Pola
startOffset

integer

Przesunięcie pierwszego znaku Unicode ciągu znaków (włącznie) od zera.

endOffset

integer

Przesunięcie ostatniego znaku Unicode (z wyłączeniem) zależne od zera.

StructuredFormat

Zawiera podział prognozy dotyczącej miejsca lub zapytania na tekst główny i tekst dodatkowy.

W przypadku prognoz dotyczących miejsc tekst główny zawiera konkretną nazwę miejsca. W przypadku prognoz zapytań główny tekst zawiera zapytanie.

Tekst dodatkowy zawiera dodatkowe cechy wyróżniające (np. miasto lub region) umożliwiające dokładniejszą identyfikację miejsca lub sprecyzowanie zapytania.

Zapis JSON
{
  "mainText": {
    object (FormattableText)
  },
  "secondaryText": {
    object (FormattableText)
  }
}
Pola
mainText

object (FormattableText)

Reprezentuje nazwę miejsca lub zapytania.

secondaryText

object (FormattableText)

Reprezentuje dodatkowe cechy wyróżniające (np. miasto lub region) w celu dokładniejszej identyfikacji miejsca lub doprecyzowania zapytania.

QueryPrediction

Wyniki prognozowania dla prognozy autouzupełniania zapytań.

Zapis JSON
{
  "text": {
    object (FormattableText)
  },
  "structuredFormat": {
    object (StructuredFormat)
  }
}
Pola
text

object (FormattableText)

Przewidywany tekst. Ten tekst nie oznacza miejsca, ale raczej zapytanie tekstowe, którego można użyć w punkcie końcowym wyszukiwania (np. Wyszukiwanie tekstowe).

text jest zalecany dla deweloperów, którzy chcą wyświetlać pojedynczy element interfejsu. Deweloperzy, którzy chcą pokazać 2 osobne, ale powiązane ze sobą elementy interfejsu, mogą zamiast tego użyć structuredFormat. Są to 2 różne sposoby przedstawiania prognozy zapytania. Użytkownicy nie powinni próbować analizowania składni structuredFormat jako text ani na odwrót.

Może być w różnych językach, jeśli żądania input i languageCode są w różnych językach lub jeśli część zapytania nie ma tłumaczenia z języka lokalnego na languageCode.

structuredFormat

object (StructuredFormat)

Podział prognozy zapytania na tekst główny zawierający zapytanie i tekst dodatkowy, które zawierają dodatkowe cechy wyróżniające (np. miasto lub region).

structuredFormat jest zalecany dla deweloperów, którzy chcą wyświetlać 2 osobne, ale powiązane ze sobą elementy interfejsu. Deweloperzy, którzy chcą wyświetlać tylko 1 element interfejsu, mogą zamiast tego użyć interfejsu text. Są to 2 różne sposoby przedstawiania prognozy zapytania. Użytkownicy nie powinni próbować analizowania składni structuredFormat jako text ani na odwrót.