> For the complete documentation index, see [llms.txt](https://tech.x2bee.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://tech.x2bee.com/api/api-en/back-office-api-reference/system-bo-api/login.md).

# Login

## Password Reset

> \## Function Description\
> \* Resets the account password.\
> \---\
> \## Detailed Description\
> \* The reset can only be processed if the entered mobile phone number matches the mobile phone number of the entered ID account.\
> \* A random combination of 5 lowercase letters, 3 numbers, and 2 special characters is generated.\
> \* An alert message (KakaoTalk) with the reset password guide is sent to the entered mobile phone number.<br>

```json
{"openapi":"3.1.0","info":{"title":"X2BEE BO API","version":"v1"},"servers":[{"url":"https://api-bo.x2bee.com/api/bo/","description":"prd"}],"security":[{"accessToken":[]}],"components":{"securitySchemes":{"accessToken":{"type":"http","name":"accessToken","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"LoginRequest":{"type":"object","properties":{"seq":{"type":"integer","format":"int64"},"loginId":{"type":"string","minLength":1},"password":{"type":"string"},"remoteAddr":{"type":"string"},"lastAccessTime":{"type":"integer","format":"int64"},"userGbCd":{"type":"string"},"rtGrpNo":{"type":"string"},"jobGrpCd":{"type":"string"},"ocpCd":{"type":"string"},"caloUrl":{"type":"string"},"sysGbCd":{"type":"string"},"userId":{"type":"string"},"pwd":{"type":"string"},"userNm":{"type":"string"},"cellSctNo":{"type":"string"},"cellTxnoNo":{"type":"string"},"cellEndNo":{"type":"string"},"pwdIniYn":{"type":"string"},"sessId":{"type":"string"},"tpCd":{"type":"string"},"entrNo":{"type":"string"},"entrNm":{"type":"string"},"applicationName":{"type":"string"},"privacyPolicyInfoList":{"type":"array","items":{"$ref":"#/components/schemas/PrivacyPolicyInfo"}},"accountNonExpired":{"type":"boolean"},"accountNonLocked":{"type":"boolean"},"credentialsNonExpired":{"type":"boolean"},"permissionToViewPersonalInfo":{"type":"object","additionalProperties":{}},"username":{"type":"string"},"name":{"type":"string"},"enabled":{"type":"boolean"}},"required":["loginId"]},"PrivacyPolicyInfo":{"type":"object","description":"Personal Information Handling Authorization DTO","properties":{"userId":{"type":"string","description":"User ID"},"indInfoGbCd":{"type":"string","description":"Personal Information Type Code (UR008)"},"useYn":{"type":"string","description":"Usage Status"}}},"ResponseString":{"type":"object","properties":{"timestamp":{"type":"string","format":"date-time","description":"result time"},"code":{"type":"string","description":"result code"},"message":{"type":"string","description":"result message"},"isProcess":{"type":"boolean","description":"process check"},"payload":{"type":"string","description":"payload"},"error":{"type":"boolean","description":"is error"},"errors":{"type":"array","description":"validation error list","items":{"$ref":"#/components/schemas/ValidationError"}}}},"ValidationError":{"type":"object","properties":{"field":{"type":"string","description":"field"},"message":{"type":"string","description":"field message"}}},"Response":{"type":"object","properties":{"timestamp":{"type":"string","format":"date-time","description":"result time"},"code":{"type":"string","description":"result code"},"message":{"type":"string","description":"result message"},"isProcess":{"type":"boolean","description":"process check"},"payload":{"description":"payload"},"error":{"type":"boolean","description":"is error"},"errors":{"type":"array","description":"validation error list","items":{"$ref":"#/components/schemas/ValidationError"}}}}}},"paths":{"/v1/login/initializePasswordOnLogin":{"put":{"tags":["Login"],"summary":"Password Reset","description":"## Function Description\n* Resets the account password.\n---\n## Detailed Description\n* The reset can only be processed if the entered mobile phone number matches the mobile phone number of the entered ID account.\n* A random combination of 5 lowercase letters, 3 numbers, and 2 special characters is generated.\n* An alert message (KakaoTalk) with the reset password guide is sent to the entered mobile phone number.\n","operationId":"initializePasswordOnLogin","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LoginRequest"}}},"required":true},"responses":{"200":{"description":"Success","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ResponseString"}}}},"900":{"description":"Business processing error details","content":{"*/*":{"schema":{"$ref":"#/components/schemas/Response"}}}}}}}}}
```

## Login Token Refresh

> \## Function Description\
> \* Performs token refresh.\
> \---\
> \## Detailed Description\
> \* Refreshes the access token using the refresh token.\
> \* The refresh token must be stored in a cookie.\
> \* The issued access token is used by including it in the header as accessToken.<br>

```json
{"openapi":"3.1.0","info":{"title":"X2BEE BO API","version":"v1"},"servers":[{"url":"https://api-bo.x2bee.com/api/bo/","description":"prd"}],"security":[{"accessToken":[]}],"components":{"securitySchemes":{"accessToken":{"type":"http","name":"accessToken","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"ResponseLoginResponseV2":{"type":"object","properties":{"timestamp":{"type":"string","format":"date-time","description":"result time"},"code":{"type":"string","description":"result code"},"message":{"type":"string","description":"result message"},"isProcess":{"type":"boolean","description":"process check"},"payload":{"$ref":"#/components/schemas/LoginResponseV2","description":"payload"},"error":{"type":"boolean","description":"is error"},"errors":{"type":"array","description":"validation error list","items":{"$ref":"#/components/schemas/ValidationError"}}}},"LoginResponseV2":{"type":"object","description":"Login Response V2","properties":{"accessToken":{"type":"string","description":"Access Token"},"refreshToken":{"type":"string","description":"Refresh Token"}}},"ValidationError":{"type":"object","properties":{"field":{"type":"string","description":"field"},"message":{"type":"string","description":"field message"}}}}},"paths":{"/v2/token/refresh":{"post":{"tags":["Login"],"summary":"Login Token Refresh","description":"## Function Description\n* Performs token refresh.\n---\n## Detailed Description\n* Refreshes the access token using the refresh token.\n* The refresh token must be stored in a cookie.\n* The issued access token is used by including it in the header as accessToken.\n","operationId":"validRefreshToken","responses":{"200":{"description":"Token Refresh Success","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ResponseLoginResponseV2"}}}},"401":{"description":"Token Refresh Failure","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ResponseLoginResponseV2"}}}}}}}}}
```

## Access Token Validation

> \## Function Description\
> \* Performs Access Token validation.\
> \---\
> \## Detailed Description\
> \* Checks the status of the token using the Access Token.\
> \* Returns a distinction between an expired token and an invalid token.\
> \* If the token is valid, returns the login ID.<br>

```json
{"openapi":"3.1.0","info":{"title":"X2BEE BO API","version":"v1"},"servers":[{"url":"https://api-bo.x2bee.com/api/bo/","description":"prd"}],"security":[{"accessToken":[]}],"components":{"securitySchemes":{"accessToken":{"type":"http","name":"accessToken","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"LoginResponseV2":{"type":"object","description":"Login Response V2","properties":{"accessToken":{"type":"string","description":"Access Token"},"refreshToken":{"type":"string","description":"Refresh Token"}}},"ResponseString":{"type":"object","properties":{"timestamp":{"type":"string","format":"date-time","description":"result time"},"code":{"type":"string","description":"result code"},"message":{"type":"string","description":"result message"},"isProcess":{"type":"boolean","description":"process check"},"payload":{"type":"string","description":"payload"},"error":{"type":"boolean","description":"is error"},"errors":{"type":"array","description":"validation error list","items":{"$ref":"#/components/schemas/ValidationError"}}}},"ValidationError":{"type":"object","properties":{"field":{"type":"string","description":"field"},"message":{"type":"string","description":"field message"}}}}},"paths":{"/v2/token/access":{"post":{"tags":["Login"],"summary":"Access Token Validation","description":"## Function Description\n* Performs Access Token validation.\n---\n## Detailed Description\n* Checks the status of the token using the Access Token.\n* Returns a distinction between an expired token and an invalid token.\n* If the token is valid, returns the login ID.\n","operationId":"validAccessToken","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LoginResponseV2"}}},"required":true},"responses":{"200":{"description":"Token Validation Success","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ResponseString"}}}},"401":{"description":"Token Validation Failure","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ResponseString"}}}}}}}}}
```

## Logout

> \## Function Description\
> \* Performs logout.\
> \---\
> \## Detailed Description\
> \* Performs logout using the refresh token.\
> \* The refresh token must be stored in a cookie.<br>

```json
{"openapi":"3.1.0","info":{"title":"X2BEE BO API","version":"v1"},"servers":[{"url":"https://api-bo.x2bee.com/api/bo/","description":"prd"}],"security":[{"accessToken":[]}],"components":{"securitySchemes":{"accessToken":{"type":"http","name":"accessToken","scheme":"bearer","bearerFormat":"JWT"}}},"paths":{"/v2/logout":{"post":{"tags":["Login"],"summary":"Logout","description":"## Function Description\n* Performs logout.\n---\n## Detailed Description\n* Performs logout using the refresh token.\n* The refresh token must be stored in a cookie.\n","operationId":"logout","responses":{"200":{"description":"Logout Success","content":{"*/*":{"schema":{"type":"string"}}}}}}}}}
```

## Login

> \## Function Description\
> \* Performs login.\
> \---\
> \## Detailed Description\
> \* Performs login by receiving id and password as input.\
> \* Issues an access token and refresh token upon successful login.\
> \* The issued access token is used by including it in the header as accessToken.\
> \* The issued refresh token is stored in a cookie for use.<br>

```json
{"openapi":"3.1.0","info":{"title":"X2BEE BO API","version":"v1"},"servers":[{"url":"https://api-bo.x2bee.com/api/bo/","description":"prd"}],"security":[{"accessToken":[]}],"components":{"securitySchemes":{"accessToken":{"type":"http","name":"accessToken","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"LoginRequest":{"type":"object","properties":{"seq":{"type":"integer","format":"int64"},"loginId":{"type":"string","minLength":1},"password":{"type":"string"},"remoteAddr":{"type":"string"},"lastAccessTime":{"type":"integer","format":"int64"},"userGbCd":{"type":"string"},"rtGrpNo":{"type":"string"},"jobGrpCd":{"type":"string"},"ocpCd":{"type":"string"},"caloUrl":{"type":"string"},"sysGbCd":{"type":"string"},"userId":{"type":"string"},"pwd":{"type":"string"},"userNm":{"type":"string"},"cellSctNo":{"type":"string"},"cellTxnoNo":{"type":"string"},"cellEndNo":{"type":"string"},"pwdIniYn":{"type":"string"},"sessId":{"type":"string"},"tpCd":{"type":"string"},"entrNo":{"type":"string"},"entrNm":{"type":"string"},"applicationName":{"type":"string"},"privacyPolicyInfoList":{"type":"array","items":{"$ref":"#/components/schemas/PrivacyPolicyInfo"}},"accountNonExpired":{"type":"boolean"},"accountNonLocked":{"type":"boolean"},"credentialsNonExpired":{"type":"boolean"},"permissionToViewPersonalInfo":{"type":"object","additionalProperties":{}},"username":{"type":"string"},"name":{"type":"string"},"enabled":{"type":"boolean"}},"required":["loginId"]},"PrivacyPolicyInfo":{"type":"object","description":"Personal Information Handling Authorization DTO","properties":{"userId":{"type":"string","description":"User ID"},"indInfoGbCd":{"type":"string","description":"Personal Information Type Code (UR008)"},"useYn":{"type":"string","description":"Usage Status"}}},"Response":{"type":"object","properties":{"timestamp":{"type":"string","format":"date-time","description":"result time"},"code":{"type":"string","description":"result code"},"message":{"type":"string","description":"result message"},"isProcess":{"type":"boolean","description":"process check"},"payload":{"description":"payload"},"error":{"type":"boolean","description":"is error"},"errors":{"type":"array","description":"validation error list","items":{"$ref":"#/components/schemas/ValidationError"}}}},"ValidationError":{"type":"object","properties":{"field":{"type":"string","description":"field"},"message":{"type":"string","description":"field message"}}}}},"paths":{"/v2/login":{"post":{"tags":["Login"],"summary":"Login","description":"## Function Description\n* Performs login.\n---\n## Detailed Description\n* Performs login by receiving id and password as input.\n* Issues an access token and refresh token upon successful login.\n* The issued access token is used by including it in the header as accessToken.\n* The issued refresh token is stored in a cookie for use.\n","operationId":"login","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LoginRequest"}}},"required":true},"responses":{"200":{"description":"Login Success","content":{"*/*":{"schema":{"$ref":"#/components/schemas/Response"}}}},"401":{"description":"Login Failure","content":{"*/*":{"schema":{"$ref":"#/components/schemas/Response"}}}}}}}}}
```

## Logged-in User Information

> \## Function Description\
> \* Returns information about the logged-in user.\
> \---\
> \## Detailed Description\
> \* Retrieves the user via the logged-in user's ID and returns non-sensitive data.\
> \* An access token is required.<br>

```json
{"openapi":"3.1.0","info":{"title":"X2BEE BO API","version":"v1"},"servers":[{"url":"https://api-bo.x2bee.com/api/bo/","description":"prd"}],"security":[{"accessToken":[]}],"components":{"securitySchemes":{"accessToken":{"type":"http","name":"accessToken","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"ResponseAuthUserInfo":{"type":"object","properties":{"timestamp":{"type":"string","format":"date-time","description":"result time"},"code":{"type":"string","description":"result code"},"message":{"type":"string","description":"result message"},"isProcess":{"type":"boolean","description":"process check"},"payload":{"$ref":"#/components/schemas/AuthUserInfo","description":"payload"},"error":{"type":"boolean","description":"is error"},"errors":{"type":"array","description":"validation error list","items":{"$ref":"#/components/schemas/ValidationError"}}}},"AuthUserInfo":{"type":"object","properties":{"userId":{"type":"string"},"userNm":{"type":"string"},"emailAddr":{"type":"string"},"entrNo":{"type":"string"},"entrNm":{"type":"string"},"userGbCd":{"type":"string"},"rtGrpNo":{"type":"string"},"jobGrpCd":{"type":"string"},"sysGbCd":{"type":"string"},"rcntUseDtm":{"type":"string","format":"date-time"},"userIpAddr":{"type":"string"},"indInfoDealYn":{"type":"string"}}},"ValidationError":{"type":"object","properties":{"field":{"type":"string","description":"field"},"message":{"type":"string","description":"field message"}}}}},"paths":{"/v2/login/auth":{"get":{"tags":["Login"],"summary":"Logged-in User Information","description":"## Function Description\n* Returns information about the logged-in user.\n---\n## Detailed Description\n* Retrieves the user via the logged-in user's ID and returns non-sensitive data.\n* An access token is required.\n","operationId":"getAuthUserInfo","responses":{"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ResponseAuthUserInfo"}}}}}}}}}
```
