Method: places.searchText

텍스트 쿼리 기반 장소 검색

HTTP 요청

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

URL은 gRPC 트랜스코딩 구문을 사용합니다.

요청 본문

요청 본문에는 다음과 같은 구조의 데이터가 포함됩니다.

JSON 표현
{
  "textQuery": string,
  "languageCode": string,
  "regionCode": string,
  "rankPreference": enum (RankPreference),
  "includedType": string,
  "openNow": boolean,
  "minRating": number,
  "maxResultCount": integer,
  "pageSize": integer,
  "pageToken": string,
  "priceLevels": [
    enum (PriceLevel)
  ],
  "strictTypeFiltering": boolean,
  "locationBias": {
    object (LocationBias)
  },
  "locationRestriction": {
    object (LocationRestriction)
  },
  "evOptions": {
    object (EVOptions)
  }
}
입력란
textQuery

string

필수 항목입니다. 텍스트 검색을 위한 텍스트 쿼리입니다.

languageCode

string

장소 세부정보가 기본 언어와 함께 표시됩니다(사용 가능한 경우). 언어 코드가 지정되지 않거나 인식할 수 없는 경우 언어의 장소 세부정보가 반환될 수 있으며 세부정보가 있는 경우 영어가 선호됩니다.

현재 지원되는 언어 목록은 https://developers.google.com/maps/faq#languagesupport에서 확인하세요.

regionCode

string

요청이 발생한 위치의 유니코드 국가/지역 코드 (CLDR)입니다. 이 매개변수는 사용 가능한 경우 지역별 장소 이름과 같은 장소 세부정보를 표시하는 데 사용됩니다. 매개변수는 관련 법률에 따라 결과에 영향을 줄 수 있습니다.

자세한 내용은 https://www.unicode.org/cldr/charts/latest/supplemental/territory_language_information.html을 참조하세요.

현재 3자리 지역 코드는 지원되지 않습니다.

rankPreference

enum (RankPreference)

응답에서 결과의 순위가 지정되는 방식입니다.

includedType

string

요청된 장소 유형입니다. 지원되는 유형의 전체 목록: https://developers.google.com/maps/documentation/places/web-service/place-types 포함된 유형 1개만 지원합니다.

openNow

boolean

현재 열려 있는 장소로 검색을 제한하는 데 사용됩니다. 기본값은 false입니다.

minRating

number

평균 사용자 평점이 이 한도보다 낮은 결과를 필터링합니다. 유효한 값은 0.5 케이던스([0, 0.5, 1.0, ... , 5.0] 포함)로 0과 5 사이의 부동 소수점이어야 합니다. 입력 평점은 가장 가까운 0.5(최대)로 반올림됩니다. 예를 들어 평점이 0.6이면 평점이 1.0 미만인 모든 결과가 제외됩니다.

maxResultCount
(deprecated)

integer

지원 중단됨: 대신 pageSize를 사용하세요.

페이지당 반환할 수 있는 최대 결과 수입니다. 사용 가능한 결과 수가 maxResultCount보다 크면 nextPageToken가 반환되며 이 결과를 pageToken에 전달하여 후속 요청에서 결과의 다음 페이지를 가져올 수 있습니다. 0을 제공하거나 값을 제공하지 않으면 기본값 20이 사용됩니다. 최댓값은 20이며, 20을 초과하는 값은 20으로 강제 변환됩니다. 음수 값은 INVALID_ARGUMENT 오류를 반환합니다.

maxResultCountpageSize를 모두 지정하면 maxResultCount가 무시됩니다.

pageSize

integer

선택사항입니다. 페이지당 반환할 수 있는 최대 결과 수입니다. 사용 가능한 결과 수가 pageSize보다 크면 nextPageToken가 반환되며 이 결과를 pageToken에 전달하여 후속 요청에서 결과의 다음 페이지를 가져올 수 있습니다. 0을 제공하거나 값을 제공하지 않으면 기본값 20이 사용됩니다. 최댓값은 20이며, 20보다 큰 값은 20으로 설정됩니다. 음수 값은 INVALID_ARGUMENT 오류를 반환합니다.

maxResultCountpageSize를 모두 지정하면 maxResultCount가 무시됩니다.

pageToken

string

선택사항입니다. 이전 TextSearch 호출에서 수신된 페이지 토큰입니다. 후속 페이지를 검색하려면 이를 입력합니다.

페이지로 나눌 때 TextSearch에 제공된 pageToken, pageSize, maxResultCount 이외의 모든 매개변수는 페이지 토큰을 제공한 초기 호출과 일치해야 합니다. 그렇지 않으면 INVALID_ARGUMENT 오류가 반환됩니다.

priceLevels[]

enum (PriceLevel)

