본문으로 건너뛰기

Personalization API

API Endpoint

기본 API Endpoint는 아래와 같으며, 현재 최신 버전은 2023-06 입니다.

https://api.kr.omnicommerce.ai/2023-06/


상품 아이디가 포함된 개인화 API

GET /personalization/interest/<product id>?deviceId=<device id>

Request Header

NameRequiredTypeDescription
X-Api-Key필수StringAPI Key (참조: API 인증 가이드)

Request Parameter

NameRequiredTypeDescription
deviceId필수StringOPM SDK 에서 발급된 User의 Device ID
strategy선택String개인화 추천시 적용할 strategy 선택. similar-items, recommended-for-you, often-viewed-together, frequently-bought-together, popular-items 중 택 1.
기본값은 recommended-for-you이며 각 strategy의 상세 정보는 ↗️ Strategy 참조
limit선택String추천 결과로 보여줄 상품의 최대 수량 (기본값: 10, 최대값: 500)
showInfo선택List[String]추천 결과로 보여줄 부가 정보 선택 (복수 선택 가능)
[METADATA, IMAGE_INFO, CONTEXT_INFO]
useWorkspace선택String워크스페이스에 없는 상품도 추천할지 여부 (Y, N) (기본값: Y)
정보

각 strategy의 상세 정보는 ↗️ Strategy 참조

  • similar-items: 이미지를 기반으로 입력 상품과 속성 및 외양이 유사한 다른 제품을 추천. 유사한 상품 중 각 개인의 선호도가 고려된 개인화된 상품 랭킹이 반영되어 최종 추천 제공.
  • often-viewed-together: 특정 상품을 조회한 다른 고객들이 많이 조회한 상품 추천. 상품의 속성 (브랜드, 카테고리 등)으로 추천 결과를 필터링 기능 제공.
  • recommended-for-you: 고객의 상품 조회, 구매, 검색, 및 최근 행동 등 다양한 사용자 정보와 이커머스내 상품들의 상세 정보들을 기준으로 사용자가 구매할 가능성이 높은, 또는 클릭할 가능성이 높은 제품을 추천.
  • frequently-bought-together: 특정 상품과 함께 자주 구매되는 상품을 추천. 추천되는 상품은 각 사용자에 맞게 개인화되며, 상품의 속성 (브랜드, 카테고리 등)으로 추천 결과 필터링 기능 제공.
  • popular-items: 이커머스내 사용자들의 행동 데이터 (구매, 장바구니 추가, 위시리스트 추가, 조회 등)을 학습해 인기있는 상품을 추천. 인기있는 상품 중 각 사용자에게 맞는 상품이 개인화되어 추천됨.

Request Example

/personalization/interest/A1101?deviceId=01H2D10TR48MPNSPSGE6X3AFRZ&strategy=recommended-for-you&limit=10&showInfo=IMAGE_INFO&showInfo=METADATA&showInfo=CONTEXT_INFO

Response

NameTypeDescription
idString추천의 기준이 되는 상품의 아이디
strategyString요청 시 입력한 strategy. 입력한 값이 없으면 recommended-for-you
limitinteger추천 결과로 보여줄 상품의 최대 수량
showInfoList[String]추천 결과로 보여줄 부가 정보
recommendationList[Recommendation]추천 결과 항목 (아래 표 참조)
Recommendation
Name
TypeDescription
orderIntegerscore 순으로 정렬된 순서 (0부터 시작)
idString추천된 상품 아이디
metadataObject추천된 상품의 Meta 정보. showInfo 의 입력값으로 METADATA 가 있는 경우 상품 Metadata 형식의 데이터를 표시.
값이 없는 경우 Null (기본값)
imageInfoObject추천된 상품의 이미지 정보. showInfo 의 입력값으로 IMAGE_INFO가 있는 경우 값을 표시. 값이 없는 경우 Null (기본값)
├ imageInfo.detectionString추천된 상품의 Detection 정보
└ imageInfo.urlString추천된 상품의 대표이미지 URL
contextInfoObject추천된 상품의 Context 정보. showInfo 의 입력값으로 CONTEXT_INFO가 있는 경우 값을 표시. 값이 없는 경우 Null (기본값)
├ contextInfo.salesUrlString추천된 상품의 판매 페이지 URL
└ contextInfo.mobileSalesUrlString추천된 상품의 모바일 버전 판매 페이지 URL

