API 토큰
Expedia Group 여행 플랫폼 API 인증 및 승인
승인 및 인증(약어로 AuthN 및 AuthZ라고도 함)은 API 및 데이터에 대한 보안 액세스를 지원하는 기능입니다.
- 인증은 API 클라이언트(귀하의 클라이언트인지 확인)의 ID를 설정합니다.
- 승인은 클라이언트가 지정된 API 요청을 수행할 수 있는 권한을 가질 수 있도록 합니다.
토큰 정보
OAuth2.0은 토큰(영숫자 문자열)을 사용하여 인증 및 승인 증명을 설정하는 업계 표준 프로토콜입니다. 토큰에는 다음이 포함됩니다.
- 요청을 수행하는 API 클라이언트의 ID
- 클라이언트에 부여된 권한(할당한 범위 목록)
- 토큰이 생성된 시간과 사용할 수 있는 기간. Expedia Group 여행 플랫폼에서 발행한 토큰은 난독화되며 디코딩 또는 해독할 수 없습니다.
인증: 토큰 획득
API 클라이언트는 API 요청을 수행하기 전에 토큰을 획득해야 하며 이때 인증이 수행됩니다. 토큰은 HTTP 기본 인증을 사용하는 특수 API 엔드포인트를 통해 제공됩니다. API 로그인 정보(클라이언트 ID 및 암호)를 사용자 이름 및 비밀번호로 제공해야 합니다.
승인: 각 API 요청에 토큰 제공
단일 토큰을 사용하여 수명 동안 여러 API 요청을 승인할 수 있습니다. 모든 토큰의 수명은 30분이며 클라이언트 소프트웨어는 현재 토큰이 만료되기 전에 새 토큰을 획득해야 합니다.
유효한 토큰이 없는 API 요청은 HTTP 403 오류 코드(권한 없음)가 반환되면서 실패합니다. 이 오류는 토큰이 다음과 같은 상태일 때 발생합니다.
- 요청에서 누락됨
- 토큰 API에 의해 발행되지 않음
- 만료됨
- 필수 범위 누락
토큰 API
이 API를 사용하여 클라이언트 소프트웨어 내에서 토큰을 획득합니다.
curl --location --request POST 'https://api.expediagroup.com/identity/oauth2/v3/token' \
--header 'Authorization: Basic <key>:<secret>' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'grant_type=client_credentials'