특정 가격 수준으로 표시된 장소로 검색을 제한하는 데 사용됩니다. 사용자는 가격 수준의 조합을 선택할 수 있습니다. 기본적으로 모든 가격 수준을 선택합니다.

strictTypeFiltering

boolean

includeType에 엄격한 유형 필터링을 설정하는 데 사용됩니다. true로 설정하면 같은 유형의 결과만 반환됩니다. 기본값은 false입니다.

locationBias

object (LocationBias)

검색할 지역입니다. 이 위치는 지정된 위치를 둘러싼 결과가 반환될 수 있다는 의미로 바이어스 역할을 합니다. locationRestriction과 함께 설정할 수 없습니다.

locationRestriction

object (LocationRestriction)

검색할 지역입니다. 이 위치는 제한 역할을 하므로 지정된 위치를 벗어난 결과는 반환되지 않습니다. locationBias와 함께 설정할 수 없습니다.

evOptions

object (EVOptions)

선택사항입니다. 장소 검색 요청의 검색 가능한 EV 옵션을 설정합니다.

응답 본문

places.searchText의 응답 프로토콜입니다.

성공할 경우 응답 본문에 다음 구조의 데이터가 포함됩니다.

JSON 표현
{
  "places": [
    {
      object (Place)
    }
  ],
  "contextualContents": [
    {
      object (ContextualContent)
    }
  ],
  "nextPageToken": string
}
입력란
places[]

object (Place)

사용자의 텍스트 검색 기준에 맞는 장소의 목록입니다.

contextualContents[]

object (ContextualContent)

실험용: 자세한 내용은 https://developers.google.com/maps/documentation/places/web-service/experimental/places-generative를 참고하세요.

각 항목이 장소 필드의 동일한 색인에 있는 해당 장소와 연결되는 상황별 콘텐츠 목록입니다. 요청의 textQuery와 관련된 콘텐츠가 선호됩니다. 장소 중 하나에 대해 문맥 콘텐츠를 사용할 수 없는 경우 문맥이 없는 콘텐츠를 반환합니다. 이 장소에 대한 콘텐츠가 없는 경우에만 비어 있습니다. 이 목록에는 요청된 경우 장소 목록만큼 항목이 있어야 합니다.

nextPageToken

string

다음 페이지를 검색하기 위해 pageToken로 전송할 수 있는 토큰입니다. 이 필드가 생략되거나 비어 있는 경우 다음 페이지가 표시되지 않습니다.

RankPreference

응답에서 결과의 순위가 지정되는 방식입니다.

열거형
RANK_PREFERENCE_UNSPECIFIED '뉴욕의 식당'과 같은 범주형 쿼리의 경우 RELEVANCE는 기본값입니다. '캘리포니아 마운틴뷰'와 같이 카테고리가 없는 쿼리의 경우 rankPreference를 설정하지 않은 상태로 두는 것이 좋습니다.
DISTANCE 거리를 기준으로 결과의 순위를 매깁니다.
RELEVANCE 관련성을 기준으로 결과의 순위를 매깁니다. 일반 순위 스택에 따라 결정된 정렬 순서입니다.

LocationBias

검색할 지역입니다. 이 위치는 지정된 위치를 둘러싼 결과가 반환될 수 있다는 의미로 바이어스 역할을 합니다.

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.
}
입력란

통합 필드 type.

type는 다음 중 하나여야 합니다.

rectangle

object (Viewport)

북동쪽과 남서쪽 모서리로 정의된 직사각형 상자. rectangle.high()은 직사각형 표시 영역의 북동쪽 지점이어야 합니다. rectangle.low()은 직사각형 표시 영역의 남서쪽 지점이어야 합니다. rectangle.low().latitude()은(는) rectangle.high().latitude() 이하여야 합니다. 이 경우 위도 범위가 비어 있게 됩니다. 직사각형 표시 영역의 너비는 180도 이하여야 합니다.

circle

object (Circle)

중심점과 반지름으로 정의되는 원입니다.

LocationRestriction

검색할 지역입니다. 이 위치는 제한 역할을 하므로 지정된 위치를 벗어난 결과는 반환되지 않습니다.

JSON 표현
{

  // Union field type can be only one of the following:
  "rectangle": {
    object (Viewport)
  }
  // End of list of possible types for union field type.
}
입력란

통합 필드 type.

type는 다음 중 하나여야 합니다.

rectangle

object (Viewport)

북동쪽과 남서쪽 모서리로 정의된 직사각형 상자. rectangle.high()은 직사각형 표시 영역의 북동쪽 지점이어야 합니다. rectangle.low()은 직사각형 표시 영역의 남서쪽 지점이어야 합니다. rectangle.low().latitude()은(는) rectangle.high().latitude() 이하여야 합니다. 이 경우 위도 범위가 비어 있게 됩니다. 직사각형 표시 영역의 너비는 180도 이하여야 합니다.

