상품 ID로 단일 상품의 상세 정보를 조회해요. 옵션·재고·구독 설정처럼 상품 목록에는 담기지 않는 값까지 함께 내려와요.
API 엔드포인트
GET
https://api.bootapi.com/v1/products/:product_idBasic Auth요청 파라미터
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
product_id |
String | 필수 | 상품 고유 ID (URL 경로) |
user_jwt |
String | 선택 | 회원 토큰 — 로그인 회원 기준 가격·혜택으로 조회해요 |
user_jwt 는 언제 넣나요
회원 등급별 가격이나 회원 전용 상품을 다룰 때 넣어요. 넣지 않으면 비로그인 기준 정보로 내려와요. 목록 API에는 없는 인자예요.
코드 예제
curl -X GET "https://api.bootapi.com/v1/products/67c95e64d01640bb9859c629" \
-H "Authorization: Basic {base64(client_key:secret_key)}"bashimport kr.co.bootpay.store.BootpayStore;
import kr.co.bootpay.store.model.request.TokenPayload;
import kr.co.bootpay.store.model.response.BootpayStoreResponse;
TokenPayload tp = new TokenPayload("your-commerce-client-key", "your-commerce-secret-key");
BootpayStore commerce = new BootpayStore(tp).withToken();
BootpayStoreResponse response = commerce.product.detail("67c95e64d01640bb9859c629");
System.out.println(response);
// 로그인 회원 기준으로 조회할 때
// BootpayStoreResponse response = commerce.product.productDetail("67c95e64d01640bb9859c629", "{user_jwt}");javarequire 'bootpay-backend-ruby'
commerce = BootpayStore::RestClient.new(client_key: 'your-commerce-client-key', secret_key: 'your-commerce-secret-key')
response = commerce.product_detail(product_id: '67c95e64d01640bb9859c629')
puts response
# 로그인 회원 기준으로 조회할 때
# response = commerce.product_detail(product_id: '67c95e64d01640bb9859c629', user_jwt: '{user_jwt}')ruby응답
{
"product_id": "67c95e64d01640bb9859c629",
"name": "프리미엄 원두 1kg",
"display_price": 29900,
"status_sale": true,
"status_display": true,
"stock": 120
}json응답 파라미터
| 파라미터 | 타입 | 설명 |
|---|---|---|
| product_id | String | 상품 고유 ID |
| name | String | 상품명 |
| display_price | Number | 노출 가격 |
| status_sale | Boolean | 판매 상태 |
| status_display | Boolean | 진열 상태 |
| stock | Integer | 재고 수량 |
에러 코드
공통 에러
인증·권한 관련 에러는 에러 코드표를 참고해요.
| 코드 | 메시지 | 대처 방법 |
|---|---|---|
PRODUCT_NOT_FOUND |
상품을 찾을 수 없어요. | product_id가 맞는지 확인해요 |
