29CM 외부연동 API Doc

Download OpenAPI specification:Download

사용자 가이드

0. HISTORY

  • 2025-05: 카테고리 개편 반영
  • 2022-09: 문서 생성

1. 29CM 연동 시작하기

연동 준비 단계

  1. Step 1: 29CM 로부터 ClientId와 ClientSecret을 발급 받습니다.
  2. Step 2: 발급 받은 ClientId와 ClientSecret을 입력하여 [Auth] 인증 토큰 발급 API를 호출합니다.
  3. Step 3: [Authorization] Header를 통해 인증하는 API와 통신이 정상적으로 수행되는지 확인합니다.

상품 연동하기

  1. Step 1: 29CM 로부터 Partner-Key를 발급 받습니다.
  2. Step 2: [Partner-Key] Header를 통해 인증하는 API와 통신이 정상적으로 수행되는지 확인합니다.


2. 표준/관리/전시 카테고리 설명

  • 표준 카테고리: (신규개편) 29Connect에서 상품 등록, 수정, 관리에 사용하는 카테고리입니다. 최대 6depth까지 설정 가능하며, 옵션, 검색필터 등 주요 속성과 매핑되어 관리됩니다.
  • 관리 카테고리: (현행) 재무, 정산, 물류에서 사용하는 안정적인 카테고리입니다. 최대 3depth까지 설정되며, 변경 최소화를 목표로 유지됩니다.
  • 전시 카테고리: 고객 서비스 화면에 노출되는 카테고리입니다. 별도로 인하우스 매핑 관리 중이며, 최대 3depth까지 설정됩니다.

3. FAQ

Q. 기존 상품의 현 카테고리가 29Connect에서는 노출되지 않는 이유는?

기존 상품에 매핑된 카테고리는 기준 카테고리입니다. 29Connect에 노출되지 않는 경우, 기준 카테고리 매핑 누락이나 에러일 가능성이 있습니다. 29CM로 제보 부탁드립니다.

Q. 기존 상품의 현 카테고리가 29Connect에서는 다른 카테고리로 보이는 이유는?

기준 카테고리에 매핑된 표준 카테고리 기준으로 29Connect에 노출됩니다. 데이터 정합성 확보를 위해 귀사 어드민에서도 표준 카테고리 변경 반영을 권장합니다.

Q. 기존 상품의 카테고리 변경이 가능한가요?

신규 표준 카테고리 선택 리스팅 API를 도입한 이후에는 표준 카테고리 간 변경만 가능합니다. 기준 카테고리 자체의 변경은 불가능합니다.

Item

외부연동 - 상품

상품 등록

header Parameters
Partner-Key
required
string

파트너 식별키

Request Body schema: application/json
required
itemName
required
string

상품명

itemType
string

상품 타입 ex) TANGIBLE

smallCategoryCode
integer <int64>

소카테고리 코드

itemCategoryId
integer <int64>

상품 카테고리 코드

partnerBrandKey
required
string

파트너 브랜드 키

estimatedShippingBeginDate
string <date>

출고예정 시작일

estimatedShippingEndDate
string <date>

출고예정 종료일

reasonForNotShipping
string
Deprecated

미출고 사유

taxType
required
string

과세 타입

consumerPrice
required
number <double> >= 0

소비자가

sellPrice
required
number <double> >= 0

판매가

isDomestic
boolean

국내 상품 여부

isPersonalClearanceCode
boolean

개인 통관 등록 번호 필요 여부

quantity
integer <int32> [ 0 .. 9999 ]

재고

isAvailableVirtualAccount
boolean

무통장 입금 지원 여부

required
Array of objects (ExternalItemCoverImageCreateRequestV2)

커버 이미지 리스트

required
Array of objects (ExternalItemDetailImageCreateRequestV2)

상세 이미지 리스트

required
Array of objects (ExternalProductNoticeRequestV2)