Example Responses

400 Bad Request

{
"errors": "json format error."
}

400 Bad Request 인덱싱에 반영되지 않은 상품 혹은 추천 DB 에 없는 상품 ID 로 요청한경우

{
"errors": "No product id exists."
}

400 Bad Request strategy가 유효하지 않는 경우

{
"errors": "Strategy is not matched."
}

0 개의 상품이 추천 된경우

HTTP Status Code : 200

{
"id": "AT000123FB",
"strategy": "recommended-for-you",
"limit": 10,
"showInfo": ["METADATA", "IMAGE_INFO"],
"recommendation": []
}

한 개 이상의 상품이 추천 된경우

HTTP Status Code : 201

{
"id": "AT000123FB",
"strategy": "recommended-for-you",
"limit": 10,
"showInfo": [],
"recommendation": [
{
"order": 0,
"id": "AT000123FB",
"similarityScore": 0.99,
"metadata": null,
"imageInfo": null,
"contextInfo": null
},
{
"order": 1,
"id": "AT00158AE",
"similarityScore": 0.98,
"metadata": null,
"imageInfo": null,
"contextInfo": null
},
{
"order": 2,
"id": "F800158GA",
"similarityScore": 0.97,
"metadata": null,
"imageInfo": null,
"contextInfo": null
},
{
"order": 3,
"id": "AF10881GK",
"similarityScore": 0.96,
"metadata": null,
"imageInfo": null,
"contextInfo": null
}
]
}

Metadata, ImageInfo, contextInfo 포함

{
"id": "AT000123FB",
"strategy": "recommended-for-you",
"limit": 10,
"showInfo": ["METADATA", "IMAGE_INFO", "CONTEXT_INFO"],
"recommendation": [
{
"order": 0,
"id": "AT000123FB",
"similarityScore": 0.99,
"metadata": {
"productName": "a",
"originPrice": 100
},
"imageInfo": {
"detection": "TOP",
"url": "http://imageserverurl/some.image.jpg"
},
"contextInfo": {
"salesUrl": "http://imageserverurl/some.image.jpg",
"mobileSalesUrl": "http://imageserverurl/some.image.jpg"
}
},
{
"order": 1,
"id": "AT00158AE",
"similarityScore": 0.98,
"metadata": {
"productName": "b",
"originPrice": 200
},
"imageInfo": {
"detection": "TOP",
"url": "http://imageserverurl/some.image.jpg"
},
"contextInfo": {
"salesUrl": "http://imageserverurl/some.image.jpg",
"mobileSalesUrl": "http://imageserverurl/some.image.jpg"
}
},
{
"order": 2,
"id": "F800158GA",
"similarityScore": 0.97,
"metadata": {
"productName": "c",
"originPrice": 300
},
"imageInfo": {
"detection": "TOP",
"url": "http://imageserverurl/some.image.jpg"
},
"contextInfo": {
"salesUrl": "http://imageserverurl/some.image.jpg",
"mobileSalesUrl": null
}
},
{
"order": 3,
"id": "AF10881GK",
"similarityScore": 0.96,
"metadata": {
"productName": "d",
"originPrice": 400
},
"imageInfo": {
"detection": "TOP",
"url": "http://imageserverurl/some.image.jpg"
},
"contextInfo": {
"salesUrl": null,
"mobileSalesUrl": "http://imageserverurl/some.image.jpg"
}
}
]
}

POST /personalization/interest/<product id>: 상품 아이디가 포함된 개인화 추천

Request Header

NameRequiredTypeDescription
X-Api-Key필수StringAPI Key (참조: API 인증 가이드)
Content-Type필수String요청 Type. Application/json 만 지원합니다.

Request Body

