공통 사항
도메인
| 환경 | 도메인 주소 |
|---|---|
개발서버 |
|
운영서버 |
- |
Http Status
| Code | 메시지 | 설명 |
|---|---|---|
200 |
OK |
Api 호출 성공 |
400 |
Bad request |
잘못된 요청 |
403 |
Forbidden |
권한 없음 |
500 |
Internal Server Error |
서버 오류 |
로그인
Http
POST /auth/v1/login HTTP/1.1
Content-Type: application/json
Content-Length: 66
Host: localhost:8080
{
"email" : "commerce@example.com",
"password" : "123!@#qwe"
}
Request
| 필드명 | 타입 | 필수값 | 양식 | 설명 |
|---|---|---|---|---|
String |
true |
이메일 |
||
password |
String |
true |
비밀번호 |
Response
| 필드명 | 타입 | 필수값 | 양식 | 설명 |
|---|---|---|---|---|
success |
Boolean |
true |
요청 성공 여부 |
|
data |
Object |
true |
응답 데이터 |
|
data.tokenInfo |
Object |
true |
JWT 토큰 정보 |
|
data.tokenInfo.accessToken |
String |
true |
액세스 토큰 |
|
data.tokenInfo.accessTokenExpiresIn |
Number |
true |
액세스 토큰 만료 시각 |
|
data.tokenInfo.refreshToken |
String |
true |
리프레쉬 토큰 |
|
data.tokenInfo.refreshTokenExpiresIn |
Number |
true |
리프레쉬 토큰 만료 시각 |
|
error |
Array |
오류 정보 |
{
"success" : true,
"data" : {
"tokenInfo" : {
"accessToken" : "accessToken",
"accessTokenExpiresIn" : 1729515490955,
"refreshToken" : "refreshToken",
"refreshTokenExpiresIn" : 1730717890955
}
},
"error" : null
}
회원가입
Http
POST /auth/v1/sign-up HTTP/1.1
Content-Type: application/json
Content-Length: 226
Host: localhost:8080
{
"email" : "commerce@example.com",
"password" : "123!@#qwe",
"name" : "홍길동",
"phone" : "01012345678",
"postalCode" : "12345",
"streetAddress" : "서울 종로구 테스트동",
"detailAddress" : "123-45"
}
Request
| 필드명 | 타입 | 필수값 | 양식 | 설명 |
|---|---|---|---|---|
String |
true |
이메일 (아이디) |
||
password |
String |
true |
비밀번호 |
|
name |
String |
true |
이름 |
|
phone |
String |
true |
숫자만 입력 |
연락처 |
postalCode |
String |
true |
우편번호 |
|
streetAddress |
String |
true |
지번주소 |
|
detailAddress |
String |
true |
상세주소 |
Response
| 필드명 | 타입 | 필수값 | 양식 | 설명 |
|---|---|---|---|---|
success |
Boolean |
true |
요청 성공 여부 |
|
data |
Object |
응답 데이터 |
||
error |
Array |
오류 정보 |
{
"success" : true,
"data" : null,
"error" : null
}
사용자 정보 조회
Http
GET /auth/v1/info HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJzdWIiOiIxIiwiaWF0IjoxNzI0NTIwNDc5LCJleHAiOjE3MjU3MzAwNzl9.i1WjcNXU2wBYjikGu5u0r41XmciafAfaMF3nNheb9cc7TUpai-tnMZCg3NUcTWP9
Host: localhost:8080
Response
| 필드명 | 타입 | 필수값 | 양식 | 설명 |
|---|---|---|---|---|
success |
Boolean |
true |
요청 성공 여부 |
|
data |
Object |
true |
응답 데이터 |
|
data.id |
Number |
true |
고유번호 |
|
data.email |
String |
true |
이메일 |
|
data.name |
String |
true |
이름 |
|
data.phone |
String |
true |
연락처 |
|
data.postalCode |
String |
true |
우편번호 |
|
data.streetAddress |
String |
true |
지번주소 |
|
data.detailAddress |
String |
true |
상세주소 |
|
error |
Array |
오류 정보 |
{
"success" : true,
"data" : {
"id" : 1,
"email" : "commerce@example.com",
"name" : "홍길동",
"phone" : "01012345678",
"postalCode" : "12345",
"streetAddress" : "서울 종로구 테스트동",
"detailAddress" : "123-45"
},
"error" : null
}
로그아웃
Http
POST /auth/v1/logout HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJzdWIiOiIxIiwiaWF0IjoxNzI0NTIwNDc5LCJleHAiOjE3MjU3MzAwNzl9.i1WjcNXU2wBYjikGu5u0r41XmciafAfaMF3nNheb9cc7TUpai-tnMZCg3NUcTWP9
Host: localhost:8080
Content-Type: application/x-www-form-urlencoded
Response
| 필드명 | 타입 | 필수값 | 양식 | 설명 |
|---|---|---|---|---|
success |
Boolean |
true |
요청 성공 여부 |
|
data |
Object |
응답 데이터 |
||
error |
Array |
오류 정보 |
{
"success" : true,
"data" : null,
"error" : null
}
액세스 토큰 재발급
Http
POST /auth/v1/refresh HTTP/1.1
refresh-token: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
Host: localhost:8080
Content-Type: application/x-www-form-urlencoded
Response
| 필드명 | 타입 | 필수값 | 양식 | 설명 |
|---|---|---|---|---|
success |
Boolean |
true |
요청 성공 여부 |
|
data |
Object |
true |
응답 데이터 |
|
data.tokenInfo |
Object |
true |
JWT 토큰 정보 |
|
data.tokenInfo.accessToken |
String |
true |
액세스 토큰 |
|
data.tokenInfo.accessTokenExpiresIn |
Number |
true |
액세스 토큰 만료 시각 |
|
data.tokenInfo.refreshToken |
String |
true |
리프레쉬 토큰 |
|
data.tokenInfo.refreshTokenExpiresIn |
Number |
true |
리프레쉬 토큰 만료 시각 |
|
error |
Array |
오류 정보 |
{
"success" : true,
"data" : {
"tokenInfo" : {
"accessToken" : "eyJhbGciOiJIUzM4NCJ9.eyJzdWIiOiIxIiwiaWF0IjoxNzI0NTIwNDc5LCJleHAiOjE3MjU3MzAwNzl9.i1WjcNXU2wBYjikGu5u0r41XmciafAfaMF3nNheb9cc7TUpai-tnMZCg3NUcTWP9",
"accessTokenExpiresIn" : 1729515490973,
"refreshToken" : "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c",
"refreshTokenExpiresIn" : 1730717890973
}
},
"error" : null
}
비밀번호 확인
Http
POST /auth/v1/password-verify HTTP/1.1
Content-Type: application/json
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJzdWIiOiIxIiwiaWF0IjoxNzI0NTIwNDc5LCJleHAiOjE3MjU3MzAwNzl9.i1WjcNXU2wBYjikGu5u0r41XmciafAfaMF3nNheb9cc7TUpai-tnMZCg3NUcTWP9
Content-Length: 30
Host: localhost:8080
{
"password" : "123!@#qwe"
}
Request
| 필드명 | 타입 | 필수값 | 양식 | 설명 |
|---|---|---|---|---|
password |
String |
true |
비밀번호 |
Response
| 필드명 | 타입 | 필수값 | 양식 | 설명 |
|---|---|---|---|---|
success |
Boolean |
true |
요청 성공 여부 |
|
data |
Object |
true |
응답 데이터 |
|
data.token |
String |
true |
인증 토큰 |
|
error |
Array |
오류 정보 |
{
"success" : true,
"data" : {
"token" : "test-auth-token"
},
"error" : null
}
사용자 정보 수정
Http
PUT /auth/v1/update HTTP/1.1
Content-Type: application/json
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJzdWIiOiIxIiwiaWF0IjoxNzI0NTIwNDc5LCJleHAiOjE3MjU3MzAwNzl9.i1WjcNXU2wBYjikGu5u0r41XmciafAfaMF3nNheb9cc7TUpai-tnMZCg3NUcTWP9
auth-token: test-auth-token
Content-Length: 190
Host: localhost:8080
{
"password" : "123!@#qwe",
"name" : "홍길동",
"phone" : "01012345678",
"postalCode" : "12345",
"streetAddress" : "서울 종로구 테스트동",
"detailAddress" : "123-45"
}
Request
| 필드명 | 타입 | 필수값 | 양식 | 설명 |
|---|---|---|---|---|
password |
String |
비밀번호 (없는 경우 기존 유지) |
||
name |
String |
true |
이름 |
|
phone |
String |
true |
숫자만 입력 |
연락처 |
postalCode |
String |
true |
우편번호 |
|
streetAddress |
String |
true |
지번주소 |
|
detailAddress |
String |
true |
상세주소 |
Response
| 필드명 | 타입 | 필수값 | 양식 | 설명 |
|---|---|---|---|---|
success |
Boolean |
true |
요청 성공 여부 |
|
data |
Object |
응답 데이터 |
||
error |
Array |
오류 정보 |
{
"success" : true,
"data" : null,
"error" : null
}
회원탈퇴
Http
DELETE /auth/v1/withdrawal HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzM4NCJ9.eyJzdWIiOiIxIiwiaWF0IjoxNzI0NTIwNDc5LCJleHAiOjE3MjU3MzAwNzl9.i1WjcNXU2wBYjikGu5u0r41XmciafAfaMF3nNheb9cc7TUpai-tnMZCg3NUcTWP9
Host: localhost:8080
Response
| 필드명 | 타입 | 필수값 | 양식 | 설명 |
|---|---|---|---|---|
success |
Boolean |
true |
요청 성공 여부 |
|
data |
Object |
응답 데이터 |
||
error |
Array |
오류 정보 |
{
"success" : true,
"data" : null,
"error" : null
}