로그인
기능설명
기연동되어있지 않은 회원이 신규로 소셜계정을 연동하고 토큰을 발행합니다.
상세설명
소셜타입(type), 회원번호(mbrNo), 소셜계정 고유ID(smpctId), 소셜ID(emailAddr), **로그인매체코드(loginMediaCd)**는 필수입니다.
넘어온 소셜타입에 대해 기존 연동된 데이터가 있는지 체크합니다.
기존 회원에 소셜계정 연동정보를 저장합니다. 연동종료일자는 2999-12-31 23:59:59로 지정됩니다.
정상적으로 소셜연동이 되면 기존 토큰 발행과 같은 방식으로 토큰이 발행됩니다.
정상적으로 토큰이 발행되면 정상로그인 이력을, 실패하면 실패 로그인 이력을 생성합니다.
수정번호
Release v2.00_240401: 소셜 로그인 처리 response refreshToken 추가
SocialConnectRequest
Access Token
소셜로그인 연동, 연동해제 Request
소셜 타입(ME052)
10Possible values: 회원번호
100001641소셜고유ID
소셜ID
로그인매체코드(ME026)
10Possible values: 사이트번호
성공
소셜로그인 인증 성공 후 사용자 조회 응답값
생년월일
19940101회원명
홍길동이메일
성별구분코드
MPossible values: 회원관리코드
10Possible values: CI연계값
소셜구분코드
10Possible values: 내외국인구분코드
휴대폰번호
회원번호
100001641기연동여부
NPossible values: 소셜고유ID
로그인ID
업무처리 오류 내용
POST /api/member/v1/social/connect?socialConnectRequest=text HTTP/1.1
Host: api-member.x2bee.com/
Content-Type: application/json
Accept: */*
Content-Length: 99
{
"type": 10,
"mbrNo": 100001641,
"smpctId": "text",
"emailAddr": "text",
"loginMediaCd": 10,
"siteNo": "text"
}{
"brth": 19940101,
"mbrNm": "홍길동",
"emailAddr": "text",
"sexGbCd": "M",
"mbrMgrCd": 10,
"ciCtacVal": "text",
"smpctGbCd": 10,
"nafrGbCd": "text",
"phoneNumber": "text",
"mbrNo": 100001641,
"connectYn": "N",
"smpctId": "text",
"loginId": "text"
}기능설명
로그인할 소셜계정 정보를 찾아 인증한 후, 후처리 방식을 결정합니다.
상세설명
동의화면에서 넘어온 **인가코드(code)**와 로그인할 **소셜 타입(type)**은 필수로 넘어와야합니다.
소셜사이트의 동의화면에서 넘겨준 인가코드(code)를 통해 사용자를 조회하는 액세스토큰을 발급받고, 소셜 계정을 찾습니다.
해당 소셜 계정정보로 기연동여부, 휴면회원여부, 소셜계정의 CI 인증여부를 통해 본인인증필요여부를 함께 Response에 담아줍니다.
카카오 로그인 관련 API 카카오 개발자 링크
사용자조회 토큰 발급 URL: https://kauth.kakao.com/oauth/token
사용자조회 URL: https://kapi.kakao.com/v2/user/me
연결 끊기 URL: https://kapi.kakao.com/v1/user/unlink
네이버 로그인 관련 API 네이버 개발자 링크
사용자조회 토큰 발급 URL: https://nid.naver.com/oauth2.0/token
사용자조회 URL: https://openapi.naver.com/v1/nid/me
구글 로그인 관련 API 구글 개발자 링크
사용자조회 토큰 발급 URL: https://oauth2.googleapis.com/token
사용자조회 URL: https://www.googleapis.com/oauth2/v2/userinfo
애플 로그인 관련 API 애플 개발자 링크
사용자조회 토큰 발급 URL: https://appleid.apple.com/auth/token
수정번호
Release v1.07_231228: 휴면회원여부 조회 로직 제거Release v2.00_240530: 소셜 추가(구글, 애플)
SocialAuthRequest
Access Token
소셜로그인 인증, 소셜로그인 연동 Request
소셜 사이트 인증 성공 시 넘겨주는 인증코드
소셜 사이트 인증 시 애플리케이션 상태
소셜 타입(ME052)
10Possible values: 성공
소셜로그인 인증 성공 후 사용자 조회 응답값
생년월일
19940101회원명
홍길동이메일
성별구분코드
MPossible values: 회원관리코드
10Possible values: CI연계값
소셜구분코드
10Possible values: 내외국인구분코드
휴대폰번호
회원번호
100001641기연동여부
NPossible values: 소셜고유ID
로그인ID
업무처리 오류 내용
POST /api/member/v1/social/check?socialLoginRequest=text HTTP/1.1
Host: api-member.x2bee.com/
Content-Type: application/json
Accept: */*
Content-Length: 40
{
"code": "text",
"state": "text",
"type": 10
}{
"brth": 19940101,
"mbrNm": "홍길동",
"emailAddr": "text",
"sexGbCd": "M",
"mbrMgrCd": 10,
"ciCtacVal": "text",
"smpctGbCd": 10,
"nafrGbCd": "text",
"phoneNumber": "text",
"mbrNo": 100001641,
"connectYn": "N",
"smpctId": "text",
"loginId": "text"
}기능설명
발급된 토큰로그인의 토큰으로 로그인합니다.
상세설명
토큰로그인을 통해 사이트 내 정상적인 서비스 이용을 지원합니다.
로그인을 통하여 서비스 이용을 위한 accessToken을 발급합니다.
토큰 종류
accessToken : 액세스 토큰은 사이트 이용을 위하여 발급되는 토큰으로 회원의 권한을 갖는 토큰입니다.
refreshToken : 리프레시 토큰은 토큰의 유효기간이 상실된 액세스토큰을 사용자가 재로그인의 과정을 거치지 않고, 액세스 토큰의 유효시간을 갱신하는 토큰을 의미합니다.
accessToken에 포함된 정보
mbrNo : 회원번호
langCd : 회원의 가입 사이트 국가 및 로그인위치
로그인 시 각 모듈에서 권한 확인 및 UserDetail(회원기본정보)을 사용하기 위하여 Redis 저장소에 등록합니다.
특이사항
로그인 제한 사항
국내 사이트에서 회원가입을 한 경우 글로벌 사이트에서 로그인이 제한됩니다.
글로벌 사이트에서 회원가입을 한 경우 국내 사이트에서 로그인이 제한됩니다.
토큰의 유효기간
accessToken : 액세스 토큰의 유효시간은 5분이며, 5분 이후에는 토큰의 권한을 상실하여 사이트 이용이 불가능합니다.
refreshToken : 리프레시 토큰의 유효시간은 30분이며, 30분 이후에는 토큰의 권한을 상실하여 액세스 토큰 재갱신이 불가능합니다.
수정번호
Release v2.00_251121: 토근 만료기간 추가
AutoBioLoginRequest
Access Token
인증토큰생성(등록) - 자동로그인, 생체인증로그인
로그인 매체코드(ME026)
10Possible values: 회원인증토큰 구분코드(ME053)
10Possible values: 회원번호
100000300토큰(토큰 삭제, 재발급 시 사용)
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJ4MmJlZSIsInN1YiI6IngyYmVlIG1lbWJlciB0b2tlbiIsImV4cCI6MTY5MTY1MTAzOCwiaWF0IjoxNjkxNjQzODM4LCJqdGkiOiI2NGE5YjU5Ny0zNmRjLTQ3MjItYjQ1OC1mMjI1ZTRhMzQxMjUiLCJtYnJObyI6IjEwMDAwMDk4MiIsImxhbmdDZCI6ImtvIiwicm9sZXMiOlsiUk9MRV9NRU1CRVIiXX0.tPpy_zt9vhwWLqJowQsIAMKzfXzBjCzhan0ZTVvpzthbsWm_85wsFaxCIOyO7IKl성공
로그인 Response
액세스 토큰
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJ4MmJlZSIsInN1YiI6IngyYmVlIG1lbWJlciB0b2tlbiIsImV4cCI6MTY5MjkzMzIxMiwiaWF0IjoxNjkyOTI2MDEyLCJqdGkiOiI3OWY0OTdmNC02YTAwLTQ5MmEtYWIxYS0zZmNjNGEwMTY4NzkiLCJtYnJObyI6IjEwMDAwMDk4MiIsImxhbmdDZCI6ImtvIiwicm9sZXMiOlsiUk9MRV9NRU1CRVIiXX0.Hct1hExBZ5PiulBmi-XHIpcDvKbN5tZmiMonyCnJV5qeSQv63PiFj0lA0UKU0VtL리프레시 토큰
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJ4MmJlZSIsInN1YiI6IngyYmVlIG1lbWJlciB0b2tlbiIsImV4cCI6MTY5MjkzNjgxMiwiaWF0IjoxNjkyOTI2MDEyLCJqdGkiOiI3NGQ4YmNkNi0wODBjLTQxMjUtOWY1Mi04Njg5MTMwNzM5MzMifQ.H56d1LPyNkxfLNixb9cnk1AaSFwZAV39Mo-i_Dlv9pBZRXCvE7kFIHTlUmVU7p6FAccess Token 만료 시간 (Unix Timestamp, 초 단위)
1692933212Refresh Token 만료 시간 (Unix Timestamp, 초 단위)
1692935012회원번호
10000151ci인증 여부
Y성인인증 여부 (1일)
Y회원관리코드
20비밀번호 변경 대상 여부
N임시비밀번호 발급 회원 여부
N로그인 ID
id001가입 승인 상태 코드(ME058)
10승인 반려 사유
사업자등록증 이미지 없음회원 상태(ME003)
10Sub 결과 메세지
SuccessSub 결과 코드
0000업무처리 오류 내용
POST /api/member/v1/front/tokenlogin?autoBioLoginRequest=text HTTP/1.1
Host: api-member.x2bee.com/
Content-Type: application/json
Accept: */*
Content-Length: 410
{
"loginMediaCd": 10,
"mbrCertiTknGbCd": 10,
"mbrNo": 100000300,
"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJ4MmJlZSIsInN1YiI6IngyYmVlIG1lbWJlciB0b2tlbiIsImV4cCI6MTY5MTY1MTAzOCwiaWF0IjoxNjkxNjQzODM4LCJqdGkiOiI2NGE5YjU5Ny0zNmRjLTQ3MjItYjQ1OC1mMjI1ZTRhMzQxMjUiLCJtYnJObyI6IjEwMDAwMDk4MiIsImxhbmdDZCI6ImtvIiwicm9sZXMiOlsiUk9MRV9NRU1CRVIiXX0.tPpy_zt9vhwWLqJowQsIAMKzfXzBjCzhan0ZTVvpzthbsWm_85wsFaxCIOyO7IKl"
}{
"accessToken": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJ4MmJlZSIsInN1YiI6IngyYmVlIG1lbWJlciB0b2tlbiIsImV4cCI6MTY5MjkzMzIxMiwiaWF0IjoxNjkyOTI2MDEyLCJqdGkiOiI3OWY0OTdmNC02YTAwLTQ5MmEtYWIxYS0zZmNjNGEwMTY4NzkiLCJtYnJObyI6IjEwMDAwMDk4MiIsImxhbmdDZCI6ImtvIiwicm9sZXMiOlsiUk9MRV9NRU1CRVIiXX0.Hct1hExBZ5PiulBmi-XHIpcDvKbN5tZmiMonyCnJV5qeSQv63PiFj0lA0UKU0VtL",
"refreshToken": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJ4MmJlZSIsInN1YiI6IngyYmVlIG1lbWJlciB0b2tlbiIsImV4cCI6MTY5MjkzNjgxMiwiaWF0IjoxNjkyOTI2MDEyLCJqdGkiOiI3NGQ4YmNkNi0wODBjLTQxMjUtOWY1Mi04Njg5MTMwNzM5MzMifQ.H56d1LPyNkxfLNixb9cnk1AaSFwZAV39Mo-i_Dlv9pBZRXCvE7kFIHTlUmVU7p6F",
"accessTokenExpiresAt": 1692933212,
"refreshTokenExpiresAt": 1692935012,
"mbrNo": 10000151,
"ciCtacValYn": "Y",
"certiYn": "Y",
"mbrMgrCd": 20,
"pwdChgYn": "N",
"tmpPwdIssuYn": "N",
"loginId": "id001",
"joinSgtStatCd": 10,
"aprvRtrnCaus": "사업자등록증 이미지 없음",
"mbrStatCd": 10,
"resultMessage": "Success",
"resultCode": "0000"
}AutoBioLoginRequest
UserDetail
Access Token
인증토큰생성(등록) - 자동로그인, 생체인증로그인
로그인 매체코드(ME026)
10Possible values: 회원인증토큰 구분코드(ME053)
10Possible values: 회원번호
100000300토큰(토큰 삭제, 재발급 시 사용)
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJ4MmJlZSIsInN1YiI6IngyYmVlIG1lbWJlciB0b2tlbiIsImV4cCI6MTY5MTY1MTAzOCwiaWF0IjoxNjkxNjQzODM4LCJqdGkiOiI2NGE5YjU5Ny0zNmRjLTQ3MjItYjQ1OC1mMjI1ZTRhMzQxMjUiLCJtYnJObyI6IjEwMDAwMDk4MiIsImxhbmdDZCI6ImtvIiwicm9sZXMiOlsiUk9MRV9NRU1CRVIiXX0.tPpy_zt9vhwWLqJowQsIAMKzfXzBjCzhan0ZTVvpzthbsWm_85wsFaxCIOyO7IKl성공
인증토큰생성(등록) - 자동로그인, 생체인증로그인 Response
자동 및 생체인증 로그인 토큰
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJ4MmJlZSIsInN1YiI6IngyYmVlIG1lbWJlciB0b2tlbiIsImV4cCI6MTY5NDc1MzcxNCwiaWF0IjoxNjkyOTI2MzI3LCJqdGkiOiI2N2NlNmM3Yy0wZmNjLTRhMjYtOWU3Yi03Y2RjYzUxMThhMjgifQ.IHerK9GmRaxDd8CBJty4A9774-ANmlN_ceOHpk_ov5-OleHDLBD-bWTnxt4HdWzX업무처리 오류 내용
POST /api/member/v1/front/tokenIssu?autoBioLoginRequest=text&userDetail=text HTTP/1.1
Host: api-member.x2bee.com/
Content-Type: application/json
Accept: */*
Content-Length: 410
{
"loginMediaCd": 10,
"mbrCertiTknGbCd": 10,
"mbrNo": 100000300,
"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJ4MmJlZSIsInN1YiI6IngyYmVlIG1lbWJlciB0b2tlbiIsImV4cCI6MTY5MTY1MTAzOCwiaWF0IjoxNjkxNjQzODM4LCJqdGkiOiI2NGE5YjU5Ny0zNmRjLTQ3MjItYjQ1OC1mMjI1ZTRhMzQxMjUiLCJtYnJObyI6IjEwMDAwMDk4MiIsImxhbmdDZCI6ImtvIiwicm9sZXMiOlsiUk9MRV9NRU1CRVIiXX0.tPpy_zt9vhwWLqJowQsIAMKzfXzBjCzhan0ZTVvpzthbsWm_85wsFaxCIOyO7IKl"
}{
"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJ4MmJlZSIsInN1YiI6IngyYmVlIG1lbWJlciB0b2tlbiIsImV4cCI6MTY5NDc1MzcxNCwiaWF0IjoxNjkyOTI2MzI3LCJqdGkiOiI2N2NlNmM3Yy0wZmNjLTRhMjYtOWU3Yi03Y2RjYzUxMThhMjgifQ.IHerK9GmRaxDd8CBJty4A9774-ANmlN_ceOHpk_ov5-OleHDLBD-bWTnxt4HdWzX"
}AutoBioLoginRequest
UserDetail
Access Token
인증토큰생성(등록) - 자동로그인, 생체인증로그인
로그인 매체코드(ME026)
10Possible values: 회원인증토큰 구분코드(ME053)
10Possible values: 회원번호
100000300토큰(토큰 삭제, 재발급 시 사용)
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJ4MmJlZSIsInN1YiI6IngyYmVlIG1lbWJlciB0b2tlbiIsImV4cCI6MTY5MTY1MTAzOCwiaWF0IjoxNjkxNjQzODM4LCJqdGkiOiI2NGE5YjU5Ny0zNmRjLTQ3MjItYjQ1OC1mMjI1ZTRhMzQxMjUiLCJtYnJObyI6IjEwMDAwMDk4MiIsImxhbmdDZCI6ImtvIiwicm9sZXMiOlsiUk9MRV9NRU1CRVIiXX0.tPpy_zt9vhwWLqJowQsIAMKzfXzBjCzhan0ZTVvpzthbsWm_85wsFaxCIOyO7IKl성공
No content
업무처리 오류 내용
DELETE /api/member/v1/front/tokenIssu?autoBioLoginRequest=text&userDetail=text HTTP/1.1
Host: api-member.x2bee.com/
Content-Type: application/json
Accept: */*
Content-Length: 410
{
"loginMediaCd": 10,
"mbrCertiTknGbCd": 10,
"mbrNo": 100000300,
"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJ4MmJlZSIsInN1YiI6IngyYmVlIG1lbWJlciB0b2tlbiIsImV4cCI6MTY5MTY1MTAzOCwiaWF0IjoxNjkxNjQzODM4LCJqdGkiOiI2NGE5YjU5Ny0zNmRjLTQ3MjItYjQ1OC1mMjI1ZTRhMzQxMjUiLCJtYnJObyI6IjEwMDAwMDk4MiIsImxhbmdDZCI6ImtvIiwicm9sZXMiOlsiUk9MRV9NRU1CRVIiXX0.tPpy_zt9vhwWLqJowQsIAMKzfXzBjCzhan0ZTVvpzthbsWm_85wsFaxCIOyO7IKl"
}No content
기능설명
로그인 처리 시 발급받은 refreshToken으로 유효시간이 지난 accessToken을 재생성합니다.
상세설명
X2BEE 서비스 이용을 위한 accessToken의 유효시간이 만료된 경우, refreshToken을 통해 accessToken을 재생성합니다.
accessToken의 재생성 후에는 기존에 발급 되었던 refreshToken은 삭제되고, 새로운 refreshToken이 발급되어 저장됩니다.
수정번호
Release v2.00_240401: token Redis 이관작업 및 token 암호화
Release v2.00_240425: 로그인 토큰 만료 시, API 중복 호출로 인한 오류 수정
Release v2.00_251121: 토근 만료기간 추가
TokenRefreshRequest
Access Token
accessToken 재생성을 위한 Request
액세스 토큰
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJ4MmJlZSIsInN1YiI6IngyYmVlIG1lbWJlciB0b2tlbiIsImV4cCI6MTY5MjkzMzIxMiwiaWF0IjoxNjkyOTI2MDEyLCJqdGkiOiI3OWY0OTdmNC02YTAwLTQ5MmEtYWIxYS0zZmNjNGEwMTY4NzkiLCJtYnJObyI6IjEwMDAwMDk4MiIsImxhbmdDZCI6ImtvIiwicm9sZXMiOlsiUk9MRV9NRU1CRVIiXX0.Hct1hExBZ5PiulBmi-XHIpcDvKbN5tZmiMonyCnJV5qeSQv63PiFj0lA0UKU0VtLrefreshToken
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJ4MmJlZSIsInN1YiI6IngyYmVlIG1lbWJlciB0b2tlbiIsImV4cCI6MTY5MTY1MTAzOCwiaWF0IjoxNjkxNjQzODM4LCJqdGkiOiI2NGE5YjU5Ny0zNmRjLTQ3MjItYjQ1OC1mMjI1ZTRhMzQxMjUiLCJtYnJObyI6IjEwMDAwMDk4MiIsImxhbmdDZCI6ImtvIiwicm9sZXMiOlsiUk9MRV9NRU1CRVIiXX0.tPpy_zt9vhwWLqJowQsIAMKzfXzBjCzhan0ZTVvpzthbsWm_85wsFaxCIOyO7IKl회원인증토큰발급순번
회원번호
100000300회원인증토큰구분코드(ME053)
10Possible values: 로그인 ID
id001성공
업무처리 오류 내용
POST /api/member/v1/front/refresh?tokenRefreshRequest=text HTTP/1.1
Host: api-member.x2bee.com/
Content-Type: application/json
Accept: */*
Content-Length: 803
{
"accessToken": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJ4MmJlZSIsInN1YiI6IngyYmVlIG1lbWJlciB0b2tlbiIsImV4cCI6MTY5MjkzMzIxMiwiaWF0IjoxNjkyOTI2MDEyLCJqdGkiOiI3OWY0OTdmNC02YTAwLTQ5MmEtYWIxYS0zZmNjNGEwMTY4NzkiLCJtYnJObyI6IjEwMDAwMDk4MiIsImxhbmdDZCI6ImtvIiwicm9sZXMiOlsiUk9MRV9NRU1CRVIiXX0.Hct1hExBZ5PiulBmi-XHIpcDvKbN5tZmiMonyCnJV5qeSQv63PiFj0lA0UKU0VtL",
"refreshToken": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJ4MmJlZSIsInN1YiI6IngyYmVlIG1lbWJlciB0b2tlbiIsImV4cCI6MTY5MTY1MTAzOCwiaWF0IjoxNjkxNjQzODM4LCJqdGkiOiI2NGE5YjU5Ny0zNmRjLTQ3MjItYjQ1OC1mMjI1ZTRhMzQxMjUiLCJtYnJObyI6IjEwMDAwMDk4MiIsImxhbmdDZCI6ImtvIiwicm9sZXMiOlsiUk9MRV9NRU1CRVIiXX0.tPpy_zt9vhwWLqJowQsIAMKzfXzBjCzhan0ZTVvpzthbsWm_85wsFaxCIOyO7IKl",
"mbrCertiTknIssuSeq": "text",
"mbrNo": 100000300,
"mbrCertiTknGbCd": 10,
"loginId": "id001"
}{
"accessToken": "text",
"refreshToken": "text",
"mbrNo": "text",
"accessTokenExpiresAt": 1,
"refreshTokenExpiresAt": 1
}LogoutRequest
UserDetail
Access Token
로그아웃 Request
액세스토큰
BUoj9fwKXi3qvkgtt6NtFfcSR261vK9GWt9NmKhgjejfK9x1tIitm4Ig%2BjKTlYb10wWv%2Fa85q9SuyFd43Fg9d1fl5vf3cYcNXbDm3uB8zBysFIfLpIA1kn4nyjI%2BUZDSXpnlsJ67LED1pRSUqbk4m6fCa4eD3dBH9PqGEy6wYiyTa3wvWKnBupya9PWRhPpE2CyVurTRx4sU1paca6CTQ%2BT%2B%2Bqkibu6nWkc8GW0EQNLWbebSMbMEh5LrNy9pXB0zF1zNIg3Xe27h39OvovmhF98ChdVDRxg2%2FQFmgVybvDA6DJ63iGZdp57u64pM4HTJ3n0gpclaeIJJusLfMd9dKyA8RV3SLvfkZ7nZ8Snx7FmURIq%2BuSvn7Qvp%2BLwuzOpayl1bQUkLSve3Z4TCnj5oP3%2F4QzfshHNV7K3IfR9q0kX0EqeyKv9CrF%2F%2Br5MM4MEPksKsDqIUkN%2BGzvYBSuopLekmHwpaRfCaZO19ImQ3FFfmZDM1adRqaGDsW5xFLMoh8W1bxTT0ke51YUOhEIctSlQ2rRofzNYNKE5Kff8ktRc4snbeIA3uOUwhmjXhjjbAP4DOIzlXrySLgfyoANVABpdvq9tp6Vjifkb5w%2Brbl0QJb4u%2BM4jMaDAYIbghsvEOvyJGth96kw%2Bpw7kkZvbPupOhNOozM6qX0zS4Zd9skwi%2FXFsJBOI2PgcrCBWSnfZXioz32IPkOR1hpSKutHwpRz8xvfYoHHY5hcw7bKomLZq9lsxbgK%2FYLsAn%2Bt5Y1xBrNvEXJwycUbXvhh3Y6kUfaPJYoAgTQikcQGirPt%2FmTMx7GBzLfArLRXl2n8CQP%2FHqqr3GQuJJpFwrSG2AeIbTf9yY8W5852kO0lJA생체인증 토큰
로그인매체코드(ME026)
10Possible values: 회원번호
100000151성공
No content
업무처리 오류 내용
POST /api/member/v1/front/logout?request=text&userDetail=text HTTP/1.1
Host: api-member.x2bee.com/
Content-Type: application/json
Accept: */*
Content-Length: 988
{
"accessToken": "BUoj9fwKXi3qvkgtt6NtFfcSR261vK9GWt9NmKhgjejfK9x1tIitm4Ig%2BjKTlYb10wWv%2Fa85q9SuyFd43Fg9d1fl5vf3cYcNXbDm3uB8zBysFIfLpIA1kn4nyjI%2BUZDSXpnlsJ67LED1pRSUqbk4m6fCa4eD3dBH9PqGEy6wYiyTa3wvWKnBupya9PWRhPpE2CyVurTRx4sU1paca6CTQ%2BT%2B%2Bqkibu6nWkc8GW0EQNLWbebSMbMEh5LrNy9pXB0zF1zNIg3Xe27h39OvovmhF98ChdVDRxg2%2FQFmgVybvDA6DJ63iGZdp57u64pM4HTJ3n0gpclaeIJJusLfMd9dKyA8RV3SLvfkZ7nZ8Snx7FmURIq%2BuSvn7Qvp%2BLwuzOpayl1bQUkLSve3Z4TCnj5oP3%2F4QzfshHNV7K3IfR9q0kX0EqeyKv9CrF%2F%2Br5MM4MEPksKsDqIUkN%2BGzvYBSuopLekmHwpaRfCaZO19ImQ3FFfmZDM1adRqaGDsW5xFLMoh8W1bxTT0ke51YUOhEIctSlQ2rRofzNYNKE5Kff8ktRc4snbeIA3uOUwhmjXhjjbAP4DOIzlXrySLgfyoANVABpdvq9tp6Vjifkb5w%2Brbl0QJb4u%2BM4jMaDAYIbghsvEOvyJGth96kw%2Bpw7kkZvbPupOhNOozM6qX0zS4Zd9skwi%2FXFsJBOI2PgcrCBWSnfZXioz32IPkOR1hpSKutHwpRz8xvfYoHHY5hcw7bKomLZq9lsxbgK%2FYLsAn%2Bt5Y1xBrNvEXJwycUbXvhh3Y6kUfaPJYoAgTQikcQGirPt%2FmTMx7GBzLfArLRXl2n8CQP%2FHqqr3GQuJJpFwrSG2AeIbTf9yY8W5852kO0lJA",
"biometricToken": "text",
"loginMediaCd": 10,
"mbrNo": 100000151
}No content
기능설명
X2BEE 쇼핑몰 이용을 위한 계정 로그인을 진행합니다.
상세설명
회원 로그인을 통해 사이트 내 정상적인 서비스 이용을 지원합니다.
로그인을 통하여 서비스 이용을 위한 accessToken을 발급합니다.
토큰 종류
accessToken : 액세스 토큰은 사이트 이용을 위하여 발급되는 토큰으로 회원의 권한을 갖는 토큰입니다.
refreshToken : 리프레시 토큰은 토큰의 유효기간이 상실된 액세스토큰을 사용자가 재로그인의 과정을 거치지 않고, 액세스 토큰의 유효시간을 갱신하는 토큰을 의미합니다.
accessToken에 포함된 정보
mbrNo : 회원번호
langCd : 회원의 가입 사이트 국가 및 로그인위치
로그인 시 각 모듈에서 권한 확인 및 UserDetail(회원기본정보)을 사용하기 위하여 Redis 저장소에 등록합니다.
UserDetail 정보는 Redis에 기록되고 있으며, Redis 정보를 보유하고 있는 타임아웃은 RefreshToken의 Expire time과 동일합니다.(x2bee 솔루션 기준 30분)
로그인오류 3회 초과 시 무차별대입 공격을 방지하기 위해 캡차코드 검증을 진행합니다.
특이사항
로그인 제한 사항
국내 사이트에서 회원가입을 한 경우 글로벌 사이트에서 로그인이 제한됩니다.
글로벌 사이트에서 회원가입을 한 경우 국내 사이트에서 로그인이 제한됩니다.
토큰의 유효기간
accessToken : 액세스 토큰의 유효시간은 5분이며, 5분 이후에는 토큰의 권한을 상실하여 사이트 이용이 불가능합니다.
refreshToken : 리프레시 토큰의 유효시간은 30분이며, 30분 이후에는 토큰의 권한을 상실하여 액세스 토큰 재갱신이 불가능합니다.
각 토큰은 X2BEE 암호화 시스템에 의해 암호화되어 관리됩니다.
수정번호
Release v1.07_231228: 로그인 시 휴면회원여부 체크 로직 제거
Release v1.08_240118: 캡챠코드 Redis 이관작업
Release v2.00_240401: token Redis 이관작업 및 token 암호화
Release v2.00_240401: 소셜 로그인 시 캡차코드 체크 제외, 일반 로그인 시 소셜 회원인 경우 에러 로직 제거
Release v2.00_251121: 토근 만료기간 추가
LoginRequest
Access Token
로그인 Request
로그인매체코드(ME026)
10Possible values: 로그인구분(ME056)
10Possible values: 회원 아이디
id001비밀번호
pwd123!@#캡챠코드
123456성공
로그인 Response
액세스 토큰
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJ4MmJlZSIsInN1YiI6IngyYmVlIG1lbWJlciB0b2tlbiIsImV4cCI6MTY5MjkzMzIxMiwiaWF0IjoxNjkyOTI2MDEyLCJqdGkiOiI3OWY0OTdmNC02YTAwLTQ5MmEtYWIxYS0zZmNjNGEwMTY4NzkiLCJtYnJObyI6IjEwMDAwMDk4MiIsImxhbmdDZCI6ImtvIiwicm9sZXMiOlsiUk9MRV9NRU1CRVIiXX0.Hct1hExBZ5PiulBmi-XHIpcDvKbN5tZmiMonyCnJV5qeSQv63PiFj0lA0UKU0VtL리프레시 토큰
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJ4MmJlZSIsInN1YiI6IngyYmVlIG1lbWJlciB0b2tlbiIsImV4cCI6MTY5MjkzNjgxMiwiaWF0IjoxNjkyOTI2MDEyLCJqdGkiOiI3NGQ4YmNkNi0wODBjLTQxMjUtOWY1Mi04Njg5MTMwNzM5MzMifQ.H56d1LPyNkxfLNixb9cnk1AaSFwZAV39Mo-i_Dlv9pBZRXCvE7kFIHTlUmVU7p6FAccess Token 만료 시간 (Unix Timestamp, 초 단위)
1692933212Refresh Token 만료 시간 (Unix Timestamp, 초 단위)
1692935012회원번호
10000151ci인증 여부
Y성인인증 여부 (1일)
Y회원관리코드
20비밀번호 변경 대상 여부
N임시비밀번호 발급 회원 여부
N로그인 ID
id001가입 승인 상태 코드(ME058)
10승인 반려 사유
사업자등록증 이미지 없음회원 상태(ME003)
10Sub 결과 메세지
SuccessSub 결과 코드
0000업무처리 오류 내용
POST /api/member/v1/front/login?loginRequest=text HTTP/1.1
Host: api-member.x2bee.com/
Content-Type: application/json
Accept: */*
Content-Length: 89
{
"loginFromCd": 10,
"loginType": 10,
"lgnId": "id001",
"passwd": "pwd123!@#",
"captchaCd": 123456
}{
"accessToken": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJ4MmJlZSIsInN1YiI6IngyYmVlIG1lbWJlciB0b2tlbiIsImV4cCI6MTY5MjkzMzIxMiwiaWF0IjoxNjkyOTI2MDEyLCJqdGkiOiI3OWY0OTdmNC02YTAwLTQ5MmEtYWIxYS0zZmNjNGEwMTY4NzkiLCJtYnJObyI6IjEwMDAwMDk4MiIsImxhbmdDZCI6ImtvIiwicm9sZXMiOlsiUk9MRV9NRU1CRVIiXX0.Hct1hExBZ5PiulBmi-XHIpcDvKbN5tZmiMonyCnJV5qeSQv63PiFj0lA0UKU0VtL",
"refreshToken": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzM4NCJ9.eyJpc3MiOiJ4MmJlZSIsInN1YiI6IngyYmVlIG1lbWJlciB0b2tlbiIsImV4cCI6MTY5MjkzNjgxMiwiaWF0IjoxNjkyOTI2MDEyLCJqdGkiOiI3NGQ4YmNkNi0wODBjLTQxMjUtOWY1Mi04Njg5MTMwNzM5MzMifQ.H56d1LPyNkxfLNixb9cnk1AaSFwZAV39Mo-i_Dlv9pBZRXCvE7kFIHTlUmVU7p6F",
"accessTokenExpiresAt": 1692933212,
"refreshTokenExpiresAt": 1692935012,
"mbrNo": 10000151,
"ciCtacValYn": "Y",
"certiYn": "Y",
"mbrMgrCd": 20,
"pwdChgYn": "N",
"tmpPwdIssuYn": "N",
"loginId": "id001",
"joinSgtStatCd": 10,
"aprvRtrnCaus": "사업자등록증 이미지 없음",
"mbrStatCd": 10,
"resultMessage": "Success",
"resultCode": "0000"
}LoginRequest
Access Token
로그인 Request
로그인매체코드(ME026)
10Possible values: 로그인구분(ME056)
10Possible values: 회원 아이디
id001비밀번호
pwd123!@#캡챠코드
123456성공
No content
POST /api/member/v1/captcha/validAnswer?loginRequest=text HTTP/1.1
Host: api-member.x2bee.com/
Content-Type: application/json
Accept: */*
Content-Length: 89
{
"loginFromCd": 10,
"loginType": 10,
"lgnId": "id001",
"passwd": "pwd123!@#",
"captchaCd": 123456
}성공
No content
HttpServletRequest
HttpServletResponse
Access Token
성공
No content
GET /api/member/v1/captcha/getCaptchaTextToAudio?loginId=text&req=text&res=text HTTP/1.1
Host: api-member.x2bee.com/
Accept: */*
성공
No content
HttpServletRequest
HttpServletResponse
Access Token
성공
No content
업무처리 오류 내용
GET /api/member/v1/captcha/getCaptchaImg?loginId=text&req=text&res=text HTTP/1.1
Host: api-member.x2bee.com/
Accept: */*
No content
마지막 업데이트