특정 상품의 옵션 등록/수정 시에 사용합니다.
옵션 등록/수정 시에는 본 상품이 이미 등록되어 있어야 하며, 본 상품을 찾을 수 없는 경우 에러가 발생됩니다.
각 옵션의 id값은 등록시에 자동으로 생성되며, 옵션 조회 api를 통해 확인할 수 있습니다.
상품 하위에 옵션을 신규 등록하는 경우에는 옵션 리스트 내 id 필드는 빈 값으로 입력하시고, 수정일 경우에는 옵션 id 값을 입력하시면 됩니다. 입력된 옵션 id 값이 존재하지 않는 경우 ‘옵션을 찾을 수 없습니다.’ 에러가 발생됩니다.
상품 등록시 옵션의 type 필드는 필수 값입니다. 옵션이 없는 상품인 경우 type 필드에 “NONE” 값을 입력해 주세요.
옵션 type은 크게 선택형과 구매자 작성형으로 구분됩니다.
-
선택형: 주문시 판매자가 미리 설정해 둔 옵션 리스트 중에서 구매자가 옵션값을 선택하도록 하는 옵션 형태로, 상품 옵션 설정시 다시 독립형(Simple)과 조합형(Combination)으로 구분해서 설정할 수 있습니다.
선택형 중 조합형만 옵션 가격, 옵션별 재고수량 및 옵션 바로구매 설정을 할 수 있습니다. -
구매재 작성형(Custom): 주문시 구매자가 주문하려는 옵션 내용을 직접 작성할 수 있는 옵션 형태 입니다. 판매자가 상품 옵션 설정시 옵션명만 설정합니다.
조합형 옵션인 경우 옵션별 재고수량(Combinations.stockQuantity)을 입력해야 하며, 본상품 재고수량(OptionRequest.stockQuantity)은 빈 값으로 요청되어야 합니다.
조합형 옵션이 아닌 경우에는 본상품 재고수량(OptionRequest.stockQuantity)을 입력해 주세요.
요청
<Content-type: application/x-www-form-urlencoded 요청>
POST /v1/store/product/option/update?productId={}&option={} HTTP/1.1
Content-type: application/x-www-form-urlencoded;charset=utf-8
키 | 타입 | 필수여부 | 설명 |
---|---|---|---|
productId | Long | 필수 | 상품번호 |
option | OptionRequest json object기반 String | 필수 | 옵션 정보 |
< option json 샘플>
- 옵션 없는 상품으로 등록 / 수정
{
"stockQuantity":10,
"option":{
"type":"NONE"
}
}
- 독립형 상품으로 등록 / 수정
{
"stockQuantity":10,
"option":{
"type":"SIMPLE",
"simpleSortType":"CREATE",
"simples":[
{
"id":1,
"name":"string",
"value":"string",
"usable":true
}
]
}
}
- 조합형 상품으로 등록 / 수정
{
"option":{
"type":"COMBINATION",
"combinationSortType":"CREATE",
"combinationAttributes":[
{
"id":1,
"name":"사이즈",
"value":"M"
},
{
"id":2,
"name":"컬러",
"value":"RED"
}
],
"combinations":[
{
"id":1,
"name":[
{
"key":"사이즈",
"value":"M"
},
{
"key":"컬러",
"value":"RED"
}
],
"usable":true,
"price":2000,
"stockQuantity":10,
"managedCode":"string"
}
],
"optionDisplay": {
"useInstantOrder": true,
"instantOrderTemplateType": "TYPE_1"
}
}
}
- 작성형 상품으로 등록 / 수정
{
"stockQuantity":10,
"option":{
"type":"CUSTOM",
"customs":[
{
"id":1,
"name":"길이를 입력해 주세요.",
"usable":true
}
]
}
}
응답
<응답 바디>
필드명 | 타입 | 필수여부 | 설명 |
---|---|---|---|
productId | Long | 필수 | 상품번호 |
option | Option | 필수 | 옵션 정보 목록 |
<응답 바디 샘플>
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
{
"productId":1,
"option":{
"type":"COMBINATION",
"combinations":[
{
"id":1,
"name":[
{
"key":"사이즈",
"value":"M"
},
{
"key":"컬러",
"value":"RED"
}
],
"price":"300",
"stockQuantity":50,
"managedCode":"SY",
"usable":true
}
],
"combinationAttributes":[
{
"id":1,
"name":"사이즈",
"value":"M"
},
{
"id":2,
"name":"컬러",
"value":"RED"
}
],
"optionDisplay": {
"useInstantOrder": true,
"instantOrderTemplateType": "TYPE_1"
}
}
}