Skip to content

商品詳情 API ​

使用前先取得 API 金鑰

請先登入 https://www.tenoteno.com/account/api-keys,建立並取得您的 API 金鑰,再透過 Authorization: Bearer <API_KEY> 呼叫接口。

依商品 UUID 取得單一上架商品及啟用 SKU。缺貨商品仍可查詢;草稿、下架或不存在商品回傳 404。

項目值
方法GET
URLhttps://api.tenoteno.com/v1/products/{id}
認證Bearer API Key

請求標頭 ​

名稱型別必填說明
Authorizationstring是Bearer <API_KEY>,使用個人中心建立的金鑰

請求不需要 Body。成功回應為 application/json,HTTP 狀態為 200,並帶有 X-Request-Id。金額皆為 TWD 整數分,125000 表示 NT$1,250;時間使用 ISO 8601。

Path 參數 ​

名稱型別必填說明
idstring (UUID)是商品列表回應的 data[].id,不是 slug 或 SKU

此接口不需要 Query 參數。

請求範例 ​

sh
curl 'https://api.tenoteno.com/v1/products/83df1a06-541e-4e25-8cb3-8cfc779a534a' \
  -H "Authorization: Bearer $TENO_API_KEY"

成功回應結構 ​

名稱型別說明
dataProductDetail單一商品物件,不是陣列

ProductDetail ​

名稱型別說明
idstring (UUID)商品唯一識別碼,用於詳情接口
slugstring商品網址識別名稱
namestring商品名稱
descriptionstring商品描述,可能包含 HTML;可為空字串
materialsstring材質,可為空字串
dimensionsstring尺寸,可為空字串
created_atstring (date-time)建立時間
updated_atstring (date-time)最後更新時間
currencystring固定為 TWD
urlstring (URI)商城商品絕對網址
categoriesCategory[]啟用分類陣列,無分類時為 []
attributesobject,值為 string[]屬性 UUID 到屬性值陣列的對應;無屬性時為 {}
variantsVariant[]啟用且未刪除的 SKU,沒有時為 [];包含缺貨 SKU
imagesProductImage[]依排序值排列的商品圖片,沒有時為 []

Category ​

名稱型別說明
idstring (UUID)分類 ID
namestring分類名稱
slugstring分類識別名稱,可用於列表的 category 篩選
currencystring目前回應附帶 TWD
urlstring (URI)目前回應自動附帶的網址欄位;分類篩選請使用 slug

Variant ​

名稱型別說明
idstring (UUID)SKU 唯一識別碼
skustringSKU 編碼
titlestring規格標題
priceinteger售價,TWD 整數分
compare_at_priceinteger 或 null劃線價,TWD 整數分;未設定為 null
availableinteger可售數量,max(庫存 − 預留數量, 0)
optionsVariantOption[]規格選項,沒有時為 []

VariantOption ​

名稱型別說明
namestring規格名稱,例如「顏色」
valuestring規格值,例如「原木色」

ProductImage ​

名稱型別說明
urlstring (URI)圖片絕對網址
altstring替代文字,可為空字串
kindstring圖片用途:main(主圖)或 detail(詳情圖)

成功回應範例 ​

以下 UUID、網址及商品內容為示意資料,實際呼叫請使用商品列表中的 ID。

json
{
  "data": {
    "id": "83df1a06-541e-4e25-8cb3-8cfc779a534a",
    "slug": "oak-chair",
    "name": "橡木餐椅",
    "description": "實木餐椅,適合日常餐敘。",
    "materials": "橡木",
    "dimensions": "寬 45 × 深 50 × 高 80 cm",
    "created_at": "2026-11-01T02:00:00.000Z",
    "updated_at": "2026-11-06T04:00:00.000Z",
    "currency": "TWD",
    "url": "https://www.tenoteno.com/products/oak-chair",
    "categories": [
      {
        "id": "3c8a1404-d405-4a61-bfbe-828e65b82017",
        "name": "餐椅",
        "slug": "dining-chairs",
        "currency": "TWD",
        "url": "https://www.tenoteno.com/products/dining-chairs"
      }
    ],
    "attributes": {
      "041a854f-15b1-4111-8ce6-a69bbb5ba0d0": [
        "橡木"
      ]
    },
    "variants": [
      {
        "id": "d5b21602-fb55-482a-a466-3c94b3f5bc61",
        "sku": "OAK-CHAIR-NATURAL",
        "title": "原木色",
        "price": 125000,
        "compare_at_price": 150000,
        "available": 8,
        "options": [
          {
            "name": "顏色",
            "value": "原木色"
          }
        ]
      }
    ],
    "images": [
      {
        "url": "https://s3.tenoteno.com/catalog/oak-chair.jpg",
        "alt": "原木色橡木餐椅",
        "kind": "main"
      }
    ]
  }
}

錯誤回應 ​

HTTP 狀態error.code說明
400INVALID_INPUT參數格式或範圍錯誤
401UNAUTHORIZED金鑰缺失、無效或已撤銷
404NOT_FOUND商品不存在、草稿或已下架
500INTERNAL_ERROR服務暫時無法處理請求
json
{
  "error": {
    "code": "UNAUTHORIZED",
    "message": "Invalid API key"
  },
  "requestId": "d37ab519-68b0-46c7-95ea-78d46da23bf6"
}

入口超過限流時回傳 429,可能為非 JSON。更多說明見錯誤與限制。

UUID 格式錯誤回傳 400。未提供有效金鑰時優先回傳 401。