logo

Username/Password (Resource Owner Password Credentials) 인증

SMTOWN id와 password로 인증하여 토큰을 얻을 수 있습니다.
username/password 인증은 앱 등록 요청시 요청하셔야합니다.

POST https://auth.smtown.com/oauth/token
Authorization: Basic MGYxOWYxNG==
Content-Type: application/x-www-form-urlencoded
Accept-Language: ko

grant_type=password&username=my-id@email.com&password=my-password&scope=profile.info
파라메타 필수여부 설명
Authorization Header 필수 Basic token 입니다. Basic token 생성을 참고하세요.
Content-Type Header 필수 POST의 content type 설정 : application/x-www-form-urlencoded 고정
Accept-Language Header 옵션 로그인시 발생되는 메세지를 해당 언어로 받을 수 있습니다. 지원되는 언어 : 한국어ko, 영어en:default, 일본어ja, 중국어zh
grant_type 필수 password 고정
username 필수 SMTOWN의 회원 아이디 - 이메일 형식
password 필수 SMTOWN의 회원 비밀번호 (text/plain)
scope 필수 공백으로 구분할 수 있습니다.
성공 응답
HTTP/1.1 200
Content-Type: application/json;charset=UTF-8
{
    "access_token": "2a324609ec94f18d614d4bc425de754",
    "token_type": "bearer",
    "refresh_token": "0f244a6ff13c8fcf20bb6bab5fc6f",
    "expires_in": 43199,
    "scope": "profile.info"
}
파라메타 설명
access_token 액세스 토큰입니다. 앱은 이 토큰을 사용하여 웹 API에 인증할 수 있습니다.
token_type 토큰 유형 값입니다. 모든 API에서 bearer형식만 지원합니다.
refresh_token access_token이 만료된 후 이 토큰을 사용하여 다른 액세스 토큰을 얻을 수 있습니다. 약 30일간의 유효기간이 존재합니다.
expires_in access_token의 유효 기간(초) 입니다.
scope access_token을 이용해 리소스를 요청할 때 사용되는 리소스의 범위입니다. 자세한 scope의 범위는 리소스 API 문서를 참조하세요.
실패 응답
HTTP/1.1 400
Content-Type: application/json;charset=UTF-8
{
    "error": "invalid_request",
    "error_description": "Bad credentials",
    "error_code": "-200",
    "error_code_str": "invalid_user",
    "error_message": "아이디 혹은 비밀번호가 일치하지 않습니다.",
    "timestamp": "1650745798220"
}
파라메타 설명
error 에러 형태
error_description 에러 설명
error_code 로그인 에러시 발생되는 숫자형 코드 - 하단 참조.
error_code_str 로그인 에러시 발생되는 문자형 코드 - 하단 참조. 중복 된 문자 코드가 존재하므로 주의 바랍니다.
error_message error_code 및 error_code_str에 해당하는 사용자 메세지로 인증 요청시 포함 된 Accept-Language의 언어로 제공됩니다.
timestamp 응답 시간 ms
error_code error_code_str error_message
-100 empty_username 이메일을 입력해 주십시오.
-110 empty_password 비밀번호를 입력하여 주십시오.
-200 invalid_user 아이디 혹은 비밀번호가 일치하지 않습니다.
-300 blocked_account 사용이 정지 된 계정입니다.
-310 expired_account 해당 계정은 탈퇴 대기 중인 계정입니다.
-320 expired_account 비밀번호 유효기간이 만료되었습니다. 관리자에게 문의하세요
-330 expired_account 계정이 비활성화 되었습니다. 관리자에게 문의하세요.
-340 dormant_account 해당 계정은 휴면 계정입니다.
샘플 - Access Token 요청