NameRequiredTypeDescription
deviceId필수StringOPM SDK 에서 발급된 User의 Device ID
strategy선택String개인화 추천시 적용할 strategy 선택. similar-items, recommended-for-you, often-viewed-together, frequently-bought-together, popular-items 중 택 1.
기본값은 recommended-for-you이며 각 strategy의 상세 정보는 ↗️ Strategy 참조
limit선택String추천 결과로 보여줄 상품의 최대 수량 (기본값: 10, 최대값: 500)
showInfo선택List[String]추천 결과로 보여줄 부가 정보 선택 (복수 선택 가능)
[METADATA, IMAGE_INFO, CONTEXT_INFO]
useWorkspace선택String워크스페이스에 없는 상품도 추천할지 여부 (Y, N) (기본값: Y)
limit선택String추천 결과로 보여줄 상품의 최대 수량 (기본값: 10, 최대값: 500)
metadataFilter선택ObjectMetadata Filter Query (참조: Metadata Filter)
정보

각 strategy의 상세 정보는 ↗️ Strategy 참조

  • similar-items: 이미지를 기반으로 입력 상품과 속성 및 외양이 유사한 다른 제품을 추천. 유사한 상품 중 각 개인의 선호도가 고려된 개인화된 상품 랭킹이 반영되어 최종 추천 제공.
  • often-viewed-together: 특정 상품을 조회한 다른 고객들이 많이 조회한 상품 추천. 상품의 속성 (브랜드, 카테고리 등)으로 추천 결과를 필터링 기능 제공.
  • recommended-for-you: 고객의 상품 조회, 구매, 검색, 및 최근 행동 등 다양한 사용자 정보와 이커머스내 상품들의 상세 정보들을 기준으로 사용자가 구매할 가능성이 높은, 또는 클릭할 가능성이 높은 제품을 추천.
  • frequently-bought-together: 특정 상품과 함께 자주 구매되는 상품을 추천. 추천되는 상품은 각 사용자에 맞게 개인화되며, 상품의 속성 (브랜드, 카테고리 등)으로 추천 결과 필터링 기능 제공.
  • popular-items: 이커머스내 사용자들의 행동 데이터 (구매, 장바구니 추가, 위시리스트 추가, 조회 등)을 학습해 인기있는 상품을 추천. 인기있는 상품 중 각 사용자에게 맞는 상품이 개인화되어 추천됨.

Request Example

{
"limit": 500,
"strategy": "recommended-for-you",
"showInfo": ["METADATA", "IMAGE_INFO", "CONTEXT_INFO"],
"deviceId": "01H2D10TR48MPNSPSGE6X3AFRZ",
"useWorkspace": "Y",
"metadataFilter": {
"brand": {
"eq": "channel"
}
}
}

Response

NameTypeDescription
idString추천의 기준이 되는 상품의 아이디
strategyString요청 시 입력한 strategy. 입력한 값이 없으면 recommended-for-you
limitinteger추천 결과로 보여줄 상품의 최대 수량
showInfoList[String]추천 결과로 보여줄 부가 정보
recommendationList[Recommendation]추천 결과 항목 (아래 표 참조)
Recommendation
Name
TypeDescription
orderInteger유사도 순으로 정렬된 순서 (0부터 시작)
idString추천된 상품 아이디
metadataObject추천된 상품의 Meta 정보. showInfo 의 입력값으로 METADATA 가 있는 경우 상품 Metadata 형식의 데이터를 표시.
값이 없는 경우 Null (기본값)
imageInfoObject추천된 상품의 이미지 정보. showInfo 의 입력값으로 IMAGE_INFO가 있는 경우 값을 표시. 값이 없는 경우 Null (기본값)
├ imageInfo.detectionString추천된 상품의 Detection 정보
└ imageInfo.urlString추천된 상품의 대표이미지 URL
contextInfoObject추천된 상품의 Context 정보. showInfo 의 입력값으로 CONTEXT_INFO가 있는 경우 값을 표시. 값이 없는 경우 Null (기본값)
├ contextInfo.salesUrlString추천된 상품의 판매 페이지 URL
└ contextInfo.mobileSalesUrlString추천된 상품의 모바일 버전 판매 페이지 URL

Example Responses

400 Bad Request

{
"errors": "json format error."
}

400 Bad Request 인덱싱에 반영되지 않은 상품 혹은 추천 DB 에 없는 상품 ID 로 요청한경우

{
"errors": "No product id exists."
}

400 Bad Request strategy가 유효하지 않는 경우

