Get Products
Description
取得商品資料,包含商品類別、單品、套餐、系列組合、口味加值。
Resource
GET /v3/product/products
Authorization
採用 OAuth 2.0 Bearer Token,詳細使用流程請參考 Auth Login。
Query Parameters
| Name | Type | Description |
|---|---|---|
| shop_id | string | 門市編號 |
| client_device | string | 客戶端裝置 ALLOWED VALUES:
|
| menu_time | string | 菜單時段 格式範例: 2025-05-30 15:00:01,若不帶此參數則取當下時間的菜單 (option) |
Request Example
GET /v3/products/shop_id=000030&client_device=KIOSK&menu_time=2025-05-30 15:00:01
Response Body Parameters
| Name | Type | Description |
|---|---|---|
| category | Category[] | 商品類別 |
Response Body Parameters - Category
| Name | Type | Description |
|---|---|---|
| id | string | 全通路類別編號 |
| name | string | 類別名稱 |
| image_url | string | 類別圖片 |
| position | integer | 排序編號 |
| display | boolean | 是否顯示(多菜單才能維護此參數) |
| products | Product[] | 商品列表 |
Response Body Parameters - Product
| Name | Type | Description |
|---|---|---|
| is_combo | boolean | 是否為套餐 |
| is_package | boolean | 是否為系列組合 |
| id | string | 商品編號 |
| name | string | 商品名稱 |
| short_name | string | 商品名稱縮寫 |
| sale_start | string | 銷售時間起 |
| sale_end | string | 銷售時間迄 |
| memo | string | 商品備註 |
| gencods | array | 商品國際條碼 |
| tax | float | 商品稅額 |
| tax_sign | string | 商品稅別 |
| price | float | 商品價格 |
| is_combo_item | boolean | 是否為套餐子項目 |
| is_float | boolean | 是否為浮動價 |
| can_get_points | boolean | 是否可累積點數 |
| can_redeemed | boolean | 是否可用點數兌換 |
| spend_points | integer | 兌換所需點數 |
| pack_price_type | string | 系列組合價格方式 ALLOWED VALUES:
|
| type | string (enum) |
商品類型 ALLOWED VALUES:
|
| promotion_content | string | 促銷內容 |
| description | string | 描述 |
| combo_price | float | 套餐價格 |
| package_price | float | 系列組合價格 |
| package_main_price | float | 系列組合父項金額 |
| package_item_price | float | 系列組合子項金額 |
| special_price | float | 特價價格 |
| single_price | float | 單品金額(單品原價金額+預選加值金額) (optional) |
| default_data_price | float | 預設資料金額(預選品項金額+預選加值金額) (optional) |
| image_url | string | 商品圖片網址 |
| position | integer | 排序編號 |
| is_stop_sale | boolean | 是否停售 |
| display | boolean | 是否顯示(多菜單才能維護此參數) |
| combos | Combo[] | 套餐內容 |
| packs | Pack[] | 系列組合內容 |
| tastes | Taste[] | 加值列表 |
Response Body Parameters - Combo
| Name | Type | Description |
|---|---|---|
| id | int | 套餐商品編號 |
| name | string | 套餐商品名稱 |
| is_multiple_choice | boolean | 套餐是否多選 |
| control_quantity | boolean | 套餐控管數量 (若為多選才會判斷此參數) |
| group_name | string | 套餐群組名稱 |
| group_min_quantity | integer | 套餐群組最低可選數量 (若為多選才會判斷此參數) |
| group_max_quantity | integer | 套餐群組最高可選數量 (若為多選才會判斷此參數) |
| item_max_quantity | integer | 套餐品項最高可選數量 (若為多選才會判斷此參數) |
| display | boolean | 是否顯示(多菜單才能維護此參數) |
| limitations | Limitations | 套餐商品限量資訊 |
| items | Combo Item[] | 套餐項目 |
Response Body Parameters - Limitations
| Name | Type | Description |
|---|---|---|
| quantity | integer | 數量 |
| start_date | string | 起始時間 |
| end_date | string | 結束時間 |
Response Body Parameters - Combo Item
| Name | Type | Description |
|---|---|---|
| id | string | 商品編號 |
| name | string | 商品名稱 |
| image_url | string | 圖片網址 |
| price | float | 商品價格 |
| quantity | integer | 商品數量 |
| is_default | boolean | 是否為預設商品 |
| is_stop_sale | boolean | 是否停售 |
| display | boolean | 是否顯示(多菜單才能維護此參數) |
| tastes | Taste[] | 加值列表 |
Response Body Parameters - Pack
| Name | Type | Description |
|---|---|---|
| id | string | 系列組合商品編號 |
| name | string | 系列組合商品名稱 |
| pack_suit_id | string | 系列組合編號 |
| image_url | string | 圖片網址 |
| pack_price_type | string | 系列組合價格類型 ALLOWED VALUES:
|
| quantity | integer | 數量 |
| price | float | 單價 |
| display | boolean | 是否顯示(多菜單才能維護此參數) |
| items | Pack Item[] | 系列組合項目 |
Response Body Parameters - Pack Item
| Name | Type | Description |
|---|---|---|
| id | string | 系列組合項目編號 |
| name | string | 系列組合項目名稱 |
| image_url | string | 圖片網址 |
| price | float | 價格 |
| plus_price | float | 加價 |
| default_quantity | integer | 預設數量 |
| is_stop_sale | boolean | 是否停售 |
| display | boolean | 是否顯示(多菜單才能維護此參數) |
| tastes | Taste[] | 加值列表 |
Response Body Parameters - Taste
| Name | Type | Description |
|---|---|---|
| id | integer | 加值編號 |
| name | string | 加值名稱 |
| kind | string | 加值類型 ALLOWED VALUES:
|
| max_quantity | integer | 最大數量 |
| is_mutually_exclusive | boolean | 是否互斥 |
| is_required | boolean | 是否必填 |
| default_taste_item_id | integer | 預設加值項目編號 |
| display | boolean | 是否顯示(多菜單才能維護此參數) |
| items | Taste Item[] | 加值項目 |
Response Body Parameters - Taste Item
| Name | Type | Description |
|---|---|---|
| id | integer | 加值項目編號 |
| name | string | 加值項目名稱 |
| price | integer | 加值項目價格 |
| is_stop_sale | boolean | 是否停售 |
| display | boolean | 是否顯示(多菜單才能維護此參數) |
Response
Status-Code: 200
{
"category": [
{
"id": 22837,
"name": "鴨肉麵-竹北線上滷味",
"image_url": null,
"position": 0,
"display": true,
"products": [
{
"is_combo": false,
"is_package": true,
"id": "28148",
"name": "☆.小菜拼盤",
"short_name": "",
"sale_start": null,
"sale_end": null,
"memo": "",
"gencods": null,
"tax": 0.05,
"tax_sign": "TX",
"price": 30,
"is_combo_item": false,
"is_float": false,
"can_get_points": false,
"can_redeemed": false,
"spend_points": 0,
"pack_price_type": "PRODUCT",
"type": "GENERAL_PRODUCT",
"promotion_content": null,
"description": null,
"position": 9999,
"image_url": null,
"display": true,
"is_stop_sale": false,
"tastes": null,
"default_data_price": null,
"single_price": 30,
"combo_price": null,
"package_price": 30.0,
"package_main_price": 15.0,
"package_item_price": 15.0,
"special_price": null,
"member_discount_price": 25,
"combos": null,
"packs": [
{
"id": "28148",
"pack_suit_id": "06",
"name": "小菜拼盤(三選一)",
"image_url": null,
"pack_price_type": "TOTAL",
"quantity": 1.0,
"price": 0.0,
"display": true,
"items": [
{
"id": "28143",
"name": "鴨胗",
"image_url": null,
"price": 0,
"plus_price": 0,
"default_quantity": null,
"sale_start": null,
"sale_end": null,
"is_stop_sale": false,
"display": true,
"tastes": null
},
{
"id": "28144",
"name": "鴨肝",
"image_url": null,
"price": 0,
"plus_price": 0,
"default_quantity": null,
"sale_start": null,
"sale_end": null,
"is_stop_sale": false,
"display": true,
"tastes": null
}
]
}
]
}
]
},
{
"id": 22840,
"name": "加料自由配",
"image_url": null,
"position": 1,
"display": true,
"products": [
{
"is_combo": true,
"is_package": false,
"id": "COMBO05",
"name": "1.",
"short_name": "",
"sale_start": null,
"sale_end": null,
"memo": "",
"gencods": null,
"tax": 0.05,
"tax_sign": "TX",
"price": 0,
"is_combo_item": true,
"is_float": false,
"can_get_points": false,
"can_redeemed": false,
"spend_points": 0,
"pack_price_type": "PRODUCT",
"type": "GENERAL_PRODUCT",
"promotion_content": "",
"description": "",
"position": 9999,
"image_url": null,
"display": true,
"is_stop_sale": false,
"tastes": [
{
"id": 601,
"name": "加料自由配-1",
"kind": "0",
"max_quantity": null,
"is_mutually_exclusive": true,
"is_required": true,
"default_taste_item_id": null,
"display": true,
"items": [
{
"id": 1,
"name": "1.牛肉片",
"price": 0,
"is_stop_sale": false,
"display": true
},
{
"id": 2,
"name": "1.豚肉片",
"price": 0,
"is_stop_sale": false,
"display": true
}
]
}
],
"default_data_price": null,
"single_price": 0,
"combo_price": null,
"package_price": null,
"package_main_price": null,
"package_item_price": null,
"special_price": null,
"member_discount_price": 25,
"combos": [
{
"id": 1.0,
"name": "加料自由配",
"is_multiple_choice": false,
"control_quantity": false,
"group_min_quantity": 0.0,
"group_max_quantity": 0.0,
"item_max_quantity": 0.0,
"display": true,
"items": [
{
"id": "COMBO30",
"name": "2.",
"is_default": false,
"image_url": null,
"quantity": 1.0,
"price": 0.0,
"is_stop_sale": false,
"display": true,
"tastes": [
{
"id": 602,
"name": "加料自由配-2",
"kind": "0",
"max_quantity": null,
"is_mutually_exclusive": true,
"is_required": true,
"default_taste_item_id": null,
"display": true,
"items": [
{
"id": 1,
"name": "2.牛肉片",
"price": 0,
"is_stop_sale": false,
"display": true
},
{
"id": 2,
"name": "2.豚肉片",
"price": 0,
"is_stop_sale": false,
"display": true
}
]
}
]
},
{
"id": "COMBO35",
"name": "3.",
"is_default": false,
"image_url": null,
"quantity": 1.0,
"price": 0.0,
"is_stop_sale": false,
"display": true,
"tastes": [
{
"id": 603,
"name": "加料自由配-3",
"kind": "0",
"max_quantity": null,
"is_mutually_exclusive": true,
"is_required": true,
"default_taste_item_id": null,
"display": true,
"items": [
{
"id": 1,
"name": "3.牛肉片",
"price": 0,
"is_stop_sale": false,
"display": true
},
{
"id": 2,
"name": "3.豚肉片",
"price": 0,
"is_stop_sale": false,
"display": true
}
]
}
]
}
]
}
],
"packs": null
}
]
},
{
"id": 22843,
"name": "招牌六膳",
"image_url": null,
"position": 1,
"display": true,
"products": [
{
"is_combo": false,
"is_package": false,
"id": "A1001",
"name": "1.韓式泡菜鍋",
"short_name": "",
"sale_start": null,
"sale_end": null,
"memo": "",
"gencods": null,
"tax": 0.05,
"tax_sign": "TX",
"price": 180,
"is_combo_item": false,
"is_float": false,
"can_get_points": false,
"can_redeemed": false,
"spend_points": 0,
"pack_price_type": "PRODUCT",
"type": "GENERAL_PRODUCT",
"promotion_content": null,
"description": null,
"position": 9999,
"image_url": null,
"display": true,
"is_stop_sale": false,
"tastes": [
{
"id": 5,
"name": "肉品選擇(基本)",
"kind": "0",
"max_quantity": null,
"is_mutually_exclusive": true,
"is_required": true,
"default_taste_item_id": 1.0,
"display": true,
"items": [
{
"id": 1,
"name": "豬肉",
"price": 0,
"is_stop_sale": false,
"display": true
},
{
"id": 2,
"name": "牛肉",
"price": 10,
"is_stop_sale": false,
"display": true
}
]
},
{
"id": 6,
"name": "肉品加量(基本)",
"kind": "0",
"max_quantity": null,
"is_mutually_exclusive": true,
"is_required": false,
"default_taste_item_id": null,
"display": true,
"items": [
{
"id": 1,
"name": "豬肉加量",
"price": 30,
"is_stop_sale": false,
"display": true
},
{
"id": 2,
"name": "牛肉加量",
"price": 30,
"is_stop_sale": false,
"display": true
}
]
},
{
"id": 14,
"name": "小卷/隻",
"kind": "0",
"max_quantity": null,
"is_mutually_exclusive": true,
"is_required": false,
"default_taste_item_id": null,
"display": true,
"items": [
{
"id": 1,
"name": "小卷/隻",
"price": 40,
"is_stop_sale": false,
"display": true
}
]
},
{
"id": 98,
"name": "不要系列",
"kind": "0",
"max_quantity": null,
"is_mutually_exclusive": false,
"is_required": false,
"default_taste_item_id": null,
"display": true,
"items": [
{
"id": 1,
"name": "不要魚板",
"price": 0,
"is_stop_sale": false,
"display": true
},
{
"id": 2,
"name": "不要燕餃",
"price": 0,
"is_stop_sale": false,
"display": true
}
]
}
],
"default_data_price": null,
"single_price": 180,
"combo_price": null,
"package_price": null,
"package_main_price": null,
"package_item_price": null,
"special_price": null,
"combos": null,
"packs": null
}
]
}
]
}