Rapid용 자동 완성 API
여행자에게 검색 시 제안 사항 제공
타입헤드(GET /suggestions
)는 여행자에게 지역, 관련 위치, 사용 가능한 숙박 시설를 기반으로 추천 검색 환경을 제공할 수 있는 새로운 API 엔드포인트입니다. 이 엔드포인트는 부분 검색 문자열과 입력한 모든 요청 매개변수를 기반으로 한 제안 목록을 반환합니다. 계정에 자동 완성를 추가하려면 계정 관리자에게 문의하세요.
작동 방식
자동 완성 API는 언어 예측 도구로, 자동 완성 또는 자동 제안이라고도 합니다. 검색창에 입력한 부분 정보를 기반으로 지역, 위치 또는 숙박 시설의 목록을 반환합니다. 사용자가 검색창에 입력하면 자동 완성 API는 도시, 지역, 숙박 시설 또는 우편번호 정보를 사용하여 최대 10개의 결과를 반환하기 시작합니다. 그런 다음 여행자는 이 목록에서 선택하여 검색을 시작하거나 계속 입력하여 자동으로 추천된 결과를 계속 구체화할 수 있습니다.
예를 들어, 'Memp'로 시작하는 검색은 미국 테네시주 멤피스와 관련된 지역, 기차역, 공항 등 여러 지리적 옵션이 표시되고 그 뒤에 미국 미주리주 멤피스가 표시됩니다.
시작 가이드
API에 대해 자세히 알아보려면 계정 관리자 또는 파트너 커넥트 담당자에게 문의해야 합니다. 액세스 승인을 요청하고 승인을 받으면 자동 완성를 포함하도록 계약을 수정합니다. 조직에서 자동 완성를 활성화하면 파트너 커넥트 담당자가 필요한 개발을 지원합니다.
출시 요구 사항:
- 인증을 위해 불투명 액세스 토큰 프로세스를 채택하고 사용해야 합니다.
- 액세스 토큰은 토큰을 요청한 것과 동일한 서킷 ID 또는 API 키만 사용할 수 있습니다.
- 액세스 토큰은 25분 동안만 존재할 수 있습니다.
- 새 액세스 토큰에 대한 요청은 해당 일정에 따라 지속적으로 갱신되도록 구축되어야 하며 너무 자주 업데이트되지 않아야 합니다.
- 언어와 요청 텍스트는 필수 매개 변수입니다. Rapid의 지원 언어 목록은 을 참조하세요 .
권한 부여 및 액세스
현재 Rapid 버전 3을 사용 중인 파트너는 API 엔드포인트에서 Rapid 자동 완성 API를 요청할 수 있습니다. 승인을 받으면 기존 프로필에 API를 성공적으로 사용하는 데 필요한 권한이 부여됩니다.
권한 설정
자동 완성 API에 대한 인증은 액세스 키가 필요하다는 점에서 다른 Rapid API 기능과 다릅니다. 인증 헤더를 사용하여 EPS 게이트웨이를 호출하여 액세스 키를 가져올 수 있도록 아피키를 제공합니다. 그런 다음 인증 헤더로 액세스 키를 전달하여 자동 완성 API 엔드포인트를 호출할 수 있습니다.
예시: API 키를 base64 형식으로 인코딩
var api_key = postman.getEnvironmentVariable("api_key");
var shared_secret= postman.getEnvironmentVariable("shared_secret");
var base64Hash = CryptoJS.enc.Utf8.parse(api_key + ":" + shared_secret);
var base64 = CryptoJS.enc.Base64.stringify(base64Hash);
postman.setEnvironmentVariable("base64",base64);
불투명 액세스 토큰 받기
불투명 액세스 토큰(사용자 또는 리소스에 대한 정보가 포함되지 않은 토큰)은 자동 완성 API를 사용하려면 필요합니다.
샘플 요청
POST – https://api.ean.com/identity/oauth2/v3/token
Header:
Key: ‘Authorization’
Value: ‘Basic {base64}’
샘플 응답
{
"access_token": "p1xy6rxahicQPUIX_Sq6a52yFnHXpX3ImaSX9sKiUI4:XM8qZiTr1HPDc8FgBE5HLvFTFdICuRFV0-l7gFWI-WU",
"token_type": "bearer",
"expires_in": 1800,
"scope": "demand-solutions.demand-api-wrappers-playground.all"
}
자동 완성 요청하기
요청 헤더와 쿼리 매개변수에 몇 가지 필수 정보를 포함해야 합니다. 응답을 더욱 강력하게 만들려면 선택적 쿼리 매개변수를 포함할 수도 있습니다.
요청 헤더
필수 여부
Accept
클라이언트가 다시 수신할 응답 형식을 지정합니다. 이 값은 반드시application/json
.Accept-Encoding
클라이언트가 다시 수신할 응답 인코딩을 지정합니다. 이 값은 반드시gzip
.User-Agent
통합에서 캡처한 고객 요청의 헤더 문자열입니다. 애플리케이션을 빌드하는 경우User-Agent
값은{app name}/{app version}
. 예:TravelNow/3.30.112
.
쿼리 매개변수
필수 여부
language
는 two-digit 언어와 국가 코드의 하이픈으로 연결된 쌍만 사용하는 BCP47 형식의 하위 집합으로 응답에 원하는 언어를 지정합니다. #에 설명된 대로 ISO639-1 알파 2 언어 코드와 ISO3166-1 알파 2 국가 코드만 사용하세요.w3.org(예:language=en-US
). Rapid의 지원 언어 목록 참조 .text
쿼리할 입력 문자열로, 150자로 제한됩니다(예:text=Springfie
).
Optional
type
: 사용자가 찾고 있는 장소를 설명합니다. 이 매개변수는 서로 다른 값으로 여러 번 입력할 수 있습니다(예:type=AIRPORT&type=CITY
). 제공하지 않으면 기본값은 모든 유형을 포함합니다. 사용 가능한 옵션은 아래 허용되는 값 표를 참조하세요.line_of_business
: 이 매개변수는 검색 휴리스틱을 제공하며, 유효한 값일수록 응답의 연관성이 높아집니다. 이 매개 변수는 선택 사항이지만 이 매개 변수를 제외하면 검색 결과에 영향을 미칠 수 있으므로 기본값을properties
으로 설정했습니다. 사용 가능한 옵션은 아래 허용되는 값 표를 참조하세요.package_type
사용자가 지정한 패키지 유형별로 필터링합니다. 사용 가능한 옵션은 아래 허용되는 값 표를 참조하세요.feature
를 누르면 제안 결과 계산이 변경됩니다. 값은hierarchy
,nearby_airport
,postal_code
입니다.region_id
는 지정된 지역이 포함된 숙박 시설로 결과를 필터링합니다.origin
는 쿼리 텍스트가 출발지가 아닌 도착지인지 여부를 지정합니다. 기본 검색은 목적지만 찾습니다.limit
는 응답에서 반환되는 최대 제안 수를 지정합니다. 이 값은 1에서 10 사이여야 합니다(예:limit=5
). 이 매개 변수를 제공하지 않으면 기본값은 10입니다.
허용되는 값
type | line_of_business | package_type |
---|---|---|
airport | properties (기본값) | flight_property |
city | flights | flight_property_car |
multi_city_vicinity | packages | flight_car |
neighborhood | cars | property_car |
point_of_interest | activities | |
airport_metro_code | ||
multi_region | ||
train_station | ||
metro_station | ||
address | ||
property | ||
bus_station |
위 표에 포함되지 않은 값은 오류가 발생합니다.
데이터 요청
access_token
, GET
요청을 설정합니다.
샘플 요청
GET - https://api.ean.com/v3/suggestions?language=en-US&line_of_business=properties&limit=3&text=chicago&type=city&type=neighborhood
Header :
Authorization: Bearer {{access_token}}
샘플 응답
[
{
"related_id": "4477519",
"type": "airport",
"name": "Chicago, IL (ORD-O'Hare Intl.)",
"name_full": "Chicago, IL, United States of America (ORD-O'Hare Intl.)",
"name_display": "<B>Chicago</B>, IL, United States of America (ORD-O'Hare Intl.)",
"country_code": "US",
"country_code_3": "USA",
"iata_airport_code": "ORD",
"iata_airport_metro_code": "CHI",
"coordinates": {
"latitude": 41.976977,
"longitude": -87.90481
}
},
{
"related_id": "829",
"type": "city",
"name": "Chicago",
"name_full": "Chicago, Illinois, United States of America",
"name_display": "<B>Chicago</B>, Illinois, United States of America",
"country_code": "US",
"country_code_3": "USA",
"iata_airport_code": "CHI",
"iata_airport_metro_code": "CHI",
"coordinates": {
"latitude": 41.878113,
"longitude": -87.629799
}
},
{
"related_id": "6350699",
"type": "neighborhood",
"name": "Downtown Chicago",
"name_full": "Downtown Chicago, Chicago, Illinois, United States of America",
"name_display": "Downtown <B>Chicago</B>, <B>Chicago</B>, Illinois, United States of America",
"country_code": "US",
"country_code_3": "USA",
"iata_airport_code": "CHI",
"iata_airport_metro_code": "CHI",
"coordinates": {
"latitude": 41.885969845574834,
"longitude": -87.62933540465228
}
}
]
오류 코드
자동 완성 API는 다른 Rapid API와 공통 오류 코드를 공유합니다. 이러한 모든 코드는 일반적인 오류 응답 페이지에 자세히 설명되어 있습니다.
다른 Rapid API와 상호 작용하기
최종 사용자가 검색창에 텍스트를 입력하면 자동 완성 API가 검색의 지정된 type
에 따라 지역(지역 ID, 이름, 좌표 등) 또는 숙박 시설 정보를 가져옵니다. 그런 다음 API는 해당 정보를 자동 완성 목록에 결과로 표시합니다.
사용자가 자동 완성 목록에서 지역을 선택하면 지역 API가 호출되어 해당 지역 주변의 숙박 시설 목록을 가져옵니다. 해당 검색에서 반환된 숙박 시설 ID를 사용하여 Shop API를 호출하고 사용 가능 여부를 확인한 후 목록에 숙박 시설를 표시합니다.
사용자가 자동 완성 목록에서 숙박 시설를 선택하면 이용 가능 여부와 숙박 시설 콘텐츠에 대한 정보가 포함된 세부 정보 페이지가 생성됩니다.
API 세부 정보
이 페이지에서 관련 엔드포인트 정의를 살펴본 후 API Explorer 또는 다른 테스트 소프트웨어를 사용하여 예시 및 스키마 정의가 실제 출력과 어떤 차이가 있는지 확인해 보세요.
추가 리소스
Rapid API 엔드포인트를 모두 사용해보고 싶거나 OpenAPI 사양 또는 Postman 컬렉션을 다운로드하고 싶으신 경우, 필요한 모든 것을 갖추고 있습니다.