{
"errors": "Strategy is not matched."
}

0 개의 상품이 추천 된경우

HTTP Status Code : 200

{
"id": "AT000123FB",
"strategy": "recommended-for-you",
"limit": 10,
"showInfo": ["METADATA", "IMAGE_INFO"],
"recommendation": []
}

한 개 이상의 상품이 추천 된경우

HTTP Status Code : 201

{
"id": "AT000123FB",
"strategy": "recommended-for-you",
"limit": 10,
"showInfo": [],
"recommendation": [
{
"order": 0,
"id": "AT000123FB",
"similarityScore": 0.99,
"metadata": null,
"imageInfo": null,
"contextInfo": null
},
{
"order": 1,
"id": "AT00158AE",
"similarityScore": 0.98,
"metadata": null,
"imageInfo": null,
"contextInfo": null
},
{
"order": 2,
"id": "F800158GA",
"similarityScore": 0.97,
"metadata": null,
"imageInfo": null,
"contextInfo": null
},
{
"order": 3,
"id": "AF10881GK",
"similarityScore": 0.96,
"metadata": null,
"imageInfo": null,
"contextInfo": null
}
]
}

Metadata, ImageInfo, contextInfo 포함

{
"id": "AT000123FB",
"strategy": "recommended-for-you",
"limit": 10,
"showInfo": ["METADATA", "IMAGE_INFO", "CONTEXT_INFO"],
"recommendation": [
{
"order": 0,
"id": "AT000123FB",
"similarityScore": 0.99,
"metadata": {
"productName": "a",
"originPrice": 100
},
"imageInfo": {
"detection": "TOP",
"url": "http://imageserverurl/some.image.jpg"
},
"contextInfo": {
"salesUrl": "http://imageserverurl/some.image.jpg",
"mobileSalesUrl": "http://imageserverurl/some.image.jpg"
}
},
{
"order": 1,
"id": "AT00158AE",
"similarityScore": 0.98,
"metadata": {
"productName": "b",
"originPrice": 200
},
"imageInfo": {
"detection": "TOP",
"url": "http://imageserverurl/some.image.jpg"
},
"contextInfo": {
"salesUrl": "http://imageserverurl/some.image.jpg",
"mobileSalesUrl": "http://imageserverurl/some.image.jpg"
}
},
{
"order": 2,
"id": "F800158GA",
"similarityScore": 0.97,
"metadata": {
"productName": "c",
"originPrice": 300
},
"imageInfo": {
"detection": "TOP",
"url": "http://imageserverurl/some.image.jpg"
},
"contextInfo": {
"salesUrl": "http://imageserverurl/some.image.jpg",
"mobileSalesUrl": null
}
},
{
"order": 3,
"id": "AF10881GK",
"similarityScore": 0.96,
"metadata": {
"productName": "d",
"originPrice": 400
},
"imageInfo": {
"detection": "TOP",
"url": "http://imageserverurl/some.image.jpg"
},
"contextInfo": {
"salesUrl": null,
"mobileSalesUrl": "http://imageserverurl/some.image.jpg"
}
}
]
}

관심있는 상품 추천 개인화 API

GET /personalization/interest?deviceId=<device id>

Request Header

NameRequiredTypeDescription
x-api-key필수StringAPI Key (참조: API 인증 가이드)

Request Parameter

NameRequiredTypeDescription
deviceId필수StringOPM SDK 에서 발급된 User의 Device ID
strategy선택String개인화 추천시 적용할 strategy 선택. recommended-for-you, popular-items 중 택 1.
상품 아이디가 입력되지 않는 경우, similar-tiems, frequently-bought-together, often-viewed-together는 지원되지 않음.
limit선택String추천 결과로 보여줄 상품의 최대 수량 (기본값: 10, 최대값: 500)
showInfo선택List[String]추천 결과로 보여줄 부가 정보 선택 (복수 선택 가능)
[METADATA, IMAGE_INFO, CONTEXT_INFO]
useWorkspace선택String워크스페이스에 없는 상품도 추천할지 여부 (Y, N) (기본값: Y)
정보