상품 고시 정보 리스트

object (ExternalItemKcInfoRequestV2)

상품 KC 정보 요청

Array of objects (ExternalItemExtraDescriptionCreateRequestV2)

상품 상세 페이지

Array of objects (ExternalItemModelSizeCreateRequestV2)

모델 사이즈 차트

Array of objects (ExternalItemSizeChartCreateRequestV2)

사이즈 차트

useSizeBackFill
boolean
Default: false

사이즈, 백필 설정 여부

username
string
itemDescription
string

상품 기본 정보

partnerItemName
string

자체 상품명

Responses

Request samples

Content type
application/json
{
  • "itemName": "string",
  • "itemType": "string",
  • "smallCategoryCode": 0,
  • "itemCategoryId": 0,
  • "partnerBrandKey": "string",
  • "estimatedShippingBeginDate": "2019-08-24",
  • "estimatedShippingEndDate": "2019-08-24",
  • "reasonForNotShipping": "string",
  • "taxType": "string",
  • "consumerPrice": 0.1,
  • "sellPrice": 0.1,
  • "isDomestic": true,
  • "isPersonalClearanceCode": true,
  • "quantity": 9999,
  • "isAvailableVirtualAccount": true,
  • "coverImageList": [
    ],
  • "detailImageList": [
    ],
  • "productNoticeList": [
    ],
  • "kcInfo": {
    },
  • "itemExtraDescriptionList": [
    ],
  • "itemModelSizeList": [
    ],
  • "itemSizeChartList": [
    ],
  • "useSizeBackFill": false,
  • "username": "string",
  • "itemDescription": "string",
  • "partnerItemName": "string"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "data": {
    },
  • "message": "string",
  • "error_code": "string",
  • "errorCode": "string"
}

상품 검색

header Parameters
Partner-Key
required
string

파트너 식별키

Request Body schema: application/json
required
startDate
string <date>
Deprecated

검색 시작일자

endDate
string <date>
Deprecated

검색 종료일자

itemName
string

상품명

itemIdList
Array of integers <int64> [ items <int64 > ]

상품 코드 목록

itemKeyList
Array of strings

상품 식별키 목록

partnerBrandKeyList
Array of strings

브랜드 식별키 목록

status
string
Deprecated
Enum: "WAITING_FOR_REGISTRATION" "WAITING_FOR_REVIEW" "REJECTED" "PREPARE_FOR_SALE" "ON_STOCK" "SOLD_OUT" "STOP_SELLING" "DISCONTINUED"

상품 판매상태

pageSize
integer <int64>

페이지 사이즈

elementOffset
string

페이지 오프셋

Responses

Request samples

Content type
application/json
{
  • "startDate": "2019-08-24",
  • "endDate": "2019-08-24",
  • "itemName": "string",
  • "itemIdList": [
    ],
  • "itemKeyList": [
    ],
  • "partnerBrandKeyList": [
    ],
  • "status": "WAITING_FOR_REGISTRATION",
  • "pageSize": 0,
  • "elementOffset": "string"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "data": {
    },
  • "message": "string",
  • "error_code": "string",
  • "errorCode": "string"
}

상품 조회

path Parameters
key
required
string

상품 식별자

header Parameters
Partner-Key
required
string

파트너 식별키

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "data": {
    },
  • "message": "string",
  • "error_code": "string",
  • "errorCode": "string"
}

상품 삭제

path Parameters
key
required
string

상품 식별자

header Parameters
Partner-Key
required
string

파트너 식별키

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "data": { },
  • "message": "string",
  • "error_code": "string",
  • "errorCode": "string"
}

상품 수정

path Parameters
key
required
string

상품 식별자

header Parameters
Partner-Key
required
string

파트너 식별키

Request Body schema: application/json
required
itemName
string

상품명

estimatedShippingBeginDate
string <date>

출고 예정 시작일

estimatedShippingEndDate
string <date>