EVOptions

장소 검색 요청의 검색 가능한 EV 옵션입니다.

JSON 표현
{
  "minimumChargingRateKw": number,
  "connectorTypes": [
    enum (EVConnectorType)
  ]
}
입력란
minimumChargingRateKw

number

선택사항입니다. 필요한 최소 충전 속도(킬로와트 단위) 충전율이 지정된 요금보다 낮은 장소가 필터링됩니다.

connectorTypes[]

enum (EVConnectorType)

선택사항입니다. 기본 EV 커넥터 유형의 목록입니다. 나열된 커넥터 유형을 지원하지 않는 장소는 필터링됩니다.

ContextualContent

실험용: 자세한 내용은 https://developers.google.com/maps/documentation/places/web-service/experimental/places-generative를 참고하세요.

장소 쿼리와 관련이 있는 콘텐츠입니다.

JSON 표현
{
  "reviews": [
    {
      object (Review)
    }
  ],
  "photos": [
    {
      object (Photo)
    }
  ],
  "justifications": [
    {
      object (Justification)
    }
  ]
}
입력란
reviews[]

object (Review)

장소 쿼리와 연속된 이 장소에 대한 리뷰 목록입니다.

photos[]

object (Photo)

장소 검색어와 연속된 이 장소의 사진에 대한 정보 (참조 포함)입니다.

justifications[]

object (Justification)

실험용: 자세한 내용은 https://developers.google.com/maps/documentation/places/web-service/experimental/places-generative를 참고하세요.

장소에 대한 근거입니다.

근거

실험용: 자세한 내용은 https://developers.google.com/maps/documentation/places/web-service/experimental/places-generative를 참고하세요.

장소에 대한 근거입니다. 근거는 장소가 최종 사용자의 관심을 끌 수 있는 이유에 대한 질문에 답변합니다.

JSON 표현
{

  // Union field justification can be only one of the following:
  "reviewJustification": {
    object (ReviewJustification)
  },
  "businessAvailabilityAttributesJustification": {
    object (BusinessAvailabilityAttributesJustification)
  }
  // End of list of possible types for union field justification.
}
입력란

통합 필드 justification.

justification는 다음 중 하나여야 합니다.

reviewJustification

object (ReviewJustification)

실험용: 자세한 내용은 https://developers.google.com/maps/documentation/places/web-service/experimental/places-generative를 참고하세요.

businessAvailabilityAttributesJustification

object (BusinessAvailabilityAttributesJustification)

실험용: 자세한 내용은 https://developers.google.com/maps/documentation/places/web-service/experimental/places-generative를 참고하세요.

ReviewJustification

실험용: 자세한 내용은 https://developers.google.com/maps/documentation/places/web-service/experimental/places-generative를 참고하세요.

사용자 리뷰 근거입니다. 이렇게 하면 최종 사용자가 관심을 가질 만한 사용자 리뷰 섹션이 강조표시됩니다. 예를 들어 검색어가 '장작 피자'인 경우 리뷰 근거는 검색어와 관련된 텍스트를 강조 표시합니다.

JSON 표현
{
  "highlightedText": {
    object (HighlightedText)
  },
  "review": {
    object (Review)
  }
}
입력란
highlightedText

object (HighlightedText)

review

object (Review)

강조표시된 텍스트가 생성된 리뷰입니다.

HighlightedText

사유로 강조표시된 텍스트입니다. 이는 리뷰 자체의 하위 집합입니다. 강조 표시할 정확한 단어는 HighlightedTextRange로 표시합니다. 강조 표시된 텍스트에 여러 단어가 있을 수 있습니다.

JSON 표현
{
  "text": string,
  "highlightedTextRanges": [
    {
      object (HighlightedTextRange)
    }
  ]
}
입력란
text

string

highlightedTextRanges[]

object (HighlightedTextRange)

강조표시된 텍스트의 범위 목록입니다.

HighlightedTextRange

강조표시된 텍스트의 범위입니다.

JSON 표현
{
  "startIndex": integer,
  "endIndex": integer
}
입력란
startIndex

integer

endIndex

integer

BusinessAvailabilityAttributesJustification

실험용: 자세한 내용은 https://developers.google.com/maps/documentation/places/web-service/experimental/places-generative를 참고하세요. BusinessAvailabilityAttributes 근거입니다. 최종 사용자가 관심을 가질 만한 비즈니스 속성을 보여줍니다.

JSON 표현
{
  "takeout": boolean,
  "delivery": boolean,
  "dineIn": boolean
}
입력란
takeout

boolean

테이크아웃이 가능한 장소인지 여부

delivery

boolean

배송 서비스를 제공하는지 여부

dineIn

boolean

매장에서 매장 내 식사를 제공하는지 여부