각 strategy의 상세 정보는 ↗️ Strategy 참조

  • recommended-for-you: 고객의 상품 조회, 구매, 검색, 및 최근 행동 등 다양한 사용자 정보와 이커머스내 상품들의 상세 정보들을 기준으로 사용자가 구매할 가능성이 높은, 또는 클릭할 가능성이 높은 제품을 추천.
  • popular-items: 이커머스내 사용자들의 행동 데이터 (구매, 장바구니 추가, 위시리스트 추가, 조회 등)을 학습해 인기있는 상품을 추천. 인기있는 상품 중 각 사용자에게 맞는 상품이 개인화되어 추천됨.

Request Example

/personalization/interest?deviceId=01H2D10TR48MPNSPSGE6X3AFRZ&strategy=recommended-for-you&limit=10&showInfo=IMAGE_INFO&showInfo=METADATA&showInfo=CONTEXT_INFO

Response

NameTypeDescription
idString추천의 기준이 되는 상품의 아이디
strategyString요청 시 입력한 strategy. 입력한 값이 없으면 recommended-for-you
limitinteger추천 결과로 보여줄 상품의 최대 수량
showInfoList[String]추천 결과로 보여줄 부가 정보
recommendationList[Recommendation]추천 결과 항목 (아래 표 참조)
Recommendation
Name
TypeDescription
orderIntegerscore 순으로 정렬된 순서 (0부터 시작)
idString추천된 상품 아이디
metadataObject추천된 상품의 Meta 정보. showInfo 의 입력값으로 METADATA 가 있는 경우 상품 Metadata 형식의 데이터를 표시.
값이 없는 경우 Null (기본값)
imageInfoObject추천된 상품의 이미지 정보. showInfo 의 입력값으로 IMAGE_INFO가 있는 경우 값을 표시. 값이 없는 경우 Null (기본값)
├ imageInfo.detectionString추천된 상품의 Detection 정보
└ imageInfo.urlString추천된 상품의 대표이미지 URL
contextInfoObject추천된 상품의 Context 정보. showInfo 의 입력값으로 CONTEXT_INFO가 있는 경우 값을 표시. 값이 없는 경우 Null (기본값)
├ contextInfo.salesUrlString추천된 상품의 판매 페이지 URL
└ contextInfo.mobileSalesUrlString추천된 상품의 모바일 버전 판매 페이지 URL

Example Responses

400 Bad Request

{
"errors": "json format error."
}

400 Bad Request 인덱싱에 반영되지 않은 상품 혹은 추천 DB 에 없는 상품 ID 로 요청한경우

{
"errors": "No product id exists."
}

400 Bad Request strategy가 유효하지 않는 경우

{
"errors": "Strategy is not matched."
}

0 개의 상품이 추천 된경우

HTTP Status Code : 200

{
"id": "AT000123FB",
"strategy": "recommended-for-you",
"limit": 10,
"showInfo": ["METADATA", "IMAGE_INFO"],
"recommendation": []
}

한 개 이상의 상품이 추천 된경우

HTTP Status Code : 201

{
"id": "AT000123FB",
"strategy": "recommended-for-you",
"limit": 10,
"showInfo": [],
"recommendation": [
{
"order": 0,
"id": "AT000123FB",
"similarityScore": 0.99,
"metadata": null,
"imageInfo": null,
"contextInfo": null
},
{
"order": 1,
"id": "AT00158AE",
"similarityScore": 0.98,
"metadata": null,
"imageInfo": null,
"contextInfo": null
},
{
"order": 2,
"id": "F800158GA",
"similarityScore": 0.97,
"metadata": null,
"imageInfo": null,
"contextInfo": null
},
{
"order": 3,
"id": "AF10881GK",
"similarityScore": 0.96,
"metadata": null,
"imageInfo": null,
"contextInfo": null
}
]
}

Metadata, ImageInfo, contextInfo 포함

