상품

상품 등록

post

상품 등록 API입니다.

주의사항

  • 상품 등록/수정 시에는 초당 10건 이하로 요청해주셔야 합니다

  • 초과 시에는 이용량 초과로 인해 요청이 실패할 수 있습니다

  • 카테고리 제약사항은 주기적으로 수정될 수 있으므로, API를 호출하여 제약사항을 주기적으로 확인 후 기입되도록 구현 부탁드립니다

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body

상품 등록 요청

namestringRequired

상품명

  • 정규식: ^[0-9a-zA-Z가-힣 ()-·[]/&+,~.*_#]{1,100}$
Example: 리클라이너
brandNamestringOptional

브랜드명

  • 정규식: [0-9a-zA-Z가-힣 *()-_+/.,]{1,50}
Example: 토스
categoryIdinteger · int64Required

상품 카테고리 ID

  • 카테고리 중에 isLeaf=true인 최하위 카테고리ID만 가능
Example: 12345
isTaxFreebooleanRequired

과세/면세 여부

  • true: 면세
  • false: 과세
Example: false
isCultureDeductionbooleanOptional

문화비 소득공제 여부

Example: false
managementCodestringOptional

상품 관리 코드

Example: PROD-001
Responses
200

모든 응답은 200으로 내려갑니다 (성공 실패 포함) (장애상황에서만 5xx 노출)

application/json
post
/api/v3/shopping-fep/products/v2
200

모든 응답은 200으로 내려갑니다 (성공 실패 포함) (장애상황에서만 5xx 노출)

상품 정보 변경

put

상품등록시 반환된 상품 ID를 이용하여 상품 정보를 변경합니다.

검수 정책

  • 이미지 변경: 검수 단계로 진입됩니다

  • 가격/재고/배송정보 변경: 즉시 반영됩니다

  • 검수 반려된 상품: 정보 변경 시 자동으로 검수 단계로 진입합니다

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
productIdinteger · int64Required

상품 ID

Example: 111
Body

상품 정보 변경 요청

namestringRequired

상품명

  • 정규식: ^[0-9a-zA-Z가-힣 ()-·[]/&+,~.*_#]{1,100}$
Example: 리클라이너
brandNamestringOptional

브랜드명

  • 정규식: [0-9a-zA-Z가-힣 *()-_+/.,]{1,50}
Example: 토스
isTaxFreebooleanRequired

과세/면세 여부

Example: false
isCultureDeductionbooleanOptional

문화비 소득공제 가능 여부

Example: false
categoryIdinteger · int64Required

상품 카테고리 ID

Example: 1001
managementCodestringOptional

상품 관리 코드

Example: PROD-2024-001
Responses
200

모든 응답은 200으로 내려갑니다 (성공 실패 포함) (장애상황에서만 5xx 노출)

application/json
put
/api/v3/shopping-fep/products/{productId}/v2
200

모든 응답은 200으로 내려갑니다 (성공 실패 포함) (장애상황에서만 5xx 노출)

상품 삭제

post

상품을 삭제합니다.

주의사항

  • 노출중인 상품은 삭제할 수 없습니다

  • 상품 삭제 전 상품 정보 노출 상태 숨기기로 변경 API를 호출하여 숨김 처리 후 삭제해주셔야 합니다

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body

상품 삭제 요청

productIdinteger · int64Required

상품 ID

Example: 111
Responses
200

모든 응답은 200으로 내려갑니다 (성공 실패 포함) (장애상황에서만 5xx 노출)

application/json
post
/api/v3/shopping-fep/products/remove
200

모든 응답은 200으로 내려갑니다 (성공 실패 포함) (장애상황에서만 5xx 노출)

상품 조회

get

상품 ID를 이용하여 상품 정보를 조회합니다.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
productIdinteger · int64Required

상품 ID

Example: 12345
Responses
200

모든 응답은 200으로 내려갑니다 (성공 실패 포함) (장애상황에서만 5xx 노출)

application/json
get
/api/v3/shopping-fep/products/{productId}/v2
200

모든 응답은 200으로 내려갑니다 (성공 실패 포함) (장애상황에서만 5xx 노출)

상품 목록 조회

get

등록한 상품 목록을 커서 조회합니다.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Query parameters
regStartDatestring · dateOptional

상품 등록 일자 시작 범위

Example: 2025-12-10
regEndDatestring · dateOptional

상품 등록 일자 끝 범위

Example: 2025-12-10
nextTokenstringOptional

다음 페이지를 위한 커서 정보 (직전 호출에서 받은 nextToken을 그대로 넘겨 호출)

Example: eyJwcm9kdWN0SWQiOjEzNzI0OSwic29ydFZhbHVlcyI6WzEzNzI0OV19
sizeinteger · int32Optional

페이지 사이즈 (기본값: 20)

Default: 20Example: 20
Responses
200

모든 응답은 200으로 내려갑니다 (성공 실패 포함) (장애상황에서만 5xx 노출)

application/json
get
/api/v3/shopping-fep/products/v2
200

모든 응답은 200으로 내려갑니다 (성공 실패 포함) (장애상황에서만 5xx 노출)

상품 정보 노출 상태 보이기로 변경

post

상품의 노출 상태를 '보이기'로 변경합니다.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body

상품 보이기 요청

productIdinteger · int64Required

상품 ID

Example: 12345
Responses
200

모든 응답은 200으로 내려갑니다 (성공 실패 포함) (장애상황에서만 5xx 노출)

application/json
post
/api/v3/shopping-fep/products/show
200

모든 응답은 200으로 내려갑니다 (성공 실패 포함) (장애상황에서만 5xx 노출)

상품 정보 노출 상태 숨기기로 변경

post

상품의 노출 상태를 '숨기기'로 변경합니다.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body

상품 숨기기 요청

productIdinteger · int64Required

상품 ID

Example: 12345
Responses
200

모든 응답은 200으로 내려갑니다 (성공 실패 포함) (장애상황에서만 5xx 노출)

application/json
post
/api/v3/shopping-fep/products/hide
200

모든 응답은 200으로 내려갑니다 (성공 실패 포함) (장애상황에서만 5xx 노출)

상품 재고 품절 상태로 변경

post

특정 상품 재고를 품절 상태로 변경합니다.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body

상품 재고 품절 상태로 변경 요청

productIdinteger · int64Required

상품 ID

Example: 12345
productStockIdinteger · int64Required

상품 재고 ID

Example: 1001
Responses
200

모든 응답은 200으로 내려갑니다 (성공 실패 포함) (장애상황에서만 5xx 노출)

application/json
post
/api/v3/shopping-fep/products/stocks/sold-out
200

모든 응답은 200으로 내려갑니다 (성공 실패 포함) (장애상황에서만 5xx 노출)

상품 재고 품절 상태 취소

post

특정 상품 재고의 품절 상태를 취소하고 판매 가능한 상태로 변경합니다.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body

상품 재고 품절 상태 취소 요청

productIdinteger · int64Required

상품 ID

Example: 12345
productStockIdinteger · int64Required

상품 재고 ID

Example: 1001
Responses
200

모든 응답은 200으로 내려갑니다 (성공 실패 포함) (장애상황에서만 5xx 노출)

application/json
post
/api/v3/shopping-fep/products/stocks/stock-up
200

모든 응답은 200으로 내려갑니다 (성공 실패 포함) (장애상황에서만 5xx 노출)

상품 옵션 판매가 수정

put

특정 상품 옵션의 판매가를 수정합니다.

가격 구조

  • 정상가: 권장소비자가격(도서는 정가) 또는 자사몰/온라인 판매 채널에서 판매 이력이 있는 가격

  • 판매가: 실제로 소비자에게 상품을 판매하는 가격으로 쿠폰 등의 할인이 포함되지 않은 가격

상품정보 변경 시, API 호출 순서

  1. 상품 정보 조회 API로 상품 아이템 ID를 획득

  2. 해당 상품 아이템 ID를 활용하여 판매가 수정 API 호출

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
productItemIdinteger · int64Required

상품 아이템 ID (상품 옵션 ID)

Example: 67890
Body

상품 옵션 판매가 수정 요청

productIdinteger · int64Required

수정 대상 상품 ID

Example: 12345
salePriceinteger · int32Required

변경할 판매가 가격

Example: 80000
Responses
200

모든 응답은 200으로 내려갑니다 (성공 실패 포함) (장애상황에서만 5xx 노출)

application/json
put
/api/v3/shopping-fep/product-items/{productItemId}/sale-price
200

모든 응답은 200으로 내려갑니다 (성공 실패 포함) (장애상황에서만 5xx 노출)

상품 옵션 정상가 수정

put

특정 상품 옵션의 정상가를 수정합니다.

가격 구조

  • 정상가: 권장소비자가격(도서는 정가) 또는 자사몰/온라인 판매 채널에서 판매 이력이 있는 가격

  • 판매가: 실제로 소비자에게 상품을 판매하는 가격으로 쿠폰 등의 할인이 포함되지 않은 가격

상품정보 변경 시, API 호출 순서

  1. 상품 정보 조회 API로 상품 아이템 ID를 획득

  2. 해당 상품 아이템 ID를 활용하여 정상가 수정 API 호출

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
productItemIdinteger · int64Required

상품 아이템 ID (상품 옵션 ID)

Example: 67890
Body

상품 옵션 정상가 수정 요청

productIdinteger · int64Required

수정 대상 상품 ID

Example: 12345
originPriceinteger · int32Required

변경할 정상가 가격

Example: 100000
Responses
200

모든 응답은 200으로 내려갑니다 (성공 실패 포함) (장애상황에서만 5xx 노출)

application/json
put
/api/v3/shopping-fep/product-items/{productItemId}/origin-price
200

모든 응답은 200으로 내려갑니다 (성공 실패 포함) (장애상황에서만 5xx 노출)

상품 구매 개수 제한 생성

post

특정 상품 또는 옵션에 대한 구매 개수 제한을 생성합니다.

제한 설정

  • startTs, endTs: 구매 제한이 적용되는 기간 설정합니다. (ISO-8601 형식)

  • maxQuantityPerUser: 기간 내 사용자 1인당 구매 가능한 최대 수량입니다.

  • productItemIds: 여러 옵션에 대해 동일한 제한 적용 시 배열로 전달합니다.

주의사항

  • 동일한 옵션들은 같은 purchaseLimitGroupId로 묶여서 관리됩니다.

  • startTsendTs보다 이전이어야 함

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
productIdinteger · int64Required

상품 ID

productItemIdsinteger · int64[]Required

옵션 ID

startTsstring · date-timeRequired

시작일자

endTsstring · date-timeRequired

종료일자

maxQuantityPerUserinteger · int32Required

제한할 구매 갯수

Responses
200

모든 응답은 200으로 내려갑니다 (성공 실패 포함) (장애상황에서만 5xx 노출)

application/json
post
/api/v3/shopping-fep/purchase-limits
200

모든 응답은 200으로 내려갑니다 (성공 실패 포함) (장애상황에서만 5xx 노출)

상품 구매 개수 제한 조회

get

특정 상품에 설정된 구매 개수 제한을 조회합니다.

응답 정보

  • purchaseLimitGroupId: 동일한 구매 개수 제한 그룹에 속한 옵션들은 같은 ID를 가집니다.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
productIdinteger · int64Required
Responses
200

모든 응답은 200으로 내려갑니다 (성공 실패 포함) (장애상황에서만 5xx 노출)

application/json
get
/api/v3/shopping-fep/purchase-limits/product-ids/{productId}
200

모든 응답은 200으로 내려갑니다 (성공 실패 포함) (장애상황에서만 5xx 노출)

상품 구매 개수 제한 제거

delete

설정된 구매 개수 제한을 삭제합니다.

삭제 방법

  • purchaseLimitGroupId: 조회 API에서 확인한 구매 개수 제한 그룹 ID입니다.

  • productItemId: 삭제할 옵션 ID입니다.

  • 여러 옵션의 제한을 한 번에 삭제 가능합니다. (배열로 전달)

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
Responses
200

모든 응답은 200으로 내려갑니다 (성공 실패 포함) (장애상황에서만 5xx 노출)

application/json
delete
/api/v3/shopping-fep/purchase-limits
200

모든 응답은 200으로 내려갑니다 (성공 실패 포함) (장애상황에서만 5xx 노출)

질문은 여기에 남겨주세요. 토스쇼핑 담당자가 확인하고 이메일로 답변드려요.

Last updated