* Response가 옵션과 관련된 API 목록 입니다.
목차
1. 옵션 Variants 목록 조회
GET /ac/api/external/{channelProductId}/{designTemplateId}/variants
채널 상품, 디자인 템플릿에 해당하는 variant 목록 조회
* channelProductId, designTemplateId를 모두 알고 있을때 이용 합니다.
Path Parameter
Name | Type | |
channelProductId | Number | 채널상품ID |
designTemplateId | Number | 디자인 템플릿 ID |
unsupportedLinkageOption | boolean | 연계옵션 미지원 여부
* Default : false
옵션의 연관관계를 이용 할 수 없어 각 옵션의 값을 각각 모두 선택해야 하는 구조일 경우 true 전송
* 연계옵션이 미지원 되는 경우 연계옵션으로 인해 누락되는 variant가 있을 수 있습니다.
ex) 용지 옵션 값 ⇒ 소프트(단일옵션), 프리미엄 소프트(연계옵션) : 프리미엄 소프트는 효과옵션 골드, 실버 등과 연계 옵션
이 경우 unsupportedLinkageOption = true 로 전송 할 경우
소프트로 구성된 variant 가 제외되어 응답 하게 됩니다.
|
•
요청 예시
curl --location 'https://dev-api.pod.shop/ac/api/external/287/98/variants' --header 'Authorization: Basic YXJ0Y2xvdWQ6RDV4ATEhF23Q3lDMWxoaEdsRDllc2Zrc3JJSDNGlLdzl1T1k='
Shell
복사
Response
•
채널 상품의 variant 정보가 담긴 객체를 응답합니다.
Name | Type | |
designTemplateName | String | 디자인 템플릿명 |
designTemplateId | Number | 디자인 템필릿 ID |
channelProductName | String | 채널상품명 |
channelProductId | Number | 채널상품ID |
variantList | Array | |
hierarchyOption | Object |
•
optionVariant
Name | Type | |
channelOptionVariantId | Number | 옵션 베리언트 키 |
discontinued | boolean | 단종 여부 |
optionDetailInfoList | Array |
◦
optionVariantDetail
Name | Type | |
optionName | String | 옵션명 |
optionValueName | String | 옵션값 |
•
hierarchyOption
Name | Type | |
optionId | Number | 옵션 ID |
optionName | String | 옵션명 |
optionTypeCategory | String | 옵션 구분 |
hierarchyOptionValueList | Array | 옵션 상세 객체(hierarchyOptionValue) 배열 |
◦
hierarchyOptionValue
Name | Type | |
optionValueId | Number | 옵션 Value ID |
optionValueName | String | 옵션값 |
hierarchyOptionList | Array | 옵션 객체 (hierarchyOption) 배열
* 현재 옵션의 하위 객체 |
channelOptionVariantId | Number | 옵션 베리언트 키
* 최하위 객체일 경우에만 포함
|
응답 예시
2. 옵션 목록 조회
GET /ac/api/external/{channelProductId}/{designTemplateId}/options
채널 상품, 디자인 템플릿에 해당하는 옵션 목록 조회
* channelProductId, designTemplateId를 모두 알고 있을때 이용 합니다.
Path Parameter
Name | Type | |
channelProductId | Number | 채널상품ID |
designTemplateId | Number | 디자인 템플릿 ID
|
•
요청 예시
curl --location 'https://dev-api.pod.shop/ac/api/external/287/98/options' --header 'Authorization: Basic YXJ0Y2xvdWQ6RDV4ATEhF23Q3lDMWxoaEdsRDllc2Zrc3JJSDNGlLdzl1T1k='
Shell
복사
Response
•
채널 상품의 옵션 정보가 담긴 객체를 응답합니다.
Name | Type | |
designTemplateName | String | 디자인 템플릿명 |
designTemplateId | Number | 디자인 템필릿 ID |
channelProductName | String | 채널상품명 |
channelProductId | Number | 채널상품ID |
optionList | Array | |
hierarchyOptionList | Array |
•
option
◦
optionValue
Name | Type | |
optionValueId | Number | 옵션 Value ID |
optionValueName | String | 옵션값 |
linkageOptionDetailsValueIdList | Array
(Long) | 연계옵션 optionValueId
* 이 값이 존재하면
이 옵션 Value를 사용하기 위해서는
linkageOptionDetailsValueIdList에 포함된 옵션 Value가 선택 되어 있어야 합니다.
* 옵션조합
용지 종류 옵션 ValueList :
[
{optionValueId=1, optionValue=하드}
,{optionValueId=2, optionValue=소프트}
]
용지색상 옵션 ValueList :
[
{optionValueId=11, optionValue=블랙, linkageOptionDetailsValueIdList=[1, 2]}
,{optionValueId=12, optionValue=핑크, linkageOptionDetailsValueIdList=[2]}
]
* 위와 같을경우
가 능 옵션조합 : 하드-블랙, 소프트-블랙, 소프트-핑크
블가능 옵션조합 : 하드-블랙
|
•
hierarchyOption
Name | Type | |
optionId | Number | 옵션 ID |
optionName | String | 옵션명 |
hierarchyOptionValueList | Array |
◦
hierarchyOptionValue
Name | Type | |
optionValueId | Number | 옵션 Value ID |
optionValueName | String | 옵션값 |
hierarchyOptionList | Array |
응답 예시
3. 옵션 Variant 조회
GET /ac/api/external/{channelProductId}/{designTemplateId}/variant
채널 상품, 디자인 템플릿, 선택한 옵션 Value에 해당하는 variant ID 를 정보를 응답합니다.
Path Parameter
Name | Type | |
channelProductId | Number | 채널상품ID |
designTemplateId | Number | 디자인 템플릿 ID
|
Query Parameter
Name | 필수여부 | Type | |
optionValueId | Y | Array
[Long] | optionValueId
*선택한 옵션의 value (optionValueId)
* 상품의 옵션 value를 누락 할 경우
실제 상품데이터와 다를 수있음에 주의
ex) 사이즈 : X [optionValueId:11], XL [optionValueId:12], 2XL[optionValueId:13]
색상 : 블랙[optionValueId:21], 화이트[optionValueId:22]
위와 같은 상품 에서 사이즈X에 블랙 색상일 경우 optionValueId를 11, 21을 전송해야하는데
11을 누락할경우 블랙색상에 XL, 2XL 에 해당하는 varint ID를 응답 받을 수 있음.
|
•
요청 예시
curl --location 'https://dev-api.pod.shop/ac/api/external/287/98/variant?optionValueId=68&optionValueId=72' --header 'Authorization: Basic YXJ0Y2xvdWQ6RDV4ATEhF23Q3lDMWxoaEdsRDllc2Zrc3JJSDNGlLdzl1T1k='
Shell
복사
Response
•
variant 정보가 담긴 객체를 응답합니다.
Name | Type | |
channelOptionVariantId | Number | 옵션 베리언트 키 |
optionDetailInfoList | Array |
•
optionVariantDetail
Name | Type | |
optionName | String | 옵션명 |
optionValueName | String | 옵션값
|
* 조회 결과 단종된 옵션 일 경우 오류를 응답 받을 수 있습니다
Http Status 400
{
"errorKey": "Api Exceptions",
"params": {
"message": "discontinued option."
},
"title": "Business rule violation",
"status": 400
}
JSON
복사
응답 예시