{
"id": "AT000123FB",
"strategy": "recommended-for-you",
"limit": 10,
"showInfo": ["METADATA", "IMAGE_INFO", "CONTEXT_INFO"],
"recommendation": [
{
"order": 0,
"id": "AT000123FB",
"similarityScore": 0.99,
"metadata": {
"productName": "a",
"originPrice": 100
},
"imageInfo": {
"detection": "TOP",
"url": "http://imageserverurl/some.image.jpg"
},
"contextInfo": {
"salesUrl": "http://imageserverurl/some.image.jpg",
"mobileSalesUrl": "http://imageserverurl/some.image.jpg"
}
},
{
"order": 1,
"id": "AT00158AE",
"similarityScore": 0.98,
"metadata": {
"productName": "b",
"originPrice": 200
},
"imageInfo": {
"detection": "TOP",
"url": "http://imageserverurl/some.image.jpg"
},
"contextInfo": {
"salesUrl": "http://imageserverurl/some.image.jpg",
"mobileSalesUrl": "http://imageserverurl/some.image.jpg"
}
},
{
"order": 2,
"id": "F800158GA",
"similarityScore": 0.97,
"metadata": {
"productName": "c",
"originPrice": 300
},
"imageInfo": {
"detection": "TOP",
"url": "http://imageserverurl/some.image.jpg"
},
"contextInfo": {
"salesUrl": "http://imageserverurl/some.image.jpg",
"mobileSalesUrl": null
}
},
{
"order": 3,
"id": "AF10881GK",
"similarityScore": 0.96,
"metadata": {
"productName": "d",
"originPrice": 400
},
"imageInfo": {
"detection": "TOP",
"url": "http://imageserverurl/some.image.jpg"
},
"contextInfo": {
"salesUrl": null,
"mobileSalesUrl": "http://imageserverurl/some.image.jpg"
}
}
]
}

POST /personalization/interest: 관심있는 상품 추천

Request Header

NameRequiredTypeDescription
X-Api-Key필수StringAPI Key (참조: API 인증 가이드)
Content-Type필수String요청 Type. Application/json 만 지원합니다.

Request Body

NameRequiredTypeDescription
deviceId필수StringOPM SDK 에서 발급된 User의 Device ID
strategy선택String개인화 추천시 적용할 strategy 선택. recommended-for-you, popular-items 중 택 1.
상품 아이디가 입력되지 않는 경우, similar-tiems, frequently-bought-together, often-viewed-together 는 지원되지 않음.
limit선택String추천 결과로 보여줄 상품의 최대 수량 (기본값: 10, 최대값: 500)
useWorkspace선택String워크스페이스에 없는 상품도 추천할지 여부 (Y, N) (기본값: Y)
limit선택String추천 결과로 보여줄 상품의 최대 수량 (기본값: 10, 최대값: 500)
metadataFilter선택ObjectMetadata Filter Query (참조: Metadata Filter)
정보

각 strategy의 상세 정보는 ↗️ Strategy 참조

  • recommended-for-you: 고객의 상품 조회, 구매, 검색, 및 최근 행동 등 다양한 사용자 정보와 이커머스내 상품들의 상세 정보들을 기준으로 사용자가 구매할 가능성이 높은, 또는 클릭할 가능성이 높은 제품을 추천.
  • popular-items: 이커머스내 사용자들의 행동 데이터 (구매, 장바구니 추가, 위시리스트 추가, 조회 등)을 학습해 인기있는 상품을 추천. 인기있는 상품 중 각 사용자에게 맞는 상품이 개인화되어 추천됨.

Request Example

{
"limit": 500,
"strategy": "recommended-for-you",
"showInfo": ["METADATA", "IMAGE_INFO", "CONTEXT_INFO"],
"deviceId": "01H2D10TR48MPNSPSGE6X3AFRZ",
"useWorkspace": "Y",
"metadataFilter": {
"brand": {
"eq": "channel"
}
}
}

Response