출고 예정 종료일

itemCategoryId
integer <int64>

상품 카테고리 코드

reasonForNotShipping
string
Deprecated

미출고 사유

taxType
string

과세 타입

consumerPrice
number <double> >= 0

소비자가

sellPrice
number <double> >= 0

판매가

isDomestic
boolean

국내 상품 여부

isPersonalClearanceCode
boolean

개인 통관 번호 필요 여부

status
string
Enum: "WAITING_FOR_REGISTRATION" "WAITING_FOR_REVIEW" "REJECTED" "PREPARE_FOR_SALE" "ON_STOCK" "SOLD_OUT" "STOP_SELLING" "DISCONTINUED"

판매상태

isAvailableVirtualAccount
boolean

무통장 입금 가능 여부

Array of objects (ExternalItemCoverImageUpdateRequestV2)

대표 이미지 리스트

Array of objects (ExternalItemDetailImageUpdateRequestV2)

상세 이미지 리스트

Array of objects (ExternalProductNoticeUpdateRequestV2)

상품 고시 정보 리스트

object (ExternalItemKcInfoRequestV2)

상품 KC 정보 요청

Array of objects (ExternalItemModelSizeUpdateRequestV2)

모델 사이즈 차트

Array of objects (ExternalItemSizeChartUpdateRequestV2)

사이즈 차트

username
string
itemDescription
string

상품 상세

useSizeBackFill
boolean

사이즈백필 사용 여부

partnerItemName
string

자체 상품명

Responses

Request samples

Content type
application/json
{
  • "itemName": "string",
  • "estimatedShippingBeginDate": "2019-08-24",
  • "estimatedShippingEndDate": "2019-08-24",
  • "itemCategoryId": 0,
  • "reasonForNotShipping": "string",
  • "taxType": "string",
  • "consumerPrice": 0.1,
  • "sellPrice": 0.1,
  • "isDomestic": true,
  • "isPersonalClearanceCode": true,
  • "status": "WAITING_FOR_REGISTRATION",
  • "isAvailableVirtualAccount": true,
  • "coverImageList": [
    ],
  • "detailImageList": [
    ],
  • "productNoticeList": [
    ],
  • "kcInfo": {
    },
  • "itemModelSizeList": [
    ],
  • "itemSizeChartList": [
    ],
  • "username": "string",
  • "itemDescription": "string",
  • "useSizeBackFill": true,
  • "partnerItemName": "string"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "data": {
    },
  • "message": "string",
  • "error_code": "string",
  • "errorCode": "string"
}

Category

외부연동 - 카테고리

카테고리 상세 조회

path Parameters
code
required
integer <int64>

카테고리 코드

header Parameters
Authorization
required
string

인증 토큰

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "data": {
    },
  • "message": "string",
  • "error_code": "string",
  • "errorCode": "string"
}

표준 카테고리 목록 조회

header Parameters
Authorization
required
string

인증 토큰

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "data": {
    },
  • "message": "string",
  • "error_code": "string",
  • "errorCode": "string"
}

전시카테고리 목록 검색 조회

query Parameters
required
object (ChildCategoriesSearchCondition)

카테고리 검색 요청

header Parameters
Authorization
required
string

인증 토큰

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "data": [
    ],
  • "message": "string",
  • "error_code": "string",
  • "errorCode": "string"
}

관리카테고리 목록 검색 조회

query Parameters
required
object (ChildCategoriesSearchCondition)

카테고리 검색 요청

header Parameters
Authorization
required
string

인증 토큰

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "data": [
    ],
  • "message": "string",
  • "error_code": "string",
  • "errorCode": "string"
}

Image-upload

OpenApi - 이미지 업로드

이미지 업로드 URL 생성

presignedUrl을 생성한 이후에 생성된 PresignedUrl에 이미지를 업로드합니다.

