인증 (OAuth)
OAuth
CREMA API는 OAuth를 이용해 인증을 제공합니다. 인증 단계는 다음과 같습니다.
- API Key 발급: 크리마로부터 발급받아 공유받으신 APP_ID, SECRET 을 사용하세요. 한 번만 받으시면 됩니다.
- Access Token 발급받기.
크리마 API의 인증 방식은 OAuth2.0의 Client Credentials를 사용하고 있습니다.
참고 : https://oauth.net/2/, https://tools.ietf.org/html/rfc6749#section-1.3.4
API Key 발급
크리마에 요청하시면 APP_ID 와 SECRET 을 전달해드립니다.
Access Token 안내
API를 사용하기 위해서는 액세스 토큰이 필요합니다. Access Token은 크리마에서 제공한 API Key(app id와 secret)을 이용해서 발급 가능합니다.
Access Token 발급(Client Credentials)
API Key를 발급 받았다면 https://api.cre.ma/oauth/token
에 대한 POST 요청을 통해 Access Token을 발급받을 수 있습니다. 발급받으신 Access Token을 사용해 쇼핑몰의 리소스를 읽고 수정할 수 있습니다.
Example:
POST /oauth/token HTTP/1.1
Content-Type: application/x-www-form-urlencoded;charset=UTF-8
grant_type=client_credentials&client_id=$APP_ID&client_secret=$SECRET
curl --location --request POST 'https://api.cre.ma/oauth/token?grant_type=client_credentials&client_id=$APP_ID&client_secret=$SECRET'
Access Token 유효 기간 및 만료 처리 안내
Access Token은 발급 후 60일 동안만 유효합니다.
- 만료된 토큰으로 API를 호출하면 401(권한없음) 응답이 반환됩니다.
- 토큰 발급 시 응답되는
expires_in
(유효기간, 초 단위)과created_at
(발급 시간) 값을 더해 만료 시점을 계산할 수 있습니다. - API 호출 전, 토큰이 만료되었는지 확인하고 필요 시 토큰을 재발급 받아 호출해 주세요.
- 만약 API 응답으로 401이 반환된다면, Access Token을 재발급한 뒤 다시 요청해 주세요.
Example:
{
"access_token": "", #token 데이터
"token_type": "Bearer", # 고정값
"expires_in": 1556856, # 토큰이 만료되기까지의 잔여 기간
"created_at": 1646706246 # 토큰 생성일(UNIX TIME)
}