NameTypeDescription
idString추천의 기준이 되는 상품의 아이디
strategyString요청 시 입력한 strategy. 입력한 값이 없으면 recommended-for-you
limitinteger추천 결과로 보여줄 상품의 최대 수량
showInfoList[String]추천 결과로 보여줄 부가 정보
recommendationList[Recommendation]추천 결과 항목 (아래 표 참조)
Recommendation
Name
TypeDescription
orderInteger유사도 순으로 정렬된 순서 (0부터 시작)
idString추천된 상품 아이디
metadataObject추천된 상품의 Meta 정보. showInfo 의 입력값으로 METADATA 가 있는 경우 상품 Metadata 형식의 데이터를 표시.
값이 없는 경우 Null (기본값)
imageInfoObject추천된 상품의 이미지 정보. showInfo 의 입력값으로 IMAGE_INFO가 있는 경우 값을 표시. 값이 없는 경우 Null (기본값)
├ imageInfo.detectionString추천된 상품의 Detection 정보
└ imageInfo.urlString추천된 상품의 대표이미지 URL
contextInfoObject추천된 상품의 Context 정보. showInfo 의 입력값으로 CONTEXT_INFO가 있는 경우 값을 표시. 값이 없는 경우 Null (기본값)
├ contextInfo.salesUrlString추천된 상품의 판매 페이지 URL
└ contextInfo.mobileSalesUrlString추천된 상품의 모바일 버전 판매 페이지 URL

Example Responses

400 Bad Request

{
"errors": "json format error."
}

400 Bad Request 인덱싱에 반영되지 않은 상품 혹은 추천 DB 에 없는 상품 ID 로 요청한경우

{
"errors": "No product id exists."
}

400 Bad Request strategy가 유효하지 않는 경우

{
"errors": "Strategy is not matched."
}

0 개의 상품이 추천 된경우

HTTP Status Code : 200

{
"id": "AT000123FB",
"strategy": "recommended-for-you",
"limit": 10,
"showInfo": ["METADATA", "IMAGE_INFO"],
"recommendation": []
}

한 개 이상의 상품이 추천 된경우

HTTP Status Code : 201

{
"id": "AT000123FB",
"strategy": "recommended-for-you",
"limit": 10,
"showInfo": [],
"recommendation": [
{
"order": 0,
"id": "AT000123FB",
"similarityScore": 0.99,
"metadata": null,
"imageInfo": null,
"contextInfo": null
},
{
"order": 1,
"id": "AT00158AE",
"similarityScore": 0.98,
"metadata": null,
"imageInfo": null,
"contextInfo": null
},
{
"order": 2,
"id": "F800158GA",
"similarityScore": 0.97,
"metadata": null,
"imageInfo": null,
"contextInfo": null
},
{
"order": 3,
"id": "AF10881GK",
"similarityScore": 0.96,
"metadata": null,
"imageInfo": null,
"contextInfo": null
}
]
}

Metadata, ImageInfo, contextInfo 포함

{
"id": "AT000123FB",
"strategy": "recommended-for-you",
"limit": 10,
"showInfo": ["METADATA", "IMAGE_INFO", "CONTEXT_INFO"],
"recommendation": [
{
"order": 0,
"id": "AT000123FB",
"similarityScore": 0.99,
"metadata": {
"productName": "a",
"originPrice": 100
},
"imageInfo": {
"detection": "TOP",
"url": "http://imageserverurl/some.image.jpg"
},
"contextInfo": {
"salesUrl": "http://imageserverurl/some.image.jpg",
"mobileSalesUrl": "http://imageserverurl/some.image.jpg"
}
},
{
"order": 1,
"id": "AT00158AE",
"similarityScore": 0.98,
"metadata": {
"productName": "b",
"originPrice": 200
},
"imageInfo": {
"detection": "TOP",
"url": "http://imageserverurl/some.image.jpg"
},
"contextInfo": {
"salesUrl": "http://imageserverurl/some.image.jpg",
"mobileSalesUrl": "http://imageserverurl/some.image.jpg"
}
},
{
"order": 2,
"id": "F800158GA",
"similarityScore": 0.97,
"metadata": {
"productName": "c",
"originPrice": 300
},
"imageInfo": {
"detection": "TOP",
"url": "http://imageserverurl/some.image.jpg"
},
"contextInfo": {
"salesUrl": "http://imageserverurl/some.image.jpg",
"mobileSalesUrl": null
}
},
{
"order": 3,
"id": "AF10881GK",
"similarityScore": 0.96,
"metadata": {
"productName": "d",
"originPrice": 400
},
"imageInfo": {
"detection": "TOP",
"url": "http://imageserverurl/some.image.jpg"
},
"contextInfo": {
"salesUrl": null,
"mobileSalesUrl": "http://imageserverurl/some.image.jpg"
}
}
]
}