PUT {presignedUrl}

  • Headers:
    - Content-Type: image/jpeg
    - X-Amz-Acl: public-read
  • Parameter: Binary image data

예시 PUT request:
PUT https://29cm-attachments.s3.ap-northeast-2.amazonaws.com/item/202205/11ecd691560877548ea6ffef7a536f99.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz- Date=20220518T100024Z&X-Amz-SignedHeaders=content-length;host;x-amz-acl&X-Amz-Expires=300&X-Amz-Credential=TTS/20220518/ap-northeast-2/s3/aws4_request&X-Amz-Signature=56ce4088d1
Content-Type: image/jpeg

(binary image data)

header Parameters
Authorization
required
string

인증 토큰

Request Body schema: application/json
required
fileSize
required
integer <int32>

이미지 파일 크기

extension
required
string

이미지 확장자

Responses

Request samples

Content type
application/json
{
  • "fileSize": 0,
  • "extension": "string"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "data": {
    },
  • "message": "string",
  • "error_code": "string",
  • "errorCode": "string"
}

Inventory

외부연동 - 재고

재고 일괄 수정

header Parameters
Partner-Key
required
string

파트너 식별키

Request Body schema: application/json
required
required
Array of objects (Inventory)

재고 업데이트 목록

Responses

Request samples

Content type
application/json
{
  • "inventoryList": [
    ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "data": {
    },
  • "message": "string",
  • "error_code": "string",
  • "errorCode": "string"
}

Option

외부연동 - 옵션

옵션 등록

header Parameters
Partner-Key
required
string

파트너 식별키

Request Body schema: application/json
required
itemKey
required
string

상품 식별자

type
required
string

옵션 타입

object (ExternalOptionDtoTextBoxOptionInfoV2)

직접입력형 요청

Array of objects (ExternalOptionDtoDropdownInfoV2)

일반 옵션 목록

Responses

Request samples

Content type
application/json
{
  • "itemKey": "string",
  • "type": "string",
  • "textBoxOptionInfo": {
    },
  • "dropDownInfoList": [
    ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "data": {
    },
  • "message": "string",
  • "error_code": "string",
  • "errorCode": "string"
}

옵션 전체 삭제

query Parameters
itemKey
required
string
header Parameters
Partner-Key
required
string

파트너 식별키

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "data": { },
  • "message": "string",
  • "error_code": "string",
  • "errorCode": "string"
}

옵션 메타 정보 수정

header Parameters
Partner-Key
required
string

파트너 식별키

Request Body schema: application/json
required
itemKey
required
string

상품 식별자

userName
string

유저명

required
Array of objects (ExternalOptionDtoUpdateDropDownOptionMetaV2)

옵션 목록

Responses

Request samples

Content type
application/json
{
  • "itemKey": "string",
  • "userName": "string",
  • "optionList": [
    ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "data": [
    ],
  • "message": "string",
  • "error_code": "string",
  • "errorCode": "string"
}

Item-category

외부연동 - 상품 카테고리

전시카테고리 매핑

path Parameters
key
required
string

상품 식별자

header Parameters
Partner-Key
required
string

파트너 식별키

Request Body schema: application/json
required
Array of objects (CategoryRequest)

전시 카테고리 등록 요청 목록

Responses

Request samples

Content type
application/json
{
  • "categoryList": [
    ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "data": [
    ],
  • "message": "string",
  • "error_code": "string",
  • "errorCode": "string"
}

Brand

외부연동 - 브랜드

브랜드 기본 정보 조회

path Parameters
partnerBrandKey
required
string

브랜드 식별자

header Parameters
Partner-Key
required
string

파트너 식별키

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "data": {
    },
  • "message": "string",
  • "error_code": "string",
  • "errorCode": "string"
}

브랜드 리스트 조회

header Parameters
Partner-Key
required
string

파트너 식별키

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "data": [
    ],
  • "message": "string",
  • "error_code": "string",
  • "errorCode": "string"
}