아이템의 상세 정보를 조회합니다.
기본정보
GET /bill-store/v1.0/{{service_id}}/product/{product_id}
Host:
https://api.onstove.com (LIVE)
https://api.gate8.com (SB)
Content-Type: application/json
JavaScript
복사
Request
Header
Name | Type | Required | Default Value | Example | Description |
authorization | String | N | - | {access_token} | 사용자의 인증을 통해 발급 되는 access token
※ Web에서는 “SUAT 쿠키값” 사용 |
X-Lang | String | Y | - | ko | 언어 코드 |
X-Nation | String | Y | - | KR | 국가 코드 |
X-Timezone | String | Y | - | Asia/Seoul | Timezone |
X-Utc-Offset | Int32 | Y | - | 540 | UTC Offset |
caller-id | String | Y | - | clientapp | API 호출자 정보
예) 서비스명_GAME_SERVER |
Path Variable
Name | Type | Required | Default Value | Example | Description |
service_id | String | Y | - | GAME_ID | 스튜디오에서 발급된 게임ID |
product_id | String | Y | - | 1001 | 플랫폼 고유 아이템 ID
- 아이템 상세 조회시 파라미터 전달 |
Paramater (Query String)
Name | Type | Required | Default Value | Example | Description |
shop_key | String | Y | - | indie | 인게임상점의 상점키 |
pguid | String | N | - | - | Authorization에 SUAT 쿠키값으로 인증하는 경우는 사용안함 |
character_no | String | N | - | - | (미사용) |
world_id | String | N | - | AAA | (미사용) |
guid | Int64 | N | - | 123456 | Guid가 있는 경우 GUID 입력
없으면 member_no 입력 |
Response
Body
Name | Type | Required | Default Value | Example | Description |
code | Integer | Y | - | 0 | 응답 코드 |
message | String | Y | - | OK | 응답 메시지 |
value | Object | N | - | 응답 값 |
Value
Name | Type | Required | Default Value | Example | Description |
total_count | Int | Y | - | 10 | 총 카운트 |
list | Object | Y | - | 리스트 |
List
Name | Type | Required | Default Value | Example | Description |
product_id | Int64 | Y | - | 1001 | 플랫폼 고유 아이템 ID |
inservice_item_id | String | Y | - | gameid | 게임 내 아이템ID |
product_name | String | Y | - | 아이템A | 상품 명
• 다국어 지원 |
product_desc | String | Y | - | 아이템A 입니다. | 상품 설명
• 다국어 지원 |
quantity | Int32 | Y | - | 1 | 개별 상품 수량 |
product_type_code | Int16 | N | - | 1 | 아이템 유형 코드
• 1: 인디 패키지 게임 아이템
• 2: 인게임 아이템
• 3: 패키지 아이템 |
category_id | String | N | - | 1 | 카테고리 아이디 |
category_name | String | N | - | 카테고리 | 카테고리 명 |
currency_code | String | Y | - | KRW | 통화 코드 |
price | Decimal | Y | - | 1000 | 상품 정가(결제) |
display_price | Decimal | Y | - | 1000 | 상품 정가(전시)
• 현재 사용 되지 않음 |
str_display_price | String | Y | - | 1000 | STRING_상품 정가(전시)
• 현재 사용 되지 않음 |
sale_price | Decimal | Y | - | 500 | 상품 판매 가격(결제) |
display_sale_price | Decimal | Y | - | 500 | 상품 판매 가격(전시)
• 현재 사용 되지 않음 |
str_display_sale_price | String | Y | - | 500 | STRING_상품 판매 가격(전시)
• 현재 사용 되지 않음 |
discount_flag | bool | N | - | true | 할인 여부 |
discount_type | Int16 | N | - | 10 | 할인 유형
• 1. 정률
• 2: 정액 |
discount_type_value | int32 | N | - | 10 | 할인 값 |
discount_start_dt | Int64 | N | - | 1525219200000 | 할인 시작 일자(timestamp) |
discount_end_dt | Int64 | N | - | 1625219200000 | 할인 종료 일자(timestamp) |
total_quantity | Int32 | Y | - | 1 | 상품 총 판매 수량 |
member_quantity | Int32 | N | - | 1 | 회원 구매 수량
• 로그인 한 계정 별 구매 수량 |
guid_quantity | Int32 | N | - | 1 | guid 구매 수량
• 게임의 Unique 한 계정 별 구매 수량 |
thumbnail_url | String | Y | - | https:// | 대표 상품 이미지 |
withdraw_flag | bool | Y | - | true | 청약 철회 가능 여부 |
purchased_flag | bool | Y | - | true | 구매 여부
• true : 구매 이력이 한 건 이상 일 경우 |
badge_info | List<json objet> | N | - | - | 뱃지 정보 |
purchase_limit_type_code | Int16 | Y | - | 1 | 판매 제한 유형
• 1. 무제한
• 2: 회원별 |
purchase_limit_cnt | Int32 | N | - | 1 | 판매 제한 수량
• purchase_limit_type_code:2 일 경우 회원 별 제한 수량 |
sale_limit_cnt | Int32 | Y | - | 0 | 총 판매 제한 수량 |
character_limit_cnt | Int32 | N | - | 1 | 캐릭터 별 제한 수량 |
world_limit_cnt | Int32 | N | - | 1 | 월드 별 제한 수량 |
sales_start_dt | Int64 | N | - | 1525219200000 | 판매 시작 일자(timestamp)
• 판매 기간이 상시 일 경우 null(SDK: 0) 리턴 |
sales_end_dt | Int64 | N | - | 1525219200000 | 판매 시작 일자(timestamp)
• 판매 기간이 상시 일 경우 null(SDK: 0) 리턴 |
badge_info
Name | Type | Required | Default Value | Example | Description |
badge_name | String | Y | - | 핫 세일 | 뱃지 명 |
badge_image_url | String | Y | - | https:// | 맷지 이미지 URL |
Sample
Request
curl --location --request GET'https://api.onstove.com/bill-store/v1.0/{{service_id}}/product/{{product_id}}?
shop_key=indie' \
--header 'Authorization: Bearer {{access_token}}'
--header 'X-Lang: ko'
--header 'X-Nation: KR'
--header 'X-Timezone: Asia/Seoul'
--header 'X-Utc-Offset: 540'
--header 'caller-id: {{caller-id}}'
JavaScript
복사
Response
Content-Type : application/json
{
"value": {
"product_id": 1001,
"inservice_item_id": "gameidA",
"product_name": "A",
"product_desc": "A .",
"quantity": 1,
"product_type_code": 1,
"category_id": "7CD8D80B1267466",
"category_name": "",
"currency_code": "KRW",
"price": 1000,
"display_price": 1000,
"str_display_price": "1000",
"sale_price": 500,
"display_sale_price": 500,
"str_display_sale_price": 500,
"discount_flag": true,
"discount_type": 1,
"discount_type_value": 50,
"discount_start_dt": 1525219200000,
"discount_end_dt": 1625219200000,
"total_quantity": 1,
"member_quantity": 1,
"guid_quantity": 1,
"thumbnail_url": "https://",
"withdraw_flag": false,
"purchased_flag": true,
"product_desc_info": [
{
"property_type": "product_desc_01",
"property_value": " 1"
},
{
"property_type": "product_desc_02",
"property_value": " 2"
}
],
"sales_start_dt": 1525219200000,
"sales_end_dt": 1625219200000
},
"code": 0,
"message": "OK"
}
JavaScript
복사
응답 실패 예제
{
"code": "999999",
"message": " "
}
JavaScript
복사
Return Code
HTTP Status code | response_code | response_message | Description |
200 | 0 | OK | 성공 |
50001 | 상점이 존재하지 않거나, 점검 중 입니다. | 아이템 샵 API 오류 | |
50002 | 상품이 존재 하지 않거나 판매 불가능 상품 입니다. | 아이템 샵 API 오류 | |
200 | 999999 | 정의되지 않은 오류입니다. | 아이템 샵 API 오류 |
500 | 500 | Internal Server Error | 서버 내부 오류 |