DRF-JWT 의 기능을 사용하였습니다. 다만 필요한 정보는 아래와 같습니다.
Parameter
Default value
Description
Param type
Data type
Required
email
None
사용자 email
formData
string
true
password
Noen
사용자 비밀번호
formData
string
true
Parameter
Default value
Description
Param type
Data type
Required
limit_count
None
불러올 상품 목록 개수를 제한할 숫자
query
integer
false
category
None
카테고리별 상품 목록
query
string
false
page
None
불러올 상품 목록 페이지 번호
query
integer
false
{
"count": 0,
"next": "string",
"previous": "string",
"page_links": [
[
"string",
1,
true,
true
]
],
"results": [
{
"id": 0,
"categories": [
{
"id": 0,
"name": "string"
}
],
"name": "string",
"price": 0,
"picture": "string",
"description": "string",
"stock": 0,
"register_date": "string",
"is_discount": true,
"discount_price": 0
},
]
}
/product/detail-api/{pk}/
Parameter
Default value
Description
Param type
Data type
Required
pk
None
요청할 상품 id
path
integer
true
Response Class (Status 200)
id: 상품 id
categories: 상품 카테고리
id: 카테고리 id
name: 카테고리 이름
name: 상품 이름
price: 상품 가격
picture: 상품 이미지 경로
description: 상품 설명
stock: 상품 재고
register_date: 상품 등록 시간
is_discount: 상품 할인 여부
discount_price: 상품 할인 후 가격(or null)
{
"id" : 0 ,
"categories" : [
{
"id" : 0 ,
"name" : " string"
}
],
"name" : " string" ,
"price" : 0 ,
"picture" : " string" ,
"description" : " string" ,
"stock" : 0 ,
"register_date" : " string" ,
"is_discount" : true ,
"discount_price" : 0
}
/product/category-list-api/
Response Class (Status 200)
categories: 상품 카테고리
id: 카테고리 id
name: 카테고리 이름
[
{
"id" : 0 ,
"name" : " string"
}
]
[GET] 계정의 장바구니 목록을 반환합니다.
해당 API는 Header의 Authorization 항목에 'Bearer {JWT}'가 필요합니다.
Response Class (Status 200)
id: 사용자 pk
customer: 사용자의 정보
email: 사용자의 email
nickname: 사용자의 nickname
shipping_address: 사용자의 주소
product: 사용자가 장바구니에 추가한 상품
id: 상품 id
categories: 상품 카테고리
id: 카테고리 id
name: 카테고리 이름
name: 상품 이름
price: 상품 가격
picture: 상품 이미지 경로
description: 상품 설명
stock: 상품 재고
register_date: 상품 등록 시간
is_discount: 상품 할인 여부
discount_price: 상품 할인 후 가격(or null)
quantity: 장바구니에 담은 상품의 개수
[
{
"id" : 0 ,
"customer" : {
"email" : " string" ,
"nickname" : " string" ,
"shipping_address" : " string"
},
"product" : {
"id" : 0 ,
"categories" : [
{
"id" : 0 ,
"name" : " string"
}
],
"name" : " string" ,
"price" : 0 ,
"picture" : " string" ,
"description" : " string" ,
"stock" : 0 ,
"register_date" : " string" ,
"is_discount" : true ,
"discount_price" : 0
},
"quantity" : 1
}
]
HTTP Status Code
Reason
401
JWT가 전달되지 않았거나 만료된 경우
해당 API는 Header의 Authorization 항목에 'Bearer {JWT}'가 필요합니다.
Parameter
Default value
Description
Param type
Data type
Required
product_id
None
상품의 id
json
integer
true
quantity
None
상품 주문 수량
json
integer
true
{
"product_id" : 0 ,
"quantity" : 0
}
[PATCH] 장바구니에 담은 상품의 주문수량을 변경합니다.
해당 API는 Header의 Authorization 항목에 'Bearer {JWT}'가 필요합니다.
Parameter
Default value
Description
Param type
Data type
Required
product_id
None
상품의 id
json
integer
true
quantity
None
상품 주문 수량
json
integer
true
다수의 상품을 한번에 업데이트하려는 경우 아래와 같은 형식으로 데이터를 전달하면 됩니다.
[
{
"product_id" : 0 ,
"quantity" : 0
},
{
"product_id" : 0 ,
"quantity" : 0
}
]
Response Class (Status 200)
또는
HTTP Status Code
Reason
401
JWT가 전달되지 않았거나 만료된 경우
[DELETE] 장바구니에 담은 상품을 삭제합니다.
해당 API는 Header의 Authorization 항목에 'Bearer {JWT}'가 필요합니다.
Parameter
Default value
Description
Param type
Data type
Required
product_id
None
삭제할 상품 id
json
integer
true
Response Class (Status 200)
또는
HTTP Status Code
Reason
401
JWT가 전달되지 않았거나 만료된 경우
[GET] 결제 완료된 주문 목록을 반환합니다.
해당 API는 Header의 Authorization 항목에 'Bearer {JWT}'가 필요합니다.
Response Class (Status 200)
id: 사용자 pk
customer: 사용자의 정보
email: 사용자의 email
nickname: 사용자의 nickname
shipping_address: 사용자의 주소
product: 사용자가 장바구니에 추가한 상품
id: 상품 id
categories: 상품 카테고리
id: 카테고리 id
name: 카테고리 이름
name: 상품 이름
price: 상품 가격
picture: 상품 이미지 경로
description: 상품 설명
stock: 상품 재고
register_date: 상품 등록 시간
is_discount: 상품 할인 여부
discount_price: 상품 할인 후 가격(or null)
quantity: 장바구니에 담은 상품의 개수
order_date: 결제 완료한 시간
[
{
"id" : 0 ,
"customer" : {
"email" : " string" ,
"nickname" : " string" ,
"shipping_address" : " string"
},
"product" : {
"id" : 0 ,
"categories" : [
{
"id" : 0 ,
"name" : " string"
}
],
"name" : " string" ,
"price" : 0 ,
"picture" : " string" ,
"description" : " string" ,
"stock" : 0 ,
"register_date" : " string" ,
"is_discount" : true ,
"discount_price" : 0
},
"quantity" : 0 ,
"order_date" : " string"
}
]
HTTP Status Code
Reason
401
JWT가 전달되지 않았거나 만료된 경우
[GET] 상품이 장바구니에 존재하는지 여부를 반환합니다.
해당 API는 Header의 Authorization 항목에 'Bearer {JWT}'가 필요합니다.
Parameter
Default value
Description
Param type
Data type
Required
product_id
None
상품의 id
query
integer
true
Response Class (Status 200)
HTTP Status Code
Reason
401
JWT가 전달되지 않았거나 만료된 경우
/order/payments-complete/
[POST] 결제가 정상적으로 처리되었는지 확인 후 결제 완료 목록에 상품을 추가하고 장바구니에서 삭제합니다. 동시에 상품 재고량도 수정합니다.
해당 API는 Header의 Authorization 항목에 'Bearer {JWT}'가 필요합니다.
Parameter
Default value
Description
Param type
Data type
Required
imp_uid
None
Iamport에서 결제 정보를 확인할 때 필요한 imp_uid
json
string
true
Response Class (Status 200)
또는
HTTP Status Code
Reason
401
JWT가 전달되지 않았거나 만료된 경우