Status API (2023-05)
OMNICOMMERCE의 Management API를 통해 등록 후 상태를 체크하기 위해 사용하는 API 입니다.
API Endpoint
기본 API Endpoint는 아래와 같으며, 현재 최신 버전은 2023-05 입니다.
https://api.kr.omnicommerce.ai/2023-05/
상품 상태 관리 API
GET /management/status-count: 상품 상태 수량 체크
현재 상품 상태 count를 받을 때 사용합니다.
Request Header
| Name | Required | Type | Description |
|---|---|---|---|
| X-Api-Key | 필수 | String | API Key (참조: API 인증 가이드) |
Response
| Name | Type | Description |
|---|---|---|
| done | Integer | 완료된 상품 개수 |
| processing | Integer | 등록 진행 중인 상품 개수 |
| error | Integer | 에러 상품 개수 |
Response Example
200 Accepted
요청 성공
{
"done": 1000,
"processing": 1000,
"error": 0
}
GET /management/status/{product_id}: 단일 상품 상태 체크
단일 상품 상태 체크을 얻을 때 사용합니다.
Requset Header
| Name | Required | Type | Description |
|---|---|---|---|
| X-Api-Key | 필수 | String | API Key (참조: API 인증 가이드) |
Response
| Name | Type | Description |
|---|---|---|
| id | String | 요청 한 상품의 ID |
| status | String | "DONE", "PROCESSING", "ERROR", "DELETE" 4개의 타입 |
| errors | String | Error 원인에 대한 설명. status가 "ERROR" 기준일때만 전달. |
| requestInfo | Object | management API 로 전달한 상품 정보(request Body 정보). status가 “DONE”인 기준일때 만 전달. |
| ├requestInfo.url | String | 상품의 대표 이미지 URL |
| ├requestInfo.detection | String | Detection 정보 에 명시된 값 중 하나 (예: 판매하는 상품이 상의 인 경우: TOP) |
| ├requestInfo.salesUrl | String | 상품이 판매되고 있는 페이지의 URL |
| ├requestInfo.mobileSalesUrl | String | 상품이 판매되고 있는 페이지의 모바일 버전 URL |
| └requestInfo.metadata | Object | 상품명, 브랜드, 가격, 시즌, 할인율 등 고객 사가 관리하는 다양한 상품 정보들 입니다. (참조: 상품 Meta정보) |
Response Example
200 Accepted
status = "DONE"
{
"id": "A1000",
"status": "DONE",
"errors": null,
"requestInfo": {
"url": "https://image-url.jpg",
"salesUrl": "https://sales_url.com",
"mobileSalesUrl": "https://m.sales_url.com",
"detection": "TOP",
"metadata": {
"productName": "product name, 상품명",
"originPrice": 10000,
"currency": "KRW"
}
}
}
status = "PROCESSING"
{
"id": "",
"status": "PROCESSING",
"errors": null,
"requestInfo": {}
}
status = "ERROR"
{
"id": "",
"status": "ERROR",
"errors": "error message",
"requestInfo": {}
}
status = "DELETE"
{
"id": "",
"status": "DELETE",
"errors": null,
"requestInfo": {}
}
POST /management/status: 여러 상품 상태 체크
요청 상품 리스트 요청시 상태체크
Requset Header
| Name | Required | Type | Description |
|---|---|---|---|
| X-Api-Key | 필수 | String | API Key (참조: API 인증 가이드) |
Request Body
| Name | Required | Type | Description |
|---|---|---|---|
| productIds | 필수 | List[String] | 상품 아이디의 List. 최대 100개 까지 가능합니다. |
주의
한 Request 당 최대 100 개 까지 요청 가능 합니다.
Request example
{
"productIds": [
"A1000", "A1001", "A1002", "A1003"
]
}
Response
| Name | Type | Description |
|---|---|---|
| results | List | 요청 상품에 대한 결과를 list로 나타냄 |
| ├ results[].id | String | 요청 한 상품의 ID |
| ├ results[].status | String | "DONE", "PROCESSING", "ERROR", "DELETE" 4개의 타입 |
| ├ results[].errors | String | Error 원인에 대한 설명. status가 "ERROR" 기준일때만 전달. |
| ├ results[].requestInfo | Object | management API 로 전달한 상품 정보(request Body 정보). status가 “DONE”인 기준일때 만 전달. |
| ├ results[].requestInfo.url | String | 상품의 대표 이미지 URL |
| ├ results[].requestInfo.detection | String | Detection 정보 에 명시된 값 중 하나 (예: 판매하는 상품이 상의 인 경우: TOP) |
| ├ results[].requestInfo.salesUrl | String | 상품이 판매되고 있는 페이지의 URL |
| ├ results[].requestInfo.mobileSalesUrl | String | 상품이 판매되고 있는 페이지의 모바일 버전 URL |
| └ results[].requestInfo.metadata | Object | 상품명, 브랜드, 가격, 시즌, 할인율 등 고객 사가 관리하는 다양한 상품 정보들 입니다. (참조: 상품 Meta정보) |
Response Example
200 Accepted
전부 요청 성공
{
"results":[
{
"id": "A1000",
"status": "DONE",
"errors": null,
"requestInfo": {
"url": "https://image-url.jpg",
"salesUrl": "https://sales_url.com",
"mobileSalesUrl": "https://m.sales_url.com",
"detection": "TOP",
"metadata": {
"productName": "product name, 상품명",
"originPrice": 10000,
"currency": "KRW"
}
}
},
{
"id": "A1001",
"status": "PROCESSING",
"errors": null,
"requestInfo": {}
},
{
"id": "A1002",
"status": "ERROR",
"errors": "error message"
"requestInfo": {}
},
{
"id": "A1003",
"status": "DELETE",
"errors": null,
"requestInfo": {}
}
]
}