Api Endpoints
API 엔드포인트
회원
회원가입
로그인
비밀번호 재설정
Oauth
소셜 로그인
상품 관리
상품 이미지 등록 - POST /api/v1/product-image
Req
POST /api/v1/product-image
Content-type: multipart/form-data
{
"fileName": "image1.jpg",
"contentType": "image/jpeg"
}
Res
HTTP/1.1 201 Created
{
"imageId": "randumUUID",
"imageKey": "key",
"imageUrl": "https://image.s3/product/randomUUID"
}
상품 조회 - GET /api/v1/products?categoryId={categoryId}&minPrice={minprice}&maxPrice={maxprice}&sort={sortType},{sortBy}&page={page}&size={size}
Req
GET /api/v1/products?categoryId=3&minPrice=5000&maxPrice=20000&sort=price,asc&page=0&size=10
Res
Http/1.1 200 OK
{
"totalPages": 5,
"currentPage": 0,
"totalElements" 42,
"currentSize": 10,
"productSearchResponse": [
{
"id": 1,
"productName": "무선 이어폰",
"price": 129000,
"thumbnailUrl": "https://example.com/images/1.jpg",
"categoryName": "electronics"
}, ...
]
}
상품 등록 (Admin) - POST /api/v1/products
Req
POST /api/v1/products
Content-type: application/json
{
"name": "무선 이어폰",
"description": "고품질 블루투스 아이폰",
"price": 129000,
"stockQuantity": 100,
"categoryId":1,
"imageIds": ["UUID", "UUID2",..],
"imageUrls": ["url", "url2",...],
"imageKeys": ["key", "key2",...],
"isThumbnail": ["true", "false",...],
"imageSortOrder": [-1, 1,...]
}
Res
Http/1.1 201 Created
{
"id": 1,
"createdAt": "2025-04-11T14:00:00"
}
상품 수정 (Admin) - PUT /api/v1/products/{productId}
Req
PUT /api/v1/products/1
Content-type: application/json
{
"name": "무선 이어폰",
"description": "고품질 블루투스 아이폰",
"price": 129000,
"stockQuantity": 100,
"categoryId":1
}
Res
HTTP/1.1 200 OK
{
"id": 1,
"updatedAt": "2025-04-11T17:00:00"
}
상품 삭제 (Admin) - DELETE /api/v1/products/{productId}
Req
DELETE /api/v1/products/{productId}
Res
HTTP/1.1 204 No Content / 404 Not Found
카테고리 관리
카테고리 생성 (Admin)
카테고리 수정 (Admin)
상품 주문
상품 주문하기
장바구니 상품 주문하기
장바구니
장바구니 조회
REQ
GET /api/v1/cart
RES
HTTP/1.1 200 OK
{
"dateTime": "2025-05-09",
"status": {
"code": "0000",
"message": "정상 처리되었습니다."
},
"data": {
"cartProductList": [
{
"productSummary": {
"id": 1,
"productName": "testName",
"price": 50000,
"thumbnailUrl": "http://localhost:9000/images/products/9b1a2ca7-b978-4ced-a11a-b86cc4386772.png",
"soldOut": false
},
"quantity": 5,
"status": "AVAILABLE",
"productTotalPrice": 250000
}
],
"cartTotalPrice": 250000
}
}
상품 추가
Req
POST /api/v1/cart/products
Content-type: application/json
{
"productId": 1,
"addQuantity": 1
}
Res
HTTP/1.1 200 OK
{
"dateTime": "2025-05-09",
"status": {
"code": "0000",
"message": "정상 처리되었습니다."
},
"data": {
"cartProductList": [
{
"productSummary": {
"id": 1,
"productName": "testName",
"price": 50000,
"thumbnailUrl": "http://localhost:9000/images/products/9b1a2ca7-b978-4ced-a11a-b86cc4386772.png",
"soldOut": false
},
"quantity": 7,
"status": "AVAILABLE",
"productTotalPrice": 350000
}
],
"cartTotalPrice": 350000
}
}
상품 수량 수정
Req
PUT /api/v1/cart/products/1
Content-type: application/json
{
"quantity": 1
}
Res
HTTP/1.1 200 OK
{
"dateTime": "2025-05-09",
"status": {
"code": "0000",
"message": "정상 처리되었습니다."
},
"data": {
"cartProductList": [
{
"productSummary": {
"id": 1,
"productName": "testName",
"price": 50000,
"thumbnailUrl": "http://localhost:9000/images/products/9b1a2ca7-b978-4ced-a11a-b86cc4386772.png",
"soldOut": false
},
"quantity": 1,
"status": "AVAILABLE",
"productTotalPrice": 50000
}
],
"cartTotalPrice": 50000
}
}
상품 제거
Req
DELETE /api/v1/cart/products/1
Res
HTTP/1.1 200 OK
{
"dateTime": "2025-05-09",
"status": {
"code": "0000",
"message": "정상 처리되었습니다."
},
"data": {
"cartProductList": [],
"cartTotalPrice": 0
}
}
배송
배송 조회
배송 생성
배송 업데이트
리뷰
리뷰 전체 조회 (Admin)
회원 리뷰 조회 (Admin)
내 리뷰 전체조회
내 리뷰 조회
리뷰 등록
리뷰 수정
리뷰 삭제
고객센터
문의 전체 조회 (Admin)
회원 문의 조회 (Admin)
내 문의 전체 조회
내 문의 조회
프로모션
프로모션 조회
프로모션 등록 (Admin)
프로모션 수정 (Admin)
프로모션 삭제 (Admin)
쿠폰
쿠폰 전체 조회 (Admin)
쿠폰 조회 (Admin)
내 쿠폰 전체조회
내 쿠폰 조회
쿠폰 생성
쿠폰 수정
쿠폰 삭제
관리자
회원 전체 조회
회원 조회
통계 조회
공지 전체 조회
공지 조회
공지 등록
공지 수정
공지 삭제
Last updated