AEM × EDS Spec /bin/public/eds
K
AEM × EDS 初始版本 · zh-Hant Last updated 2026-06-30

AEM Servlet 與 EDS 資料互動

API 介面規範文件。定義 AEM Servlet 與 Edge Delivery Services 之間的資料互動介面,支援 Richtek 官網的產品規格展示、引數化搜尋、產品詳情、頁面導航、產品卡片、側邊選單等功能。

章節
30
Endpoints
36+
環境
3
附錄
A·B

版本歷史

修改內容
初始版本
Parametric Search、Cross Reference 的 columns 動態參數列新增原生 selection_type + data_type 欄位(透傳 Parameter CF,供前端決定篩選控件)。product-table parameter 為純展示表,不含此兩欄位
目錄

1. 概述 #

本文件定義了 AEM Servlet 與 Edge Delivery Services (EDS) 之間的資料互動介面規範。這些 API 主要用於支援 Richtek 官網的產品規格展示、引數化搜尋、產品詳情、頁面導航列表、產品卡片、側邊選單等功能。

1.1 設計原則

根據會議討論結果,本 API 設計遵循以下原則:

  • 後端主導資料處理:考慮到前端裝置效能差異,複雜的邏輯判斷、資料拼接、路徑判斷由後端伺服器完成
  • 前端簡化渲染:前端主要負責接收處理好的 JSON 資料進行渲染,無需關心底層關聯邏輯
  • 資料結構通用化:API 返回的資料結構儘可能通用,便於前端維護

2. 環境配置 #

2.1 伺服器環境

環境AEM Host用途
devhttps://publish-p175018-e1858723.adobeaemcloud.com開發測試
stagehttps://publish-p175018-e1858771.adobeaemcloud.com預釋出驗證
productionhttps://publish-p175018-e1858722.adobeaemcloud.com生產環境

2.2 認證方式

Publish 環境為公開只讀 API,無需認證。

3. 通用規範 #

3.1 請求頭規範

Header說明
Content-Typeapplication/jsonJSON 請求體

3.1.1 語言與 EDS 頁面路徑規範

  • API lang query parameter 可接受 enzh_twzh_cn,也相容 EDS URL 使用的 zh-twzh-cn
  • 返回給 EDS 前端的頁面路徑若為 content path,其語言段使用 hyphen 格式:/content/richtek-eds/zh-tw/.../content/richtek-eds/zh-cn/...。若 API 章節明確要求 EDS 短路徑,則使用 /{lang}/... 格式,例如 /zh-tw/parametric-search/parametric-search-result
  • Content Fragment 與 DAM data 內部儲存路徑不屬於 EDS 頁面 URL,仍使用既有 underscore 語言段:/content/dam/richtek/data/zh_tw/.../content/dam/richtek/data/zh_cn/...

3.2 通用響應格式

成功響應:

json
{
  "status": 200,
  "success": true,
  "message": "<操作描述>",
  "data": { ... }
}

失敗響應:

json
{
  "status": 500,
  "success": false,
  "error": {
    "code": "<錯誤碼>",
    "message": "<錯誤描述>"
  }
}

快取語義:

  • 支援 cache-friendly URL 的端點,成功響應可返回端點章節中標明的 Cache-Control,例如 max-age=300
  • 失敗響應一律返回 Cache-Control: no-store,避免錯誤 JSON 被 Dispatcher / CDN / browser cache。

3.3 資料型別 (Data Type)

API 響應中 columns 的 type 欄位使用以下資料型別:

型別說明資料格式示例
string字串,可能包含 <br/> 換行"value"Product Number, Package
number數值123 / 0.025Vin (min), Iout (max), Pins, MOQ
link可操作項目列表,配合 icon 欄位決定渲染方式,前端根據返回的欄位自行處理{url, icon}[{name?, url?, icon, ...}, ...]Datasheet, Outline Dimension, Footprints, Image, 3D Model, Download
status產品狀態,包含狀態文字、日期及顏色型別{text, date, type}Status 列
stock庫存資訊,支援多行顯示[{qty, note?, icon}, ...],空陣列 [] 表示無庫存Stock 列
distributors經銷商連結列表,支援多行顯示。有效經銷商需同時具備非空 nameurl;無有效經銷商時回落為 Contact Us 郵件連結[{name, url, icon}, ...]Distributors 列

3.4 圖示型別 (Icon Type)

當 type 為 linkstockdistributors 時,資料物件中的 icon 欄位指定前端的渲染方式。後端有什麼欄位就傳什麼,前端自行根據 icon 和可用欄位處理顯示邏輯:

圖示說明適用場景
pdfPDF 文件圖示Datasheet, Outline Dimension, Footprints
image圖片圖示Package Image
download下載圖示3D Model 檔案下載
email郵件圖示3D Model 申請
name直接顯示 name 文字(可為連結或純文字)Distributors 經銷商名稱、Stock 庫存數量

4. 錯誤碼參考 #

本 API 為只讀查詢介面,以下是可能返回的錯誤碼:

錯誤碼HTTP Status說明
err_unauthorized401未授權訪問,Token 無效或過期
err_forbidden403無權訪問該資源
err_not_found404請求的資源不存在
err_bad_request400請求引數錯誤或格式不正確
err_invalid_param400引數值無效或超出範圍
err_internal_error500伺服器內部錯誤

4.1 錯誤響應示例

json · 5 examples
// 資源未找到 (404)
{
  "status": 404,
  "success": false,
  "error": {
    "code": "err_not_found",
    "message": "Product specification 'RT5760X' does not exist."
  }
}

// 請求引數錯誤 (400)
{
  "status": 400,
  "success": false,
  "error": {
    "code": "err_bad_request",
    "message": "Missing required parameter: product_spec_id"
  }
}

// 引數值無效 (400)
{
  "status": 400,
  "success": false,
  "error": {
    "code": "err_invalid_param",
    "message": "Invalid value for 'page': must be a positive integer"
  }
}

// 未授權 (401)
{
  "status": 401,
  "success": false,
  "error": {
    "code": "err_unauthorized",
    "message": "Invalid or expired access token"
  }
}

// 伺服器錯誤 (500)
{
  "status": 500,
  "success": false,
  "error": {
    "code": "err_internal_error",
    "message": "An unexpected error occurred. Please try again later."
  }
}

5. Product Details 查詢 API #

用於獲取產品詳情頁面 (Product Details) 下三個 Tab 的資料:Parameters、Package Size | Pins | Size、Ordering Products。

統一入口:/bin/public/eds/product-table,通過 table_resource_type 參數區分表類型。

已廢棄端點:/bin/public/eds/product-parameters/bin/public/eds/product-packages/bin/public/eds/ordering-products 已合併至統一入口。

通用產品來源參數

所有 product-table API 支援三種方式指定產品範圍(三擇一,不可同時傳入):

引數名型別說明
product_spec_idstring直接指定 Product Spec ID(單個或逗號分隔多個)。上限 50 個
product_group_idstring指定 Product Group ID,後端自動解析為該 Group 下所有 Spec ID,再進行聚合查詢
evb_idstring指定 EVB ID(EVB 頁面入口),後端解析 EVB CF 關聯的 Spec ID 後再分發查詢
Product Group 頁面推薦用法:使用 product_group_id 參數,後端自動呼叫 ProductSpecService.findAllByProductGroupId() 取得所有 Spec ID,免去前端先查 /data/product-groups 再拼接 product_spec_id 的二次請求。
EVB 頁面用法(evb_id):後端解析 EVB CF 的關聯 Spec 後走相同的表格邏輯,因此 parameterpackage-size-pins-sizeordering-products 等表格與 Prod_Spec 頁面行為一致。差異點:
  • evb_id 不存在 → 返回 404err_not_found
  • EVB 存在但無關聯 Spec → 返回 200 與各表的空結構(不報錯)
  • table_resource_type=evb 時只返回當前 EVB 自身(含 EvbStock / Distributor),不會帶出關聯 Spec 下的其他兄弟 EVB
  • table_resource_type=technical-documentation 時行為特化,詳見 Technical Documentation 章節

5.1 獲取產品引數 (Parameters Tab) #

屬性
URL/<aem-host>/bin/public/eds/product-table
HTTP MethodGET
Content-Typeapplication/json

請求引數

引數名必填說明
table_resource_typeREQ固定值 parameter
product_spec_idCND產品型號 ID,支援單個或逗號分隔的多個。與 product_group_id 二擇一。上限 50 個
product_group_idCNDProduct Group ID,後端自動解析為 Spec ID 列表。與 product_spec_id 二擇一
product_category_idOPT產品分類 ID(如 242853)。不傳時後端自動從 Spec 的 productCategories 推導;傳入中間層分類 ID 時自動下鑽至 Spec 所屬葉子分類;多 Spec 不傳時取分類交集
langOPT語言程式碼 (en/zh_tw/zh_cn),預設 en

請求示例

request · 4 examples
# Product Spec 頁面(單一 Spec)
GET /<aem-host>/bin/public/eds/product-table?table_resource_type=parameter&product_spec_id=RT5760A&product_category_id=242853&lang=en

# Product Group 頁面(使用 group_id,無需傳 category_id)
GET /<aem-host>/bin/public/eds/product-table?table_resource_type=parameter&product_group_id=RT8120&lang=en

# Product Group 頁面(逗號分隔 Spec,無需傳 category_id)
GET /<aem-host>/bin/public/eds/product-table?table_resource_type=parameter&product_spec_id=RT5701,RT5701A,RT5701B&lang=en

# EVB 頁面(使用 evb_id,後端解析 EVB 關聯的 Spec,無需傳 category_id)
GET /<aem-host>/bin/public/eds/product-table?table_resource_type=parameter&evb_id=EVB_RT5796AHGJ6&lang=en
多 Spec 說明:無論透過 product_group_id 或逗號分隔的 product_spec_id,各 Spec 的 products 會合併到同一個 products[] 陣列中,同 Spec 的資料相鄰排列。highlight 跨所有 Spec 計算。無資料的動態參數列會自動隱藏。

product_category_id 推導邏輯:不傳時後端自動推導:單 Spec 取其第一個分類,多 Spec 取各 Spec 分類交集的第一個。傳入中間層分類 ID(如 L2)時,自動下鑽到 Spec 所屬的葉子分類(如 L4)。傳入與 Spec 無關的分類 ID 時回傳 400 錯誤。

欄位說明

columns 陣列欄位:

欄位型別必填說明
namestring欄位標識,對應 products 中的 key
field_namestring列標題顯示名稱
typestring資料型別,詳見 3.3
unitstring單位,僅 numeric 型別需要
highlightbooleantrue 表示該列需高亮顯示

products 陣列欄位:

欄位型別必填說明
is_newboolean是否為新品,true 時前端顯示 New 標籤
PRODUCT_NUMBERstring 或 object產品型號。單一 Spec 入口為純字串;Product Group / EVB 入口為文字連結物件 {name, url, icon: "name"},url 指向該型號所屬 Spec 頁,對應 column type 同步為 link
DATASHEETobjectDatasheet 連結,格式 {url, icon}
STATUSstring產品狀態:Active/NRND/LTB/EOL,LTB 包含截止日期,格式 {text, date, type}
其他引數欄位string/number根據 columns 中 type 定義返回對應型別的值

STATUS 物件欄位:

欄位型別必填說明
textstring狀態文字:Active / NRND / LTB / EOL
datestring截止日期,僅 LTB 狀態時有值,格式 YYYY/MM/DD
typestring圖示型別:green (Active) / yellow (LTB, NRND) / red (EOL)

資料處理說明

  1. 列順序:前端按 columns 陣列索引順序渲染,索引 0 為第一列。
  2. 空值處理:欄位值為空字串 "" 時,前端顯示為 -
  3. 高亮列highlight: true 的列使用淺黃色背景突出顯示。
  4. 換行顯示:field_name 和 STATUS 中的 <br/> 需解析為換行。
  5. STATUS 圖示:根據 type 欄位顯示對應顏色圖示,date 欄位在 text 下方顯示。
  6. 大小寫約定:Products 中的大寫 (PRODUCT_NUMBER, STATUS 等) → column 字段,前端表格顯示用。小寫 (is_new) → 隱藏字段,前端表格控制用。
  7. PRODUCT_NUMBER 跳轉(Product Group / EVB 入口):透過 product_group_idevb_id 請求時,PRODUCT_NUMBER column typelink,cell 為 LinkItem {name, url, icon: "name"}。url 為該型號所屬 Spec 頁的 content path;若請求帶 product_category_id,則附加 ?productCategoryId=<id> 以保留瀏覽分類上下文。Spec 頁不存在時 url 為空字串,前端僅顯示文字不可點。透過單一 product_spec_id 入口時,PRODUCT_NUMBER 維持純字串、column typestring
  8. 列順序(Product Group / EVB 入口):透過 product_group_idevb_id 請求時,products 依 PRODUCT_NUMBER 顯示文字正序返回。
  9. 隱藏引數(Parameter CF hidden:當某引數的 Parameter CF 標記 hidden = true 時,本表完全移除該引數——既不返回對應 column,products 各列中也不含該引數的鍵值。(Parametric Search 與 Cross Reference Search 處理不同:保留 column 與資料,僅以 hidden: true 標記,由前端預設隱藏。)

響應資料結構

json · response
{
  "status": 200,
  "success": true,
  "data": [
    {
      "table_name": "parameter",
      "columns": [
        {"name": "PRODUCT_NUMBER", "field_name": "Product Numbers", "type": "string"},
        {"name": "DATASHEET", "field_name": "Datasheet", "type": "link"},
        {"name": "STATUS", "field_name": "Status", "type": "status"},
        {"name": "IQ_TYP", "field_name": "Iq (typ)<br/>(mA)", "type": "number", "unit": "mA", "highlight": true},
        {"name": "VIN_MIN", "field_name": "Vin (min)<br/>(V)", "type": "number", "unit": "V"},
        {"name": "VIN_MAX", "field_name": "Vin (max)<br/>(V)", "type": "number", "unit": "V"},
        {"name": "VOUT_MIN", "field_name": "Vout (min)<br/>(V)", "type": "number", "unit": "V"},
        {"name": "VOUT_MAX", "field_name": "Vout (max)<br/>(V)", "type": "number", "unit": "V"},
        {"name": "OUTPUT_ADJ_METHOD", "field_name": "Output Adj. Method", "type": "string"},
        {"name": "IOUT_MAX", "field_name": "Iout (max)<br/>(A)", "type": "number", "unit": "A"},
        {"name": "CURRENT_LIMIT_TYP", "field_name": "Current Limit (typ)<br/>(A)", "type": "number", "unit": "A"},
        {"name": "FREQ_TYP", "field_name": "Freq (typ)<br/>(kHz)", "type": "number", "unit": "kHz"},
        {"name": "RON_HS_TYP", "field_name": "Ron_HS (typ)<br/>(mOhm)", "type": "number", "unit": "mOhm"},
        {"name": "NUM_OUTPUTS", "field_name": "Number of Outputs", "type": "number"}
      ],
      "products": [
        {
          "is_new": false,
          "PRODUCT_NUMBER": "RT5760A",
          "DATASHEET": {"url": "https://www.richtek.com/assets/datasheets/RT5760A.pdf", "icon": "pdf"},
          "STATUS": {"text": "LTB", "date": "2025/12/27", "type": "yellow"},
          "IQ_TYP": 0.025, "VIN_MIN": 2.5, "VIN_MAX": 6,
          "VOUT_MIN": 0.6, "VOUT_MAX": 6,
          "OUTPUT_ADJ_METHOD": "Resistor",
          "IOUT_MAX": 1, "CURRENT_LIMIT_TYP": 2.65,
          "FREQ_TYP": 2200, "RON_HS_TYP": 120, "NUM_OUTPUTS": 1
        },
        {
          "is_new": false,
          "PRODUCT_NUMBER": "RT5760B",
          "DATASHEET": {"url": "https://www.richtek.com/assets/datasheets/RT5760B.pdf", "icon": "pdf"},
          "STATUS": {"text": "EOL", "date": "", "type": "red"},
          "IQ_TYP": 0.03, "VIN_MIN": 2.5, "VIN_MAX": 6,
          "VOUT_MIN": 0.6, "VOUT_MAX": 6,
          "OUTPUT_ADJ_METHOD": "Resistor",
          "IOUT_MAX": 1, "CURRENT_LIMIT_TYP": 2.65,
          "FREQ_TYP": 2200, "RON_HS_TYP": 120, "NUM_OUTPUTS": 1
        },
        {
          "is_new": false,
          "PRODUCT_NUMBER": "RT5760C",
          "DATASHEET": {"url": "https://www.richtek.com/assets/datasheets/RT5760C.pdf", "icon": "pdf"},
          "STATUS": {"text": "NRND", "date": "", "type": "yellow"},
          "IQ_TYP": 0.02, "VIN_MIN": 2.5, "VIN_MAX": 6,
          "VOUT_MIN": 0.6, "VOUT_MAX": 6,
          "OUTPUT_ADJ_METHOD": "Resistor",
          "IOUT_MAX": 1, "CURRENT_LIMIT_TYP": 2.65,
          "FREQ_TYP": 2200, "RON_HS_TYP": 120, "NUM_OUTPUTS": 1
        },
        {
          "is_new": true,
          "PRODUCT_NUMBER": "RT5760D",
          "DATASHEET": {"url": "https://www.richtek.com/assets/datasheets/RT5760D.pdf", "icon": "pdf"},
          "STATUS": {"text": "Active", "date": "", "type": "green"},
          "IQ_TYP": 0.025, "VIN_MIN": 2.5, "VIN_MAX": 6,
          "VOUT_MIN": 0.6, "VOUT_MAX": 6,
          "OUTPUT_ADJ_METHOD": "Resistor",
          "IOUT_MAX": 1, "CURRENT_LIMIT_TYP": 2.65,
          "FREQ_TYP": 2200, "RON_HS_TYP": 120, "NUM_OUTPUTS": 1
        }
      ]
    }
  ]
}

5.2 獲取封裝資訊 (Package Size | Pins | Size Tab) #

屬性
URL/<aem-host>/bin/public/eds/product-table
HTTP MethodGET
Content-Typeapplication/json

請求引數

引數名型別必填說明
table_resource_typestringREQ固定值 package-size-pins-size
product_spec_idstringCND產品型號 ID,支援單個或逗號分隔的多個。上限 50 個
product_group_idstringCNDProduct Group ID
langstringOPT語言程式碼,預設 en

請求示例

request · 3 examples
# Product Spec 頁面(單一 Spec)
GET /<aem-host>/bin/public/eds/product-table?table_resource_type=package-size-pins-size&product_spec_id=RT5760A&lang=en

# Product Group 頁面(使用 group_id)
GET /<aem-host>/bin/public/eds/product-table?table_resource_type=package-size-pins-size&product_group_id=RT8120&lang=en

# EVB 頁面(使用 evb_id)
GET /<aem-host>/bin/public/eds/product-table?table_resource_type=package-size-pins-size&evb_id=EVB_RT5796AHGJ6&lang=en
多 Spec 說明:無論透過 product_group_id 或逗號分隔的 product_spec_id,跨 Spec 的相同 Package 會自動合併,PRODUCT_NUMBERS 包含所有 Spec 的產品名稱。

欄位說明

products 陣列欄位:

欄位型別必填說明
PRODUCT_NUMBERSstring關聯的產品型號,多個以逗號分隔
PACKAGEstring封裝名稱
PINSnumber引腳數量
OUTLINE_DIMENSIONarray尺寸圖陣列,無資料時為空陣列 []
FOOTPRINTSarrayFootprint 陣列,無資料時為空陣列 []
IMAGEarray封裝圖片陣列,無資料時為空陣列 []
has_model_3dboolean是否有 3D 模型檔案,決定 MODEL_3D 顯示方式
MODEL_3Darray3D 模型陣列,格式 [{url, icon}, ...]

資料處理說明

  1. 列順序:前端按 columns 陣列索引順序渲染。
  2. 空值處理:陣列欄位為空陣列 [] 時,前端顯示為 -
  3. 3D 模型顯示:has_model_3d 為 true 時顯示下載連結;為 false 時顯示郵件申請按鈕。
  4. 大小寫約定:Packages 中的大寫 → column 字段,前端表格顯示用。小寫 (has_model_3d) → 隱藏字段,前端表格控制用。

響應資料結構

json · response
{
  "status": 200,
  "success": true,
  "data": [
    {
      "table_name": "package-size-pins-size",
      "columns": [
        {"name": "PRODUCT_NUMBERS", "field_name": "Product Numbers", "type": "string"},
        {"name": "PACKAGE", "field_name": "Package", "type": "string"},
        {"name": "PINS", "field_name": "Pins", "type": "number"},
        {"name": "OUTLINE_DIMENSION", "field_name": "Outline Dimension", "type": "link"},
        {"name": "FOOTPRINTS", "field_name": "Footprints", "type": "link"},
        {"name": "IMAGE", "field_name": "Image", "type": "link"},
        {"name": "MODEL_3D", "field_name": "3D Model", "type": "link"}
      ],
      "products": [
        {
          "PRODUCT_NUMBERS": "RT5760A, RT5760B",
          "PACKAGE": "TWL-CSP0.69×1.04-6",
          "PINS": 6,
          "OUTLINE_DIMENSION": [{"url": "https://www.richtek.com/assets/packages/twl-csp-6.pdf", "icon": "pdf"}],
          "FOOTPRINTS": [{"url": "https://www.richtek.com/assets/footprints/twl-csp-6.pdf", "icon": "pdf"}],
          "IMAGE": [
            {"url": "https://www.richtek.com/assets/packages/twl-csp-6-top.png", "icon": "image"},
            {"url": "https://www.richtek.com/assets/packages/twl-csp-6-side.png", "icon": "image"}
          ],
          "has_model_3d": true,
          "MODEL_3D": [{"url": "https://www.richtek.com/assets/3d-models/twl-csp-6.step", "icon": "download"}]
        },
        {
          "PRODUCT_NUMBERS": "RT5760C, RT5760D-6",
          "PACKAGE": "WDFN2x2-6",
          "PINS": 6,
          "OUTLINE_DIMENSION": [{"url": "https://www.richtek.com/assets/packages/wdfn2x2-6.pdf", "icon": "pdf"}],
          "FOOTPRINTS": [],
          "IMAGE": [{"url": "https://www.richtek.com/assets/packages/wdfn2x2-6.png", "icon": "image"}],
          "has_model_3d": false,
          "MODEL_3D": [{"url": "mailto:support@richtek.com?subject=3D Model Request - WDFN2x2-6", "icon": "email"}]
        }
      ]
    }
  ]
}

6. Ordering Information 查詢 API #

用於獲取產品訂購資訊頁面 (Ordering Information Tab) 的資料,包含產品型號、封裝、庫存及經銷商資訊。

6.1 獲取訂購產品資訊 (Products Tab) #

屬性
URL/<aem-host>/bin/public/eds/product-table
HTTP MethodGET
Content-Typeapplication/json

請求引數

引數名型別必填說明
table_resource_typestringREQ固定值 ordering-products(別名 products 亦可使用)
product_spec_idstringCND產品型號 ID,支援單個或逗號分隔的多個。上限 50 個
product_group_idstringCNDProduct Group ID
langstringOPT語言程式碼,預設 en

請求示例

request · 3 examples
# Product Spec 頁面(單一 Spec)
GET /<aem-host>/bin/public/eds/product-table?table_resource_type=ordering-products&product_spec_id=RT5760A&lang=en

# Product Group 頁面(使用 group_id)
GET /<aem-host>/bin/public/eds/product-table?table_resource_type=ordering-products&product_group_id=RT8120&lang=en

# EVB 頁面(使用 evb_id,返回關聯 Spec 的訂購產品)
GET /<aem-host>/bin/public/eds/product-table?table_resource_type=ordering-products&evb_id=EVB_RT5796AHGJ6&lang=en

欄位說明

products 陣列欄位:

欄位型別必填說明
PRODUCT_NUMBERstring產品型號
PACKAGE_TYPEstring封裝型別
MOQnumber最小起訂量
STOCKarray庫存資訊陣列,每個元素為 {qty, note?, icon} 物件,無資料時為空陣列 []
has_distributorboolean是否存在至少一個有效經銷商連結
DISTRIBUTORSarray經銷商陣列。無有效連結時返回 Contact Us 郵件連結

STOCK 物件欄位:

欄位型別必填說明
qtystring庫存數量
notestring備註資訊,如 Lead-Time
iconstring圖示型別,詳見 3.4

資料處理說明

  1. 列順序:前端按 columns 陣列索引順序渲染。
  2. 空值處理:STOCK 為空陣列 [] 時,前端顯示為 -
  3. Stock 多行顯示:STOCK 為物件陣列,前端將每個元素渲染為同一單元格內的子行(上下分隔)。qty 為主要顯示內容,note 以輔助文字顯示。
  4. 經銷商顯示:DISTRIBUTORS 為 distributors 型別。後端僅將 nameurl 都非空的 stock distributor 視為有效;若無有效經銷商,後端回落為 {"name":"Contact Us","url":"mailto:sales@richtek.com","icon":"name"},且 has_distributor=false
  5. 大小寫約定:Products 中的大寫 → column 字段,前端表格顯示用。

響應資料結構

json · response
{
  "status": 200,
  "success": true,
  "data": [
    {
      "table_name": "ordering-products",
      "columns": [
        {"name": "PRODUCT_NUMBER", "field_name": "Product Number", "type": "string"},
        {"name": "PACKAGE_TYPE", "field_name": "Package Type", "type": "string"},
        {"name": "MOQ", "field_name": "MOQ", "type": "number"},
        {"name": "STOCK", "field_name": "Stock", "type": "stock"},
        {"name": "DISTRIBUTORS", "field_name": "Distributors", "type": "distributors"}
      ],
      "products": [
        {
          "PRODUCT_NUMBER": "RT5760AHGH6F",
          "PACKAGE_TYPE": "TWL-CSP0.69×1.04-6",
          "MOQ": 3000,
          "STOCK": [
            {"qty": "2,995", "icon": "name"},
            {"qty": "0", "note": "Lead-Time: 14 weeks", "icon": "name"}
          ],
          "has_distributor": true,
          "DISTRIBUTORS": [
            {"name": "Digikey", "url": "https://www.digikey.com/product/RT5760AHGH6F", "icon": "name"},
            {"name": "Mouser", "url": "https://www.mouser.com/product/RT5760AHGH6F", "icon": "name"}
          ]
        },
        {
          "PRODUCT_NUMBER": "RT5760BHGH6F",
          "PACKAGE_TYPE": "TWL-CSP0.69×1.04-6",
          "MOQ": 3000,
          "STOCK": [],
          "has_distributor": false,
          "DISTRIBUTORS": [
            {"name": "Contact Us", "url": "mailto:sales@richtek.com", "icon": "name"}
          ]
        }
      ]
    }
  ]
}

6.2 獲取 EVB 訂購資訊 (EVB Tab) #

屬性
URL/<aem-host>/bin/public/eds/product-table
HTTP MethodGET
Content-Typeapplication/json

請求引數

引數名型別必填說明
table_resource_typestringREQ固定值 evb
product_spec_idstringCND產品型號 ID。上限 50 個
product_group_idstringCNDProduct Group ID
langstringOPT語言程式碼,預設 en

請求示例

request · 3 examples
# Product Spec 頁面(單一 Spec)
GET /<aem-host>/bin/public/eds/product-table?table_resource_type=evb&product_spec_id=RT5760A&lang=en

# Product Group 頁面(使用 group_id)
GET /<aem-host>/bin/public/eds/product-table?table_resource_type=evb&product_group_id=RT8120&lang=en

# EVB 頁面(使用 evb_id,只返回該 EVB 自身一行)
GET /<aem-host>/bin/public/eds/product-table?table_resource_type=evb&evb_id=EVB_RT5796AHGJ6&lang=en

欄位說明

products 陣列欄位:

欄位型別必填說明
EVB_NAMEstringEVB 產品名稱
STOCKarray庫存資訊陣列,無資料時為空陣列 []
DISTRIBUTORSarray經銷商陣列。無有效連結時返回 Contact Us 郵件連結

資料處理說明

  1. EVB 圖片:頁面上的 EVB 板卡圖片(大圖 + 縮略圖畫廊)不由本 API 提供,由前端自行從其他來源取得。本 API 僅返回表格資料。
  2. 列順序:前端按 columns 陣列索引順序渲染。
  3. 空值處理:STOCK 為空陣列 [] 時,前端顯示為 -
  4. Stock 多行顯示:與 6.1 一致。
  5. 經銷商顯示:與 6.1 一致。
  6. 無 EVB 資料:當產品無關聯 EVB 時,products 為空陣列 [],前端可隱藏此 Tab。

響應資料結構

json · response
{
  "status": 200,
  "success": true,
  "data": [
    {
      "table_name": "evb",
      "columns": [
        {"name": "EVB_NAME", "field_name": "Products", "type": "string"},
        {"name": "STOCK", "field_name": "Stock", "type": "stock"},
        {"name": "DISTRIBUTORS", "field_name": "Distributors", "type": "distributors"}
      ],
      "products": [
        {
          "EVB_NAME": "EVB_RT5760AHGH6F",
          "STOCK": [
            {"qty": "50", "icon": "name"},
            {"qty": "0", "note": "Lead-Time: 14 weeks", "icon": "name"}
          ],
          "DISTRIBUTORS": [
            {"name": "Digikey", "url": "https://www.digikey.com/product/EVB_RT5760AHGH6F", "icon": "name"},
            {"name": "Mouser", "url": "https://www.mouser.com/product/EVB_RT5760AHGH6F", "icon": "name"}
          ]
        },
        {
          "EVB_NAME": "EVB_RT5760BHGH6F",
          "STOCK": [
            {"qty": "50", "icon": "name"},
            {"qty": "0", "note": "Lead-Time: 14 weeks", "icon": "name"}
          ],
          "DISTRIBUTORS": [
            {"name": "Digikey", "url": "https://www.digikey.com/product/EVB_RT5760BHGH6F", "icon": "name"},
            {"name": "Mouser", "url": "https://www.mouser.com/product/EVB_RT5760BHGH6F", "icon": "name"}
          ]
        }
      ]
    }
  ]
}

7. Navigation List 查詢 API #

用於獲取頁面 Navigation List 的資料,支援遞迴返回子頁面樹狀結構。

7.1 獲取頁面導航列表

屬性
URL/<aem-host>/bin/public/eds/blocks/navigation-list
HTTP MethodGET
Content-Typeapplication/json

請求引數

引數名型別必填說明
langstringOPT語言程式碼 (en/zh_cn/zh_tw),預設 en
sectionstringREQ請求 Navigation List 的頁面區段,例如 about-richtek

請求示例

request
GET /<aem-host>/bin/public/eds/blocks/navigation-list?section=about-richtek

欄位說明

pages 陣列欄位:

欄位型別必填說明
titlestring頁面標題
pathstring頁面路徑
typestring對象類型,list 表示有子節點,entry 表示葉節點
childrenarray子頁面列表,遞迴結構

響應資料結構

json · response
{
  "timestamp": "2026-02-12 10:45:15",
  "success": true,
  "status": 200,
  "message": "OK",
  "data": {
    "pages": [
      {
        "title": "Company",
        "path": "/content/richtek-eds/en/about-richtek/company",
        "type": "list",
        "children": [
          {
            "title": "About Richtek",
            "path": "/content/richtek-eds/en/about-richtek/company/about-richtek",
            "type": "list",
            "children": [
              { "title": "test", "path": "/content/richtek-eds/en/about-richtek/company/about-richtek/test", "type": "entry" }
            ]
          },
          {
            "title": "Leadership",
            "path": "/content/richtek-eds/en/about-richtek/company/leadership",
            "type": "list",
            "children": [
              { "title": "Child Page01", "path": "/content/richtek-eds/en/about-richtek/company/leadership/child-page01", "type": "entry" },
              { "title": "Child Page02", "path": "/content/richtek-eds/en/about-richtek/company/leadership/child-page02", "type": "entry" }
            ]
          },
          { "title": "Ethical Corporate Management", "path": "/content/richtek-eds/en/about-richtek/company/ethical-corporate-management", "type": "entry" },
          { "title": "Supplier Code of Conduct", "path": "/content/richtek-eds/en/about-richtek/company/supplier-code-of-conduct", "type": "entry" }
        ]
      },
      {
        "title": "Corporate Citizenship",
        "path": "/content/richtek-eds/en/about-richtek/corporate-citizenship",
        "type": "list",
        "children": [
          { "title": "Environmental Sustaimability", "path": "/content/richtek-eds/en/about-richtek/corporate-citizenship/environmental-sustaimability", "type": "entry" },
          { "title": "Giving & Volunteering", "path": "/content/richtek-eds/en/about-richtek/corporate-citizenship/giving-and-volunteering", "type": "entry" }
        ]
      },
      {
        "title": "Careers",
        "path": "/content/richtek-eds/en/about-richtek/careers",
        "type": "list",
        "children": [
          { "title": "Test Page", "path": "/content/richtek-eds/en/about-richtek/careers/test-page", "type": "entry" }
        ]
      }
    ]
  }
}

8. New Products Card 查詢 API #

用於獲取產品卡片的資料。

說明:

  • products 先返回有產品規格頁 productSpecCardImage 的產品,桶內保留 Product Spec update_day 降序;若數量不足 limit,再以 package fallback 圖片產品補足
  • categories 每個產品最多返回 2 個頂級分類
  • update_day 格式為 yyyy/MM/dd
  • API 會遞迴查詢所有子孫分類下的產品(不只是直接子分類)
  • shopping_link 為產品規格頁面的完整 EDS content path(/content/richtek-eds/...,不含 .html),找不到對應頁面時省略
  • datasheet_url 找不到時省略欄位(不返回空字串)
  • card_img_url 優先使用產品規格頁 productSpecCardImage 配置的卡圖;若沒有對應頁面、頁面未配置卡圖或卡圖為空,後端會沿 ProductSpec → ProductFamily → Product → Package 鏈查找 package images 目錄中的第一張圖片作為 fallback
  • 若產品同時缺少 Product Spec 卡圖與 package fallback 圖片,該產品不會出現在結果中
  • Product Spec 的 product_categories 在 CF 內部儲存為 JCR UUID;API 會先用 UUID 解析分類與祖先鏈,再對外返回產品分類 ID / 名稱

8.1 獲取產品卡片列表

屬性
URL/<aem-host>/bin/public/eds/blocks/new-products-card;可使用 cache-friendly URL ...new-products-card.json...new-products-card.{lang}.json
HTTP MethodGET
Content-Typeapplication/json
Cache-Control成功響應 max-age=300;失敗響應 no-store

請求引數

引數名型別必填說明
categoryIdstringOPT產品分類 ID(非 UUID),與 scope=all 互斥;未傳 categoryId 且 scope 空白時返回所有分類
scopestringOPT傳入 all 時返回所有分類的產品
monthsstringOPT查詢最近 N 個月內更新的產品,必須為正整數,預設值為 12
langstringOPT語言程式碼,預設 en;若未傳 query 參數,可用第一個 selector 表示語言
limitstringOPT返回產品數量上限,必須為正整數,預設值為 12

請求示例

request · 4 examples
GET /<aem-host>/bin/public/eds/blocks/new-products-card.json
GET /<aem-host>/bin/public/eds/blocks/new-products-card.zh-tw.json
GET /<aem-host>/bin/public/eds/blocks/new-products-card?categoryId=switching-regulators&months=12&lang=en&limit=12
GET /<aem-host>/bin/public/eds/blocks/new-products-card?scope=all&months=3&limit=12

欄位說明

data 物件欄位:

欄位型別必填說明
category_idstring請求的產品分類 ID,scope=all 時省略
category_namestring目錄標題,scope=all 時省略
productsarray對應目錄下的指定 limit 與 months 的產品列表
timingobject本次查詢各階段耗時,單位毫秒;用於 API 效能排查,不影響前端渲染主資料結構

data.timing 物件欄位(節選):

欄位型別說明
total_msnumberAPI 主要處理流程總耗時
root_category_msnumbercategoryId 模式下查詢根分類耗時;scope=all 時為 0
expand_categories_msnumbercategoryId 模式下展開子孫分類 UUID 耗時;scope=all 時為 0
date_query_msnumber查詢 Product Spec 耗時
filter_msnumberscope=all 模式下收集分類 UUID 耗時
category_load_msnumber載入產品分類資料耗時
ancestor_load_msnumber載入分類祖先鏈耗時
page_query_msnumber批次查詢產品規格頁耗時
item_build_msnumber建立 products 列表耗時
fallback_loop_msnumberfallback 圖片解析迴圈耗時
package_resolve_msnumberfallback 階段解析 Product package 耗時
package_folder_msnumberfallback 階段查找 package images 目錄耗時

products 陣列欄位:

欄位型別必填說明
idstring產品 ID
part_numberstring當前語言的產品名,隨 lang 參數變化
descriptionstring產品說明;無資料時省略
update_daystring產品更新時間,格式 yyyy/MM/dd
shopping_linkstring產品規格頁面的完整 EDS content path,找不到對應頁面時省略
datasheet_urlstring產品 Datasheet 連結,找不到時省略
card_img_urlstring卡片圖片 URL。優先使用 productSpecCardImage;若無則使用關聯 package images 目錄中的第一張圖片作為 fallback
categoriesarray產品所屬的頂層目錄,最多返回兩個

資料處理說明

  1. 排序:products 先返回有產品規格頁 productSpecCardImage 的產品,桶內保留 update_day 降序;若數量不足 limit,再以 package fallback 圖片產品補足。
  2. 分類展開:API 會遞迴查詢指定 categoryId 或 scope=all 範圍內所有子孫分類下的產品。
  3. 卡圖解析順序:先讀取 productSpecCardImage;若無,沿 ProductSpec → ProductFamily → Product → Package 鏈查找 package images 目錄中的第一張圖片。
  4. 無圖產品過濾:若產品同時缺少 Product Spec 卡圖與 package fallback 圖片,該產品會被跳過。

響應資料結構

json · response
{
  "timestamp": "2026-02-27 08:00:09",
  "success": true,
  "status": 200,
  "message": "OK",
  "data": {
    "category_id": "switching-regulators",
    "category_name": "Step-Down (Buck)",
    "products": [
      {
        "id": "RT2659",
        "part_number": "RT2659",
        "description": "6A, 6V, Synchronous Step-Down Converter with REFIN",
        "update_day": "2026/02/04",
        "shopping_link": "/content/richtek-eds/en/product-specifications/rt26/2f3e774d-1f22-4f1e-90df-5c6b2a8a4d31",
        "datasheet_url": "/content/dam/richtek/data/en/resources/product-specifications/rt26/rt2659/product-data-sheets/pdf/RT2659.pdf",
        "card_img_url": "/content/dam/richtek/resources/product-specifications/rt2659/images/card.jpg",
        "categories": [
          { "id": "switching-regulators", "name": "Switching Regulators" }
        ]
      },
      {
        "id": "RT2101A",
        "part_number": "RT2101A",
        "description": "2.95V to 6V Input, 3A Output, 2MHz, Synchronous Step-Down Converter",
        "update_day": "2025/10/08",
        "shopping_link": "/content/richtek-eds/en/product-specifications/rt21/0785cb8c-03b5-4b22-8ca4-ca68f84f9e5",
        "datasheet_url": "/content/dam/richtek/data/en/resources/product-specifications/rt21/rt2101a/product-data-sheets/pdf/RT2101A-08.pdf",
        "card_img_url": "/content/dam/richtek/resources/product-specifications/rt2101a/images/card.jpg",
        "categories": [
          { "id": "switching-regulators", "name": "Switching Regulators" }
        ]
      }
    ],
    "timing": {
      "total_ms": 231, "root_category_ms": 12, "expand_categories_ms": 8,
      "date_query_ms": 91, "filter_ms": 0, "category_load_ms": 10,
      "ancestor_load_ms": 9, "page_query_ms": 52, "item_build_ms": 49,
      "split_ms": 0, "page_image_phase_ms": 0, "fallback_index_ms": 0,
      "family_query_ms": 0, "family_map_ms": 0, "product_query_ms": 0,
      "product_map_ms": 0, "fallback_loop_ms": 0, "package_resolve_ms": 0,
      "package_folder_ms": 0
    }
  }
}

9. Side Menu 查詢 API #

用於獲取頁面 Side Menu 的資料,支援遞迴返回子頁面樹狀結構。

9.1 獲取側邊選單

屬性
URL/<aem-host>/bin/public/eds/blocks/side-menu
HTTP MethodGET
Content-Typeapplication/json

請求引數

引數名型別必填說明
langstringOPT語言程式碼 (en/zh_cn/zh_tw),預設 en
sectionstringREQ請求 Side Menu 的頁面區段,例如 about-richtek

請求示例

request
GET /<aem-host>/bin/public/eds/blocks/side-menu?section=about-richtek

欄位說明

pages 陣列欄位與 7.1 一致:title / path / type (list|entry) / children

響應資料結構與 7.1 Navigation List API 完全相同,可直接參考。

10. Product Category Data 查詢 API #

用於獲取產品分類的基礎資料,支援查詢單筆或全量分類。

說明:Product Category 的 parent 在 CF 內部儲存為父分類 CF 的 JCR UUID;此 Data API 會原樣返回 parent UUID,頂級分類時為 null。樹狀與產品關聯類 EDS API 會在內部用 UUID 解析後,再對外返回產品分類 ID / 名稱。

10.1 獲取產品分類資料

屬性
URL/<aem-host>/bin/public/eds/data/product-categories
HTTP MethodGET
Content-Typeapplication/json

請求引數

引數名型別必填說明
idstringOPT產品分類 ID。提供時返回單筆資料;省略時返回全部分類
langstringOPT語言程式碼,預設 en

請求示例

request · 2 examples
# 查詢單筆分類
GET /<aem-host>/bin/public/eds/data/product-categories?id=B9E78412-495C-456B-8546-4FA3353309A8&lang=en

# 查詢全部分類
GET /<aem-host>/bin/public/eds/data/product-categories?lang=en

欄位說明

欄位型別必填說明
idstring分類 ID
resource_pathstringJCR 資源路徑
titlestring分類名稱(隨 lang 參數變化)
title_enstring分類英文名稱(固定英文)
subtitlestring分類副標題,可能為 null
show_in_headerboolean是否在 Header 導航中顯示
parentstring父分類 CF 的 JCR UUID,頂級分類時為 null

邊界情況說明

  1. id 不存在:返回 404 err_not_found
  2. 無 id 參數:返回全部分類的陣列(可能為空陣列 [])。
  3. lang 無效或省略:預設使用 en,不會報錯。
  4. parent 為 null:表示該分類為頂級分類;非 null 時為父分類 CF 的 JCR UUID。
  5. subtitle 為 null:部分分類未設定副標題。

響應資料結構

json · single & list
// 查詢單筆(提供 id)
{
  "status": 200,
  "success": true,
  "message": "OK",
  "data": {
    "id": "B9E78412-495C-456B-8546-4FA3353309A8",
    "resource_path": "/content/dam/richtek/data/en/product-categories/switching-regulators/step-down--buck-/content",
    "title": "Step-Down (Buck)",
    "title_en": "Step-Down (Buck)",
    "subtitle": "High efficiency DC-DC converters",
    "show_in_header": true,
    "parent": "0bcd4f8f-4e1f-4e4a-a9d6-7f8a9b0c1d2e"
  }
}

// 查詢全部(不提供 id)
{
  "status": 200,
  "success": true,
  "message": "OK",
  "data": [
    {
      "id": "EBD6A32C-4264-4153-8D5D-740F5D9A9C2E",
      "resource_path": "/content/dam/richtek/data/en/product-categories/switching-regulators/content",
      "title": "Switching Regulators",
      "title_en": "Switching Regulators",
      "subtitle": null,
      "show_in_header": true,
      "parent": null
    }
  ]
}

11. Product Group Data 查詢 API #

用於獲取產品群組的彙總資料,包含 Family 狀態判斷、關聯的 Spec ID 列表,以及相關頁面的圖片。

11.1 獲取產品群組資料

屬性
URL/<aem-host>/bin/public/eds/data/product-groups
HTTP MethodGET
Content-Typeapplication/json

請求引數

引數名型別必填說明
idstringREQ產品群組 ID
langstringOPT語言程式碼,預設 en

請求示例

request
GET /<aem-host>/bin/public/eds/data/product-groups?id=RT5760&lang=en

欄位說明

data 物件欄位(節選):

欄位型別說明
is_newboolean該群組下任一 Spec 的 update_day 是否在一年內
spec_idsarray屬於該群組的所有 Product Spec ID 列表
statusstring群組下當前請求語言所有 Spec 的統一 Family 狀態;所有 Spec 均無 Family 時省略,只有部分 Spec 無 Family 或狀態不一致時返回固定值 See Product Status
banner_imagesarraySpec 頁面上 basicInfoImageSwitcher 元件的圖片彙總
banner_view_all_textstringBanner 區塊 View All 文字
banner_view_less_textstringBanner 區塊 View Less 文字
product_imagesarraySpec 頁面上 productImageSwitcher 元件的圖片彙總
product_view_all_textstringProduct 區塊 View All 文字
product_view_less_textstringProduct 區塊 View Less 文字
evb_imagesarray關聯 EVB 獨立頁面上 basicInfoImageSwitcher 元件的圖片彙總
evb_view_all_textstringEVB 區塊 View All 文字
evb_view_less_textstringEVB 區塊 View Less 文字
subtitlestring產品群組 CF 的 subtitle 欄位值
titlestring產品群組 CF 的 name 欄位值(輸出為 title)
has_downloadable_documentsboolean群組下任一 Product Spec 的 Product Data Sheet PDF 資料夾存在可下載 DAM Asset 時為 true
ordering_detailsarraySpec 頁面上 rtk-ordering-detail 元件的訂貨資訊彙總
timingobject後端組裝本次 response 的診斷耗時與數量統計

圖片陣列元素:

欄位型別說明
titlestring圖片標題,可能為 null
descriptionstring圖片描述,可能為 null
imgstring圖片 DAM 路徑
image-altstring圖片 alt 文字,可能為 null

ordering_details 陣列元素:

欄位型別說明
titlestring訂貨品項標題,可能為 null
img1string訂貨圖片 DAM 路徑(對應 JCR image-1),可能為 null
img1Altstring訂貨圖片 alt 文字,可能為 null
img2stringDatasheet 圖片 DAM 路徑(對應 JCR image-2),可能為 null
img2AltstringDatasheet 圖片 alt 文字,可能為 null

邊界情況說明

  1. 缺少 id 參數:返回 400 err_bad_request
  2. id 不存在:返回 404 err_not_found
  3. 群組存在但群組下無 Spec:陣列欄位為空、is_new 為 false、省略 status、title/subtitle 直接取自群組 CF。
  4. Spec 存在但無對應頁面spec_ids 正常返回,圖片相關陣列為空。
  5. Spec / EVB 頁面存在但無對應的 image switcher 元件:該頁面不貢獻圖片。
  6. 多個 Spec / EVB 頁面的圖片彙總:分別彙總 banner、product、evb 三類圖片。
  7. Family 狀態聚合:若所有 Spec 均無 Family,省略 status;若只有部分 Spec 無 Family、不同 Spec 的統一狀態不同,或任一 Spec 返回 See Product Status,則 status"See Product Status"
  8. Status 跨語言規則status 使用本次 lang 對應的 Product Spec / Product Family 計算;各語言 Family 與 Spec 關係由資料維護流程保持一致。See Product Status 是固定 API 狀態值,不依語言翻譯。
  9. 頁面查找與順序:先依 PageCreator canonical path 讀取;缺失時以 productSpecId / evbId fallback。
  10. View text 來源:取第一個成功解析到的 Spec page,不做 non-blank fallback。
  11. 可下載文件判斷has_downloadable_documents 只表示後端在相關 Product Spec 的 product-data-sheets/pdf 資料夾中找到至少一個有 original rendition 的 DAM Asset;不返回檔案清單。

響應資料結構

json · response
{
  "status": 200,
  "success": true,
  "message": "OK",
  "data": {
    "is_new": true,
    "spec_ids": ["RT5760A/RT5760B/RT5760C/RT5760D/RT5760E"],
    "status": "Active",
    "title": "RT5760",
    "subtitle": "Low Input Voltage, 1A Synchronous Step-Down Converter",
    "has_downloadable_documents": true,
    "banner_images": [
      {
        "title": "RT5760 Application Circuit",
        "description": "Typical application schematic",
        "img": "/content/dam/richtek/images/product_specs/RT57/RT5760/circuit.png",
        "image-alt": "RT5760 application circuit"
      }
    ],
    "banner_view_all_text": "View All",
    "banner_view_less_text": "View Less",
    "product_images": [
      {
        "title": "RT5760A SOP-8",
        "description": null,
        "img": "/content/dam/richtek/images/product_specs/RT57/RT5760/package.png",
        "image-alt": "RT5760A SOP-8 package"
      }
    ],
    "product_view_all_text": "View All",
    "product_view_less_text": "View Less",
    "evb_images": [
      {
        "title": "EVB Top View",
        "description": null,
        "img": "/content/dam/richtek/images/evbs/EVB_RT5760A/top.png",
        "image-alt": "EVB top view"
      }
    ],
    "evb_view_all_text": "View All",
    "evb_view_less_text": "View Less",
    "ordering_details": [
      {
        "title": "RT5760A SOP-8",
        "img1": "/content/dam/richtek/images/package.png",
        "img1Alt": "RT5760A SOP-8 package",
        "img2": null,
        "img2Alt": null
      }
    ],
    "timing": {
      "total_ms": 42, "find_group_ms": 3, "spec_query_ms": 8,
      "spec_id_map_ms": 0, "spec_page_query_ms": 7,
      "banner_image_map_ms": 1, "product_image_map_ms": 1,
      "evb_images_total_ms": 9,
      "status_total_ms": 4, "status_spec_id_map_ms": 0, "status_family_query_ms": 2,
      "status_family_group_ms": 1, "status_evaluate_ms": 1,
      "specs": 1, "spec_pages": 1,
      "banner_images": 1, "product_images": 1, "evb_images": 1,
      "ordering_details": 1, "english_specs": 1, "families": 1
    }
  }
}

12. Product Spec Data 查詢 API #

用於獲取產品規格的彙總資料,包含新品判斷、Family 狀態彙總,以及關聯 EVB 頁面上的圖片。

12.1 獲取產品規格資料

屬性
URL/<aem-host>/bin/public/eds/data/product-specs
HTTP MethodGET
Content-Typeapplication/json

請求引數

引數名型別必填說明
idstringREQ產品規格 ID,如 RT5713/RT5714
langstringOPT語言程式碼,預設 en

請求示例

request
GET /<aem-host>/bin/public/eds/data/product-specs?id=RT5713/RT5714&lang=en

欄位說明

欄位型別必填說明
titlestringProduct Spec CF 的產品名稱
subtitlestringProduct Spec CF 的產品副標題
is_newboolean該 Spec 的 update_day 是否在一年內
statusstring該 Spec 英文 Product Family 的統一狀態
has_downloadable_documentsboolean該 Product Spec 的 Product Data Sheet PDF 資料夾存在可下載 DAM Asset 時為 true
evb_imagesarray該 Spec 關聯的所有 EVB 頁面中 basicInfoImageSwitcher 元件的圖片彙總
timingobject後端組裝本次 response 的診斷耗時與數量統計

資料流說明

Product Spec ID ↓ (ProductSpecService.findById) Localized Product Spec ↓ (EvaluationBoardService.findAllByProductSpec) EVB Content Fragments ↓ (EvaluationBoardPageCreator#getPagePath(model)) EVB Pages (page-evaluation-board template, fixed page path) ↓ (讀取 basicInfoImageSwitcher 元件) Images Localized Product Spec ↓ (status branch) English request: ProductFamilyService.findAllByProductSpec Non-English request: ProductFamilyService.findAllByProductSpecId, Locale.ENGLISH English Product Family Content Fragments ↓ (彙總 status) Status

邊界情況說明

  1. 缺少 id 參數:返回 400 err_bad_request
  2. id 不存在:返回 404 err_not_found
  3. Spec 無關聯 EVBevb_images 為空陣列 []
  4. EVB 存在但無對應頁面evb_images 為空陣列 []
  5. EVB 頁面存在但無 basicInfoImageSwitcher 元件:該 EVB 頁面不貢獻任何圖片。
  6. 多個 EVB 的圖片彙總:所有 EVB 頁面的圖片會被攤平到同一個 evb_images 陣列中。
  7. Spec 無 update_dayis_new 為 false。
  8. 英文 Family 狀態不一致或不存在status 返回 "See Product Status"
  9. Spec 無副標題subtitle 可能為 null。
  10. Status 跨語言規則:一律使用英文 Spec / Family 計算。
  11. 可下載文件判斷has_downloadable_documents 只表示後端在該 Product Spec 的 product-data-sheets/pdf 資料夾中找到至少一個有 original rendition 的 DAM Asset;不返回檔案清單。

響應資料結構

json · response
{
  "status": 200,
  "success": true,
  "message": "OK",
  "data": {
    "title": "RT5714",
    "subtitle": "High Efficiency Synchronous Step-Down Converter",
    "is_new": true,
    "status": "Active",
    "has_downloadable_documents": true,
    "evb_images": [
      {
        "title": "EVB_RT5714-K1WSC Front View",
        "description": "Evaluation board front view",
        "img": "/content/dam/richtek/images/evb/RT5714/front.png"
      },
      {
        "title": "EVB_RT5714-K1WSC Back View",
        "description": null,
        "img": "/content/dam/richtek/images/evb/RT5714/back.png"
      }
    ],
    "timing": {
      "total_ms": 28, "find_spec_ms": 4, "status_ms": 10,
      "status_family_query_ms": 8, "status_evaluate_ms": 1,
      "evb_images_total_ms": 12, "evb_query_ms": 5,
      "evb_page_lookup_ms": 4, "evb_image_map_ms": 1,
      "evbs": 1, "evb_pages": 1, "evb_images": 2, "families": 1
    }
  }
}

13. Diagram Menu Block 查詢 API #

用於獲取 rtk-block-diagram-menu 元件所需的產品規格摘要資料,支援一次查詢多個 Spec。

說明:Product Spec 的 product_categories 在 CF 內部儲存為產品分類 CF 的 JCR UUID;API 會用 UUID 解析分類資料,但 category_id 對外返回產品分類 ID(不是 UUID)。

13.1 獲取 Diagram Menu 資料

屬性
URL/<aem-host>/bin/public/eds/blocks/diagram-menu
HTTP MethodGET
Content-Typeapplication/json

請求引數

引數名型別必填說明
idstringREQ產品規格 ID,支援多值(重複參數),如 ?id=RT5760&id=RT5761
langstringOPT語言程式碼,預設 en

請求示例

request · 3 examples
# 查詢單個 Spec
GET /<aem-host>/bin/public/eds/blocks/diagram-menu?id=RT5760&lang=en

# 查詢多個 Spec
GET /<aem-host>/bin/public/eds/blocks/diagram-menu?id=RT5760&id=RT5761&id=RT5762

# 查詢多個 Spec(繁體中文)
GET /<aem-host>/bin/public/eds/blocks/diagram-menu?id=RT5760&id=RT5761&lang=zh_tw

欄位說明

items 陣列欄位:

欄位型別必填說明
idstring產品規格 ID
namestring產品名稱(隨 lang 參數變化)
subtitlestring產品副標題,可能為 null
is_newboolean是否為新品(update_day 在一年內為 true)
shopping_linkstring產品規格頁面的完整 EDS content path,無對應頁面時為 null
datasheet_linkstringDatasheet PDF 的 DAM 路徑,無 PDF 時為 null
category_idstring該 Spec 所屬的任一產品分類 ID(非 UUID),無分類時為 null
statusstring產品統一狀態(Active / LTB / See Product Status)

excluded 陣列欄位(僅有排除項目時出現):

欄位型別說明
idstring被排除的 Spec ID
reasonstring排除原因:not_found(ID 不存在)或 status_filtered(狀態為 NRND 或 EOL)

邊界情況說明

  1. 缺少 id 參數:返回 400 err_bad_request
  2. 部分 id 不存在:存在的 Spec 正常返回;不存在的 ID 出現在 excluded 陣列中。
  3. Spec 狀態為 NRND 或 EOL:該 Spec 不會出現在 items
  4. Spec 無對應頁面shopping_linknull
  5. Spec 無 Datasheet PDFdatasheet_linknull
  6. Spec 無 product_categoriescategory_idnull
  7. Spec 無 update_dayis_newfalse
  8. Spec 下無 Product Familystatus"See Product Status"

響應資料結構

json · response
{
  "timestamp": "2026-03-23 10:30:00",
  "success": true,
  "status": 200,
  "message": "OK",
  "data": {
    "items": [
      {
        "id": "RT5760",
        "name": "RT5760",
        "subtitle": "6A, 6V, Synchronous Step-Down Converter",
        "is_new": true,
        "status": "Active",
        "shopping_link": "/content/richtek-eds/en/product-specifications/rt57/2a4fd2ad-86bf-4e0c-92bc-a6b15c2aa501",
        "datasheet_link": "/content/dam/richtek/data/en/resources/product-specifications/rt57/rt5760/product-data-sheets/pdf/RT5760.pdf",
        "category_id": "switching-regulators"
      }
    ],
    "excluded": [
      { "id": "FAKE123", "reason": "not_found" },
      { "id": "R7731", "reason": "status_filtered" }
    ]
  }
}

14. Design Tools 查詢 API #

原先拆分為 design-tools-packages(封裝圖檔)與 design-tools-downloads(設計工具下載)兩個 handler,自 v2.4 起合併為單一 design-tools handler。透過 type 參數可篩選只返回 packages 或 downloads,未指定時返回全部。

14.1 獲取設計工具資料 (Design Tools)

項目說明
HTTP MethodGET
Content-Typeapplication/json

請求引數

引數名型別必填說明
table_resource_typestringREQ固定值 design-tools
product_spec_idstringCND產品型號 ID。上限 50 個
product_group_idstringCNDProduct Group ID
langstringOPT語言程式碼,預設 en
typestringOPT逗號分隔的類型過濾。可選值:packagesdownloads。未指定時返回全部

請求示例

request · 4 examples
# 返回全部(packages + downloads)
GET /<aem-host>/bin/public/eds/product-table?table_resource_type=design-tools&product_spec_id=RT5760A&lang=en

# 僅返回 packages
GET /<aem-host>/bin/public/eds/product-table?table_resource_type=design-tools&product_spec_id=RT5760A&type=packages&lang=en

# 僅返回 downloads
GET /<aem-host>/bin/public/eds/product-table?table_resource_type=design-tools&product_spec_id=RT5760A&type=downloads&lang=en

# EVB 頁面(使用 evb_id)
GET /<aem-host>/bin/public/eds/product-table?table_resource_type=design-tools&evb_id=EVB_RT5796AHGJ6&lang=en

欄位說明

返回 data 陣列,最多包含 2 個元素,分別對應 packages 和 downloads。

table_namecolumnsproducts 欄位
packagesPACKAGE, PINS, OUTLINE_DIMENSION, FOOTPRINTS, IMAGE, MODEL_3D封裝圖檔資訊
downloadsTITLE, DATE, DOWNLOAD設計工具下載項目

成功響應示例

json · response
{
  "timestamp": "2026-04-01 10:00:00",
  "success": true,
  "status": 200,
  "message": "OK",
  "data": [
    {
      "table_name": "packages",
      "columns": [
        { "name": "PACKAGE", "field_name": "Package", "type": "string" },
        { "name": "PINS", "field_name": "Pins", "type": "number" },
        { "name": "OUTLINE_DIMENSION", "field_name": "Outline<br/>Dimension", "type": "link" },
        { "name": "FOOTPRINTS", "field_name": "Footprints", "type": "link" },
        { "name": "IMAGE", "field_name": "Image", "type": "link" },
        { "name": "MODEL_3D", "field_name": "3D Model", "type": "link" }
      ],
      "products": [
        {
          "PACKAGE": "TWL-CSP0.69×1.04-6",
          "PINS": 6,
          "OUTLINE_DIMENSION": [{ "url": "/content/dam/richtek/...", "icon": "pdf" }],
          "FOOTPRINTS": [{ "url": "/content/dam/richtek/...", "icon": "pdf" }],
          "IMAGE": [{ "url": "/content/dam/richtek/...", "icon": "image" }],
          "has_model_3d": true,
          "MODEL_3D": [{ "url": "/content/dam/richtek/...", "icon": "download" }]
        }
      ]
    },
    {
      "table_name": "downloads",
      "columns": [
        { "name": "TITLE", "field_name": "Title", "type": "link" },
        { "name": "DATE", "field_name": "Date", "type": "string" },
        { "name": "DOWNLOAD", "field_name": "Download", "type": "link" }
      ],
      "products": [
        {
          "TITLE": { "url": "https://www.richtek.com/design-tools/rt5760", "icon": "name", "name": "RT5760 Design Tool" },
          "DATE": "2025/12/20",
          "DOWNLOAD": { "url": "/content/dam/richtek/...", "icon": "download" }
        }
      ]
    }
  ]
}
多 Spec 說明:傳入多個 Spec ID 時,packages 跨 Spec 的相同 Package 會自動合併;downloads 匹配任一 Spec ID 的項目都會返回(依 file_name 去重)。
資料來源:packages 來自封裝 CF;downloads 來自 Design Tool sheet(透過 TechdocLinker Excel 匯入)。

15. Tag List Block 查詢 API #

用於獲取指定頁面的 mainTag 資訊,返回每個 tag 的 path 和本地化 title。

15.1 獲取頁面 Tag 列表

屬性
URL/<aem-host>/bin/public/eds/blocks/tag-list
HTTP MethodGET
Content-Typeapplication/json

請求引數

引數名型別必填說明
page_pathsstringREQ頁面路徑,支援多值(重複引數)
langstringOPT語言程式碼,預設 en

請求示例

request · 2 examples
# 查詢單個頁面的 tags
GET /<aem-host>/bin/public/eds/blocks/tag-list?page_paths=/content/richtek-eds/en/product-specifications/rt57/rt5760&lang=en

# 查詢多個頁面的 tags
GET /<aem-host>/bin/public/eds/blocks/tag-list?page_paths=/content/richtek-eds/en/product-specifications/rt57/rt5760&page_paths=/content/richtek-eds/en/product-specifications/rt57/rt5761&lang=en

欄位說明

欄位型別必填說明
pathstringTag 的 JCR 路徑,如 /content/cq:tags/richtek/application/buck
titlestringTag 的本地化顯示名稱,如 Buck Converter

邊界情況說明

  1. 缺少 page_paths 引數:返回 400 err_bad_request
  2. page_paths 為空陣列:返回空陣列 []
  3. 部分頁面不存在或無 mainTag:僅返回有有效 mainTag 的 tag 資訊。
  4. 頁面存在但 mainTag 為空或無效:該頁面不貢獻任何 tag。
  5. 多個頁面有相同 tag:每個頁面的 mainTag 都會獨立返回。
  6. lang 無效或省略:預設使用 en

響應資料結構

json · response
{
  "status": 200,
  "success": true,
  "message": "OK",
  "data": {
    "tags": [
      { "path": "/content/cq:tags/richtek/application/buck", "title": "Buck Converter" },
      { "path": "/content/cq:tags/richtek/application/boost", "title": "Boost Converter" }
    ]
  }
}

16. Technical Documentation 查詢 API #

用於獲取產品技術文件,聚合 5 種文件類型:Datasheet、Application Note、Selection Guide、Design Support Kit、Evaluation Boards。前端左側以 checkbox 過濾類型,右側按分類展示表格,預設「See all」顯示全部。

16.1 獲取技術文件 (Technical Documentation)

項目說明
HTTP MethodGET
Content-Typeapplication/json

請求引數

引數名型別必填說明
table_resource_typestringREQ固定值 technical-documentation
product_spec_idstringCND產品型號 ID。上限 50 個
product_group_idstringCNDProduct Group ID
evb_idstringCNDEVB ID(EVB 頁面入口)
langstringOPT語言程式碼,預設 en
typestringOPT逗號分隔的類型過濾。可選值:datasheetapplication_noteselection_guidedesign_support_kitevaluation_boardsproduct_introduction

請求示例

request · 3 examples
# Product Spec 頁面(單一 Spec)
GET /<aem-host>/bin/public/eds/product-table?table_resource_type=technical-documentation&product_spec_id=RT5760A&lang=en

# Product Group 頁面(使用 group_id)
GET /<aem-host>/bin/public/eds/product-table?table_resource_type=technical-documentation&product_group_id=RT8120&lang=en

# 篩選特定類型
GET /<aem-host>/bin/public/eds/product-table?table_resource_type=technical-documentation&product_spec_id=RT5760A&type=datasheet,evaluation_boards&lang=en

資料來源

分類來源說明
DatasheetProductDataSheet CF + DAM PDF從 Spec 路徑取檔案;Title 格式為 Spec name: Spec subtitle
Application NoteApplicationNote CF + DAM PDF從 Spec 對應的 AN CF 取關聯
Selection GuideTechdocLinker Excel 匯入Excel 讀入 CF 控制關聯
Design Support KitTechdocLinker Excel 匯入TITLE 為文字連結,DOWNLOAD 取 path(DAM 檔案)
Evaluation BoardsEvaluationBoard CF + DAM 檔案從 Spec 路徑取檔案,掃描 EVB 的 PDF 資料夾
Product IntroductionTech Insights CF(News / Video / Webinar)product_specs 欄位關聯任一 Spec 的內容;TYPE 為 News / Video / Webinar;按日期降序

EVB 頁面行為(evb_id 入口)

EVB 頁面的 Design Resources 區塊使用 evb_id 入口,只返回 3 個子表,且取數來源與 Spec 入口不同:

子表來源說明
design_support_kitTechdocLinker DSK sheet按 sheet 的 evb_id[] 欄位匹配當前 EVB
evaluation_boardsEVB CF 自身 documentJson只取當前 EVB 自身的文件,不含同 Spec 下其他兄弟 EVB
product_introductionTech Insights CFevaluation_boards 欄位關聯本 EVB 的內容
request · EVB
GET /<aem-host>/bin/public/eds/product-table?table_resource_type=technical-documentation&evb_id=EVB_RT6166DP-A&lang=en

各分類 columns + products 結構

分類columnsproducts 欄位
DatasheetTITLE, VERSION, DATE, DOWNLOADTITLE: Spec name: Spec subtitle, VERSION, DATE, DOWNLOAD (LinkItem/pdf)
Application NoteTITLE, DATE, DOWNLOADTITLE, DATE, DOWNLOAD (LinkItem/pdf)
Selection GuideTITLE, DATE, DOWNLOADTITLE, DATE, DOWNLOAD (LinkItem/download)
Design Support KitTITLE, TYPE, DATE, DOWNLOADTITLE(LinkItem/name 文字連結), TYPE, DATE, DOWNLOAD (LinkItem/download)
Evaluation BoardsEVB_NAME, TITLE, DATE, DOWNLOADEVB_NAME(分組表頭), TITLE, DATE, DOWNLOAD (LinkItem/download)
Product IntroductionTITLE, TYPE, DATE, DOWNLOADTITLE, TYPE(Video/News 等), DATE, DOWNLOAD (LinkItem/download)

成功響應示例

json · response
{
  "timestamp": "2026-03-30 10:00:00",
  "success": true,
  "status": 200,
  "message": "OK",
  "data": [
    {
      "table_name": "datasheet",
      "columns": [
        { "name": "TITLE", "field_name": "Title", "type": "string" },
        { "name": "VERSION", "field_name": "Version", "type": "string" },
        { "name": "DATE", "field_name": "Date", "type": "string" },
        { "name": "DOWNLOAD", "field_name": "", "type": "link" }
      ],
      "products": [
        {
          "TITLE": "RT5760A: 6V 1A, ACOT® Buck Converter in Thin SOT-563 Package",
          "VERSION": "V4.0",
          "DATE": "2025/12/20",
          "DOWNLOAD": { "url": "/content/dam/richtek/.../DS5760A-05.pdf", "icon": "pdf" }
        }
      ]
    },
    {
      "table_name": "evaluation_boards",
      "columns": [
        { "name": "EVB_NAME", "field_name": "", "type": "string" },
        { "name": "TITLE", "field_name": "Title", "type": "string" },
        { "name": "DATE", "field_name": "Date", "type": "string" },
        { "name": "DOWNLOAD", "field_name": "", "type": "link" }
      ],
      "products": [
        { "EVB_NAME": "EVB_RT5760AHGH6F", "TITLE": "6V Input, 1A, ACOT® Buck Converter", "DATE": "2025/12/20", "DOWNLOAD": { "url": "/content/dam/richtek/...", "icon": "download" } },
        { "EVB_NAME": "EVB_RT5760AHGH6F", "TITLE": "Bill of Materials", "DATE": "2025/12/20", "DOWNLOAD": { "url": "/content/dam/richtek/...", "icon": "download" } }
      ]
    },
    {
      "table_name": "product_introduction",
      "columns": [
        { "name": "TITLE", "field_name": "Title", "type": "string" },
        { "name": "TYPE", "field_name": "Type", "type": "string" },
        { "name": "DATE", "field_name": "Date", "type": "string" },
        { "name": "DOWNLOAD", "field_name": "", "type": "link" }
      ],
      "products": [
        { "TITLE": "Revealing Richtek's Automotive Business and Latest Reference", "TYPE": "Video", "DATE": "2025/12/20", "DOWNLOAD": { "url": "mailto:sales@richtek.com", "icon": "email" } }
      ]
    }
  ]
}

前端渲染邏輯

  1. 遍歷 data 陣列,每個元素渲染為一個獨立的分區,標題為 table_name
  2. 每個元素內按 columns 定義渲染表頭,按 products 渲染資料列。
  3. Evaluation Boards 的 products 按 EVB_NAME 做子分組,EVB_NAME 作為子表頭列。
  4. 左側 filter checkbox 對應各元素的 table_name 值,勾選後僅顯示對應 table。

邊界情況說明

  1. 某分類無資料:該元素的 products 為空陣列 [],元素仍會返回。
  2. 多 Spec 聚合:跨 Spec 的 Application Note 按 ID 去重,TechdocLinker 項目按 file_name 去重。
  3. EVB 無檔案:evaluation_boards table 中不會出現該 EVB 的行。

17. Related Products 查詢 API #

用於 Tech Insight(News / Video / Webinar)與 Application Note 詳情頁的「相關產品」區塊。後端讀取 source CF 的 product_specs,解析為當前語言的 Product Spec 後組裝相關產品列表。

說明:

  • 入口改為 source_type + source_id(內容驅動);舊版多值 id 參數已廢棄
  • description 取自 Product Spec 頁面中 id 為 basicInfoImageSwitcher 的 image switcher(description),API 會移除 HTML 標籤
  • card_img_url 優先使用 Product Spec 頁面 productSpecCardImage 配置的卡圖;缺失時 fallback 至關聯 package images 目錄中的第一張圖片
  • is_new 為 true 表示 update_day 在 365 天內
  • shopping_link / datasheet_url 找不到時返回空字串 ""

17.1 獲取相關產品列表

屬性
URL/<aem-host>/bin/public/eds/blocks/related-products
HTTP MethodGET
Content-Typeapplication/json

請求引數

引數名型別必填說明
source_typestringREQ當前內容類型;支援 new(兼容 news)、videowebinarAN(兼容 application-note / application_note / appnote
source_idstringREQ當前內容 CF 的業務 ID,例如 News ID、Video ID、Webinar ID 或 Application Note ID
langstringOPT語言程式碼 (en/zh_cn/zh_tw),預設 en;兼容 zh-cn / zh-tw

請求示例

request
GET /<aem-host>/bin/public/eds/blocks/related-products?source_type=new&source_id=news01&lang=en
GET /<aem-host>/bin/public/eds/blocks/related-products?source_type=AN&source_id=AN001&lang=zh-tw

欄位說明

products 陣列欄位:

欄位型別必填說明
idstring產品 ID
part_numberstring當前語言的產品名,隨 lang 參數變化
subtitlestringProduct Spec CF 的 subtitle;無資料時返回空字串 ""
descriptionstringProduct Spec 頁面中 id 為 basicInfoImageSwitcher 的 image switcher(description),API 會移除 HTML 標籤;無資料時返回空字串 ""
update_daystring產品更新時間,格式 yyyy/MM/dd
is_newbooleanupdate_day 是否在 365 天內
shopping_linkstring產品規格頁面的完整 EDS content path(不含 .html),找不到時返回空字串 ""
datasheet_urlstring產品 Datasheet 連結,找不到時返回空字串 ""
card_img_urlstring卡片圖片 URL。優先使用 Product Spec 頁面 productSpecCardImage 配置的卡圖;若無對應頁面、未配置卡圖或卡圖為空,則使用關聯 package images 目錄中的第一張圖片作為 fallback

響應資料結構

json · response
{
  "timestamp": "2026-04-08 10:00:00",
  "success": true,
  "status": 200,
  "message": "OK",
  "data": {
    "products": [
      {
        "id": "RT5760",
        "part_number": "RT5760",
        "subtitle": "4A, 40V, Synchronous Step-Down Converter",
        "description": "High efficiency synchronous step-down converter.",
        "update_day": "2026/01/15",
        "is_new": true,
        "shopping_link": "/content/richtek-eds/en/product-specifications/rt57/rt5760",
        "datasheet_url": "/content/dam/richtek/data/en/resources/product-specifications/rt57/rt5760/product-data-sheets/pdf/RT5760.pdf",
        "card_img_url": "/content/dam/richtek-eds/resources/packages/wqfn3x3-16/images/download.jpeg"
      },
      {
        "id": "RT5761",
        "part_number": "RT5761",
        "subtitle": "6A, 40V, Synchronous Step-Down Converter",
        "description": "Compact high current converter.",
        "update_day": "2024/06/01",
        "is_new": false,
        "shopping_link": "/content/richtek-eds/en/product-specifications/rt57/rt5761",
        "datasheet_url": "/content/dam/richtek/data/en/resources/product-specifications/rt57/rt5761/product-data-sheets/pdf/RT5761.pdf",
        "card_img_url": "/content/dam/richtek-eds/resources/packages/wdfn2x2-6/images/WDFN2x2-6.jpg"
      }
    ]
  }
}

邊界情況說明

  1. 缺少 source_typesource_id:返回 400 必填參數錯誤。
  2. source_type 不支援:返回 400 err_invalid_param
  3. 找不到 source CF:返回 404 err_not_found
  4. source CF 無 product_specs 或關聯 Spec 無法解析:成功返回 products: []
  5. 舊版多值 id 參數已廢棄?id=RT5760&id=RT5761 不再是有效請求格式。

18. Parametric Search 查詢 API #

用於產品引數化搜尋功能,支援伺服器端過濾、排序與分頁。包含三個端點:

  • 搜尋端點:根據過濾條件、關鍵字、排序返回分頁後的產品列表
  • 篩選條件端點:根據實際資料動態生成前端篩選器定義(checkbox 選項、range slider 範圍)
  • 分類樹端點:參數搜尋入口頁分類樹

資料流:Category ID → 展開子分類樹(含自身)→ 跨分類參數交集 → 收集所有產品規格 → 批次載入產品族 → 記憶體內過濾/排序/分頁。

18.1 獲取引數化搜尋結果

屬性
URL/<aem-host>/bin/public/eds/parametric-search
HTTP MethodGET
Content-Typeapplication/json

請求引數

引數名型別必填說明
product_category_idstringREQ入口 ProductCategory ID,支援任意層級
langstringOPT語言程式碼,預設 en
pagenumberOPT頁碼(1-based),預設 1
page_sizenumberOPT每頁筆數;省略或 ≤0 回傳全量;傳正整數則分頁。無上限
keywordstringOPT搜尋 Product Number(子字串匹配)
sort_bystringOPT排序欄位名稱(如 VIN_MIN
sort_orderstringOPT排序方向:asc(預設)或 desc
filter.{column}.valuesstringOPTCheckbox 篩選:逗號分隔的選中值
filter.{column}.logicstringOPTCheckbox 篩選邏輯:OR(預設)、ANDNOT
filter.{column}.minstringOPTRange 篩選下限(含)
filter.{column}.maxstringOPTRange 篩選上限(含)

Filter Query Params 格式

篩選條件使用扁平化 query params,前綴為 filter.,格式為 filter.{column_name}.{property}

Checkbox 篩選(多選值):

checkbox
filter.OUTPUT_ADJ_METHOD.values=Resistor,Fixed
filter.OUTPUT_ADJ_METHOD.logic=OR
  • values:逗號分隔的選中值
  • logic:可選,OR(預設,符合任一)、AND(全部符合)、NOT(排除選中值)

Range 篩選(數值範圍):

range
filter.VIN_MIN.min=2.5
filter.VIN_MIN.max=6.0

類型推斷規則:

  • 存在 .values → Checkbox filter
  • 存在 .min.max(無 .values)→ Range filter
  • 同一 column 同時有 .values.min/.max → 返回 400 錯誤

請求示例

request · 4 examples
# 基本查詢
GET /<aem-host>/bin/public/eds/parametric-search?product_category_id=switching-regulators&lang=en

# 帶分頁與排序
GET /<aem-host>/bin/public/eds/parametric-search?product_category_id=switching-regulators&lang=en&page=2&page_size=10&sort_by=VIN_MIN&sort_order=asc

# 帶關鍵字與篩選
GET /<aem-host>/bin/public/eds/parametric-search?product_category_id=buck-converters&lang=en&keyword=RT57&filter.OUTPUT_ADJ_METHOD.values=Resistor

# 多條件組合篩選
GET /<aem-host>/bin/public/eds/parametric-search?product_category_id=buck-converters&lang=en&filter.VIN_MIN.min=2.5&filter.VIN_MIN.max=6.0&filter.OUTPUT_ADJ_METHOD.values=Resistor,Fixed&sort_by=VIN_MIN&sort_order=asc

欄位說明

columns 陣列欄位:

欄位型別必填說明
namestring欄位標識,對應 products 中的 key
field_namestring列標題顯示名稱
typestring資料型別,詳見 3.3
unitstring單位,僅 numeric 型別需要
selection_typestring原生 Parameter CF selection_typeRANGE_VALUE_SLIDER / CHECKBOX …),前端據此決定篩選控件;僅動態參數列有此欄位,與 Filters API 的 selection_type 一致
data_typestring原生 Parameter CF data_typeNUMERIC / STRING / RANGE),與 type(映射後的渲染型別)互補,供前端自行處理值語義;僅動態參數列有此欄位
hiddenbooleantrue 表示該列預設隱藏;列與資料仍照常返回,由前端隱藏(由 Parameter CF hidden 控制)
固定列:PRODUCT_NUMBER(link)、DATASHEET(link)始終為前兩列。其後的動態列由該分類的 Parameter 定義決定。

:parametric-search 不含 STATUS 列。此 API 僅暴露 Active 產品,狀態恆為 Active 無資訊量。

products 陣列欄位:

欄位型別必填說明
PRODUCT_NUMBERobject產品型號文字連結,格式 {name, url, icon}icon 固定為 "name"
DATASHEETobjectDatasheet 連結,格式 {url, icon},找不到時省略
其他引數欄位string/number根據 columns 中 type 定義返回對應型別的值
is_newboolean隱藏欄位(非 column)。該列父 Spec 的 update_day 是否在一年內

pagination 物件欄位:

欄位型別說明
pagenumber當前頁碼
page_sizenumber每頁筆數
total_itemsnumber過濾後的總筆數
total_pagesnumber總頁數

資料處理說明

  1. Category 樹展開:給定的 product_category_id 可以是任意層級。後端自動展開該分類的整棵子樹(含自身)。
  2. 參數交集:子樹中所有有 ProductParameter 定義的分類取交集。
  3. 列順序:PRODUCT_NUMBER、DATASHEET 始終在最前。
  4. 空值處理:欄位值為空字串 "" 時,前端顯示為 -
  5. 分頁超界:page 超過 total_pages 時,自動回退到最後一頁。
  6. keyword 匹配:對 PRODUCT_NUMBER 欄位做不區分大小寫的子字串匹配。
  7. 排序:數值欄位按數值排序,字串欄位按不區分大小寫的字母序排序,null 值排到最後。
  8. 列與篩選器關聯:Search API 的 columns[].name 與 Filter API 的 filters[].name 為共享 key。
  9. PRODUCT_NUMBER 跳轉連結:Family → 關聯 Spec → 若 Spec 有關聯 Group 則跳轉至 Group Page,否則跳轉至 Spec Page;URL 並帶入當前請求的分類 ID(?productCategoryId=...)。
  10. is_new 標記:值由該列父 ProductSpec 的 update_day 是否在一年內決定(Asia/Taipei 滾動一年)。

響應資料結構

json · response
{
  "status": 200,
  "success": true,
  "data": {
    "table_name": "parametric-search",
    "columns": [
      {"name": "PRODUCT_NUMBER", "field_name": "Product Number", "type": "link"},
      {"name": "DATASHEET", "field_name": "Datasheet", "type": "link"},
      {"name": "VIN_MIN", "field_name": "Vin (min)", "type": "number", "unit": "V"},
      {"name": "VIN_MAX", "field_name": "Vin (max)", "type": "number", "unit": "V"},
      {"name": "VOUT_MIN", "field_name": "Vout (min)", "type": "number", "unit": "V"},
      {"name": "VOUT_MAX", "field_name": "Vout (max)", "type": "number", "unit": "V"},
      {"name": "OUTPUT_ADJ_METHOD", "field_name": "Output Adj. Method", "type": "string"},
      {"name": "IOUT_MAX", "field_name": "Iout (max)", "type": "number", "unit": "A"}
    ],
    "products": [
      {
        "PRODUCT_NUMBER": {"name": "RT5760A", "url": "/content/richtek-eds/en/product-groups/buck-converters?productCategoryId=buck-converters", "icon": "name"},
        "DATASHEET": {"url": "https://www.richtek.com/assets/datasheets/RT5760A.pdf", "icon": "pdf"},
        "VIN_MIN": 2.5, "VIN_MAX": 6, "VOUT_MIN": 0.6, "VOUT_MAX": 6,
        "OUTPUT_ADJ_METHOD": "Resistor", "IOUT_MAX": 1,
        "is_new": true
      },
      {
        "PRODUCT_NUMBER": {"name": "RT5760B", "url": "/content/richtek-eds/en/product-specifications/rt57/rt5760b?productCategoryId=buck-converters", "icon": "name"},
        "DATASHEET": {"url": "https://www.richtek.com/assets/datasheets/RT5760B.pdf", "icon": "pdf"},
        "VIN_MIN": 2.5, "VIN_MAX": 6, "VOUT_MIN": 0.6, "VOUT_MAX": 6,
        "OUTPUT_ADJ_METHOD": "Resistor", "IOUT_MAX": 1,
        "is_new": false
      }
    ],
    "pagination": {"page": 1, "page_size": 20, "total_items": 2, "total_pages": 1}
  }
}

18.2 獲取篩選條件定義

屬性
URL/<aem-host>/bin/public/eds/parametric-search/filters
HTTP MethodGET
Content-Typeapplication/json

請求引數

引數名型別必填說明
product_category_idstringREQ入口 ProductCategory ID,支援任意層級
langstringOPT語言程式碼,預設 en

請求示例

request
GET /<aem-host>/bin/public/eds/parametric-search/filters?product_category_id=switching-regulators&lang=en

欄位說明

filters 陣列欄位:

欄位型別必填說明
namestring篩選器標識
field_namestring前端顯示名稱
unitstring單位,僅數值型篩選器有值
selection_typestring篩選類型:CHECKBOXRANGE_VALUE_SLIDER
data_typestring資料型別:STRINGNUMERIC
optionsarrayCHECKBOX 類型時,可選值的字串陣列(已排序去重)
rangeobjectRANGE_VALUE_SLIDER 類型時,{min, max} 數值範圍

資料處理說明

  1. 動態篩選器:篩選器根據該分類的 Parameter 定義動態生成,順序按 Parameter 的 order 排序。(不再包含 Status 篩選器)
  2. Options 計算CHECKBOX 類型的 options 從所有產品的實際資料中提取不重複值。
  3. Range 計算RANGE_VALUE_SLIDER 類型的 range 從所有產品的實際數值中取最小/最大值。
  4. 多分類交集:當 Spec 關聯多個根分類時,只返回所有根分類共同擁有的 Parameter(交集)。

響應資料結構

json · response
{
  "status": 200,
  "success": true,
  "data": {
    "filters": [
      {
        "name": "VIN_MIN",
        "field_name": "Vin (min)",
        "unit": "V",
        "selection_type": "RANGE_VALUE_SLIDER",
        "data_type": "NUMERIC",
        "range": {"min": 2.5, "max": 36.0}
      },
      {
        "name": "OUTPUT_ADJ_METHOD",
        "field_name": "Output Adj. Method",
        "selection_type": "CHECKBOX",
        "data_type": "STRING",
        "options": ["External", "Fixed", "Resistor"]
      },
      {
        "name": "IOUT_MAX",
        "field_name": "Iout (max)",
        "unit": "A",
        "selection_type": "RANGE_VALUE_SLIDER",
        "data_type": "NUMERIC",
        "range": {"min": 0.5, "max": 6.0}
      }
    ]
  }
}

18.3 獲取參數搜尋入口頁分類樹

用於 Parametric Search 入口頁取得產品分類樹。與 Product Categories Tree API 的差異:

  • 固定從頂層開始:不支援 id 參數,始終返回第一層分類
  • URL 指向 parametric search 頁面:每個分類節點的 url 一律指向 parametric search result 頁面(/content/richtek-eds/{lang}/parametric-search/parametric-search-result?productCategoryId={encodedId}
屬性
URL/<aem-host>/bin/public/eds/parametric-search-categories
HTTP MethodGET
Content-Typeapplication/json

請求引數

引數名型別必填說明
depthstringOPT最大返回層級,允許值 1~10,預設 4
langstringOPT語言程式碼,預設 en

請求示例

request · 2 examples
GET /<aem-host>/bin/public/eds/parametric-search-categories?lang=en
GET /<aem-host>/bin/public/eds/parametric-search-categories?depth=1&lang=zh_tw

響應資料結構

json · response
{
  "status": 200,
  "success": true,
  "message": "OK",
  "data": {
    "categories": [
      {
        "id": "switching-regulators",
        "title": "Switching Regulators",
        "description": "DC/DC converter solutions",
        "type": "list",
        "url": "/content/richtek-eds/en/parametric-search/parametric-search-result?productCategoryId=switching-regulators",
        "list": [
          {
            "id": "buck",
            "title": "Buck Converters",
            "type": "entry",
            "url": "/content/richtek-eds/en/parametric-search/parametric-search-result?productCategoryId=buck"
          }
        ]
      }
    ]
  }
}

19. New Products 查詢 API #

用於獲取最近更新的產品,按頂層產品分類分組返回。每個產品項目包含 datasheet 連結,以及對應產品規格頁面的 page_link

Product Spec 的 product_categories 在 Content Fragment 內部儲存為產品分類 CF 的 JCR UUID;API 會用 UUID 解析頂層分類,top_level_category_id 對外返回頂層產品分類 ID、category_path 返回分類 CF 資源路徑,每個產品的 category_id 為該 Product Spec 關聯的第一個 Product Category ID。

19.1 獲取新品分組列表

屬性
URL/<aem-host>/bin/public/eds/new-products
HTTP MethodGET
Content-Typeapplication/json

請求引數

引數名型別必填說明
monthsstringOPT最近 N 個月內更新的產品,允許值 3612,預設 12
langstringOPT語言程式碼,預設 en

請求示例

request · 3 examples
GET /<aem-host>/bin/public/eds/new-products
GET /<aem-host>/bin/public/eds/new-products?months=3&lang=en
GET /<aem-host>/bin/public/eds/new-products?months=12&lang=zh_tw

欄位說明

groups 陣列欄位:

欄位型別必填說明
top_level_category_idstring頂層產品分類 ID(非 UUID)
category_namestring頂層產品分類名稱
category_pathstring頂層產品分類的 CF 資源路徑
productsarray該頂層分類下命中的新品列表

products 陣列欄位:

欄位型別必填說明
idstring產品 ID
part_numberstring當前語言的產品名稱
descriptionstring產品副標題 / 說明
update_daystring產品更新時間,格式 yyyy/MM/dd
datasheet_urlstringDatasheet PDF 的 DAM 路徑;找不到時為空字串 ""
page_linkstring產品規格頁面的完整 EDS content path,找不到時為空字串 ""
category_idstring該產品主要的 Product Category ID(非 UUID)

邊界情況說明

  1. 查無符合 months 條件的產品data.groups 為空陣列 []
  2. 產品沒有分類:該產品不會出現在任何 group 中,category_id 為空字串 ""
  3. 產品沒有對應頁面page_link 為空字串 ""
  4. 產品沒有 Datasheet PDFdatasheet_url 為空字串 ""
  5. months 不合法:返回 400 err_invalid_param

響應資料結構

json · response
{
  "status": 200,
  "success": true,
  "message": "OK",
  "data": {
    "groups": [
      {
        "top_level_category_id": "switching-regulators",
        "category_name": "Switching Regulators",
        "category_path": "/content/dam/richtek/data/en/product-categories/switching-regulators/content",
        "products": [
          {
            "id": "RT2101A",
            "part_number": "RT2101A",
            "description": "2.95V to 6V Input, 3A Output, 2MHz, Synchronous Step-Down Converter",
            "update_day": "2025/10/08",
            "datasheet_url": "/content/dam/richtek/data/en/resources/product-specifications/rt21/rt2101a/product-data-sheets/pdf/RT2101A-08.pdf",
            "page_link": "/content/richtek-eds/en/product-specifications/rt21/0785cb8c-03b5-4b22-8ca4-ca68f84f9e5",
            "category_id": "switching-regulators"
          },
          {
            "id": "RT2659",
            "part_number": "RT2659",
            "description": "6A, 6V, Synchronous Step-Down Converter with REFIN",
            "update_day": "2026/02/04",
            "datasheet_url": "/content/dam/richtek/data/en/resources/product-specifications/rt26/rt2659/product-data-sheets/pdf/RT2659.pdf",
            "page_link": "",
            "category_id": "switching-regulators"
          }
        ]
      }
    ]
  }
}

20. Product Categories Tree 查詢 API #

用於獲取產品分類頁樹,支援按分類 ID 取子樹,以及透過 depth 控制最大返回層級。

Product Category 的 parent 在 Content Fragment 內部儲存為父分類 CF 的 JCR UUID;API 會用 UUID 建立父子樹,但請求參數與響應中的 id 均為產品分類 ID(不是 UUID)。

20.1 獲取產品分類樹

屬性
URL/<aem-host>/bin/public/eds/product-categories
HTTP MethodGET
Content-Typeapplication/json

請求引數

引數名型別必填說明
idstringOPT產品分類 ID;省略時返回頂層分類樹,提供時返回該分類的子節點列表
depthstringOPT最大返回層級,允許值 1~10,預設 4
langstringOPT語言程式碼,預設 en

請求示例

request · 3 examples
GET /<aem-host>/bin/public/eds/product-categories?lang=en
GET /<aem-host>/bin/public/eds/product-categories?depth=1&lang=en
GET /<aem-host>/bin/public/eds/product-categories?id=switching-regulators&depth=2&lang=zh_tw

欄位說明

欄位型別必填說明
idstring產品分類 ID
titlestring分類名稱
descriptionstring分類副標題;無資料時省略
typestring節點型別:listentry
urlstring分類頁 URL;命中分類頁時返回實際頁面路徑;不存在時回退到 parametric search result
listarray子分類節點列表;僅當 type = "list"depth 允許繼續展開時返回

邊界情況說明

  1. 未提供 id:返回頂層分類節點。
  2. id 不存在或該分類無子節點data.categories 為空陣列 []
  3. depth 不合法:返回 400 err_invalid_param
  4. 分類頁不存在於當前 tierurl 回退到該語言的 parametric search result 完整 EDS content path。
  5. description 為空:欄位省略。

響應資料結構

json · response
{
  "status": 200,
  "success": true,
  "message": "OK",
  "data": {
    "categories": [
      {
        "id": "switching-regulators",
        "title": "Switching Regulators",
        "description": "DC/DC converter solutions",
        "type": "list",
        "url": "/content/richtek-eds/en/products/switching-regulators",
        "list": [
          {
            "id": "buck",
            "title": "Buck Converters",
            "type": "entry",
            "url": "/content/richtek-eds/en/products/switching-regulators/buck"
          }
        ]
      }
    ]
  }
}

21. Application Categories 查詢 API #

用於獲取 applications 頁面樹,資料來源為 AEM 頁面而非 Content Fragment。返回節點可能是 application category page,也可能是 application page。

21.1 獲取 Applications 頁面樹

屬性
URL/<aem-host>/bin/public/eds/application-categories
HTTP MethodGET
Content-Typeapplication/json

請求引數

引數名型別必填說明
pathstringOPT目標 applications tree 下頁面的完整 JCR content path
langstringOPT語言程式碼,預設 en

請求示例

request · 3 examples
GET /<aem-host>/bin/public/eds/application-categories
GET /<aem-host>/bin/public/eds/application-categories?lang=zh_tw
GET /<aem-host>/bin/public/eds/application-categories?path=/content/richtek-eds/en/applications/industrial-control/motor-control&lang=en

欄位說明

欄位型別必填說明
idstring頁面名稱(page name)
titlestring頁面標題
pathstring頁面的完整 EDS content path
typestring節點型別:listentry
pageTypestring頁面類型:application-categoryapplication
subtitlestring頁面元件 richtek-application-category-subtitle 的文字
descriptionstringpageType 讀取對應元件的 textContent;API 會移除 HTML 標籤
listarray子頁面節點列表

邊界情況說明

  1. 未提供 path:返回 applications root 下的完整頁面樹。
  2. path 不存在或不在 applications 根路徑下:返回 404。
  3. 目標節點是葉子節點data.categories 為空陣列 []
  4. subtitle 未設定:欄位省略。
  5. description 未設定:欄位省略。
  6. pageType 判斷:API 依頁面的 cq:template 判斷。

響應資料結構

json · response
{
  "status": 200,
  "success": true,
  "message": "OK",
  "data": {
    "categories": [
      {
        "id": "industrial-control",
        "title": "Industrial Control",
        "path": "/content/richtek-eds/en/applications/industrial-control",
        "type": "list",
        "pageType": "application-category",
        "subtitle": "Factory automation and control solutions",
        "description": "AEM Editable Field - Application Category Description",
        "list": [
          {
            "id": "motor-control",
            "title": "Motor Control",
            "path": "/content/richtek-eds/en/applications/industrial-control/motor-control",
            "type": "entry",
            "pageType": "application",
            "description": "AEM Editable Field - Application Description"
          }
        ]
      }
    ]
  }
}

22. Home Page Explore Products 查詢 API #

用於提供首頁 Explore Products 區塊所需資料,返回 L1 application categories 清單,以及每個分類對應的說明、圖片與 L2 side menu links。

22.1 獲取首頁 Explore Products 資料

屬性
URL/<aem-host>/bin/public/eds/home-page-explore-products
HTTP MethodGET
Content-Typeapplication/json

請求引數

引數名型別必填說明
langstringOPT語言程式碼,預設 en

請求示例

request · 2 examples
GET /<aem-host>/bin/public/eds/home-page-explore-products
GET /<aem-host>/bin/public/eds/home-page-explore-products?lang=zh_tw

欄位說明

data 陣列元素:

欄位型別必填說明
titlestringL1 application category 頁標題
descriptionstringpageType 讀取對應元件的 textContent,並移除 HTML 標籤
learnMoreLinkUrlstringL1 分類頁的 JCR content path
imageUrlstringL1 分類頁的卡圖 DAM 路徑;無卡圖時返回空字串 ""
sideMenuLinksarray該 L1 分類下所有 L2 子頁連結

sideMenuLinks 陣列元素:

欄位型別必填說明
titlestringL2 分類頁標題
urlstringL2 分類頁的 JCR content path

邊界情況說明

  1. 無任何 L1 application categorydata 為空陣列 []
  2. description 元件不存在或內容為空description 返回空字串 ""
  3. L1 沒有 L2 子頁sideMenuLinks 為空陣列 []
  4. L1 沒有卡圖:該 L1 仍返回,imageUrl 為空字串 ""
  5. 頁面跳轉 URL:統一返回 /content/richtek-eds/... content path。

響應資料結構

json · response
{
  "status": 200,
  "success": true,
  "message": "OK",
  "data": [
    {
      "title": "Industrial Control",
      "description": "Comprehensive power solutions for industrial control systems",
      "learnMoreLinkUrl": "/content/richtek-eds/en/applications/industrial-control",
      "imageUrl": "/content/dam/richtek-eds/resources/images/applications/industrial-control-card.jpg",
      "sideMenuLinks": [
        { "title": "Motor Control", "url": "/content/richtek-eds/en/applications/industrial-control/motor-control" },
        { "title": "PLC", "url": "/content/richtek-eds/en/applications/industrial-control/plc" }
      ]
    }
  ]
}

23. Tech Insight Block 查詢 API #

用於提供 Tech Insight 區塊資料。此 API 會在最近一年內搜尋 News / Video / Webinar Content Fragments;首頁場景使用 scope=all;Product Category 頁面使用 scope=product_category;Application Category 頁面使用 scope=application_category

為避免大量 Spec ID / Product Spec UUID 導致 QueryBuilder predicate 過大,Spec ID 轉 Product Spec UUID 查詢與 News / Video / Webinar CFM 的 product_specs 關聯查詢會以每批 100 筆分批執行,結果合併後再去重與排序。

23.1 獲取 Tech Insight 列表

屬性
URL/<aem-host>/bin/public/eds/blocks/tech-insight;all 場景可使用 cache-friendly URL ...tech-insight.json...tech-insight.{lang}.json
HTTP MethodGET
Content-Typeapplication/json
Cache-Control成功響應 max-age=300;失敗響應 no-store

請求引數

引數名型別必填說明
scopestringOPT場景類型;支援 allproduct_categoryapplication_category
category_idstringCNDscope=product_categoryscope=application_category 時必填
langstringOPT語言程式碼,預設 en;若未傳 query 參數,可用第一個 selector 表示語言
limitintegerOPT返回 Tech Insight item 數量上限,必須為正整數,預設值為 10

請求示例

request · 5 examples
GET /<aem-host>/bin/public/eds/blocks/tech-insight?scope=product_category&category_id=242853&lang=en&limit=10
GET /<aem-host>/bin/public/eds/blocks/tech-insight?scope=application_category&category_id=231&lang=en&limit=10
GET /<aem-host>/bin/public/eds/blocks/tech-insight?scope=all&lang=zh_tw&limit=10
GET /<aem-host>/bin/public/eds/blocks/tech-insight.json
GET /<aem-host>/bin/public/eds/blocks/tech-insight.zh-tw.json

欄位說明

data 物件欄位:

欄位型別必填說明
itemsarrayTech Insight 列表,最多返回 limit 筆;無資料時返回空陣列 []
summaryobject本次查詢診斷資訊,包含 scope、分類 ID、關聯數量等

data.items 陣列元素:

欄位型別必填說明
card_imgstring卡片圖片路徑;無資料時返回空字串 ""
namestring內容名稱;對應 CFM 的 name 欄位
idstringContent Fragment 業務 ID
urlstring對應詳細頁的 AEM 頁面路徑
authorstring作者;目前僅 News CFM 提供
datestring日期,格式 d MMM yyyy
tagstring內容類型標記:newsvideowebinar
tag_listarrayCFM tag_list 標籤陣列
video_durationstring影片長度;目前僅 Video CFM 提供

邊界情況說明

  1. 缺少 scope:若同時未提供 category_id,視為 scope=all;若提供了 category_id 但缺少 scope,返回 400。
  2. scope=allcategory_id 同時提供:返回 400 err_invalid_param
  3. scope=product_categoryscope=application_category 但缺少 category_id:返回 400 必填參數錯誤。
  4. scope 為不支援的值:返回 400 err_invalid_param
  5. Product Category 空結果data.items 為空陣列 []
  6. Application Category 空結果data.items 為空陣列 []
  7. 資料超過一年:不會出現在返回結果中。
  8. 部分欄位缺值:字串欄位返回空字串 "",陣列欄位返回空陣列 []
  9. 排序規則:按 date 倒序排列;無日期的項目排在最後;最終最多返回 limit 筆,預設 10 筆。
  10. 批次查詢規則:當 Spec ID 或 Product Spec UUID 較多時,以每批 100 筆執行 QueryBuilder;News / Video / Webinar 查詢會下推 limit,多批候選合併去重後全局按日期倒序取最終 limit 筆。
  11. limit 錯誤處理limit 若不是正整數,返回 400 err_invalid_param

響應資料結構

json · response
{
  "status": 200,
  "success": true,
  "message": "OK",
  "elapsed_seconds": 0.218,
  "data": {
    "summary": {
      "scope": "application_category",
      "category_id": "231",
      "application_category_cfs": 1,
      "application_descendant_category_cfs": 12,
      "application_cfs": 9,
      "product_spec_uuids": 48,
      "resolved_product_specs": 48,
      "tech_insight_query_batches": 3,
      "matched_items": 5,
      "reason": "ok",
      "timing": {
        "find_root_app_category_ms": 5,
        "find_app_descendants_ms": 15,
        "find_application_cfs_ms": 60,
        "collect_app_spec_uuids_ms": 1,
        "query_news_ms": 120,
        "query_video_ms": 35,
        "query_webinar_ms": 15,
        "dedup_ms": 2,
        "sort_ms": 1
      }
    },
    "items": [
      {
        "card_img": "/content/dam/richtek/data/en/news/example/card.jpg",
        "name": "High-Efficiency Power Design for Industrial Control",
        "id": "news-2026-04-10",
        "url": "/content/richtek-eds/en/news/news-2026-04-10",
        "author": "Richtek",
        "date": "10 APR 2026",
        "tag": "news",
        "tag_list": ["richtek-eds:power-management"],
        "video_duration": ""
      },
      {
        "card_img": "/content/dam/richtek/data/en/videos/example/card.jpg",
        "name": "Industrial Power Design Tutorial",
        "id": "video-2026-03-25",
        "url": "/content/richtek-eds/en/videos/video-2026-03-25",
        "author": "",
        "date": "25 MAR 2026",
        "tag": "video",
        "tag_list": ["richtek-eds:video"],
        "video_duration": "05:32"
      }
    ]
  }
}

23.2 獲取 Tech Insight 列表(Page-based 排查端點)

此端點保留舊版 Application page / rtk-block-diagram-menu 查詢邏輯,主要用於測試、排查或相容需要。

屬性
URL/<aem-host>/bin/public/eds/blocks/tech-insight-by-page
HTTP MethodGET
Content-Typeapplication/json

請求引數

引數名型別必填說明
category_idstringREQApplication Category page 的節點名稱 / category id
langstringOPT語言程式碼,預設 en
request
GET /<aem-host>/bin/public/eds/blocks/tech-insight-by-page?category_id=231&lang=en

查詢規則

後端會找到指定 Application Category page,遍歷其下所有子孫 Application page,尋找頁面中所有 filter=rtk-block-diagram-menu 的節點;所有節點的 spec-ids 欄位都會被讀取。spec-ids 中的 Spec ID 僅按逗號分隔,不按 / 分隔;收集後會 trim、去空、去重,再查詢實際存在的 Product Spec CF 並轉為 UUID,最後匹配 News / Video / Webinar CFM 的 product_specs 多值 UUID 欄位。

24. Drawing Dimension 查詢 API #

用於 Drawing Dimension 頁面,全域搜尋所有 Package 封裝資料。

資料流:延遲載入所有 Package(不 eager load PackageCategory)→ 載入所有 PackageCategory → 批次解析 Package 與 Category 關聯 → 建構 name cache → keyword 過濾 → 建構 filters → PINS 過濾 → 建構 filter_counts → PACKAGE_TYPE 過濾 → 排序 → 分頁 → 僅對分頁結果掃描 DAM 關聯檔案。

24.1 獲取 Drawing Dimension 資料

屬性
URL/<aem-host>/bin/public/eds/drawing-dimension
HTTP MethodGET
Content-Typeapplication/json

請求引數

引數名型別必填說明
langstringOPT語言程式碼,預設 en
pagenumberOPT頁碼,預設 1
page_sizenumberOPT每頁筆數,預設 20,上限 200
sort_bystringOPT排序欄位:PINS(預設)、PACKAGE_TYPEPACKAGE_NAME
sort_orderstringOPT排序方向:asc(預設)或 desc
filter.PINS.minnumberOPTPin Count 篩選下限
filter.PINS.maxnumberOPTPin Count 篩選上限
filter.PACKAGE_TYPE.valuesstringOPT逗號分隔的 PackageCategory ID
keywordstringOPT模糊搜尋關鍵字,匹配 PACKAGE_TYPE 或 PACKAGE_NAME

請求示例

request · 4 examples
# 基本查詢
GET /<aem-host>/bin/public/eds/drawing-dimension?lang=en

# 帶分頁與排序
GET /<aem-host>/bin/public/eds/drawing-dimension?lang=en&page=2&page_size=10&sort_by=PINS&sort_order=desc

# 帶篩選條件
GET /<aem-host>/bin/public/eds/drawing-dimension?lang=en&filter.PINS.min=6&filter.PINS.max=24&filter.PACKAGE_TYPE.values=TBGA,WL-CSP

# 帶關鍵字搜尋
GET /<aem-host>/bin/public/eds/drawing-dimension?keyword=QFN&lang=en

固定列定義

namefield_nametype說明
PACKAGE_TYPEPackage Typestring格式為「父分類 / 子分類」(如 BGA / TBGA
PACKAGE_NAMEPackage Namestring封裝名稱
PINSPinsnumberPin 數量
OUTLINE_DIMENSIONOutline DimensionlinkOutline Dimension PDF 檔案
FOOTPRINTSFootprintslinkFootprint 檔案
IMAGEImagelink封裝圖片
MODEL_3D3D Modellink3D 模型檔案或聯絡 email

filters 與 filter_counts 差異

欄位計算基準用途何時變化
filters.pin_count.rangekeyword-only滑桿邊界keyword 變化時
filters.package_type.optionskeyword-only分類樹初始狀態keyword 變化時
filter_counts.package_typekeyword + PINS分類樹動態計數PINS 或 keyword 變化時

資料處理說明

  1. Pin Count 篩選:同時套用 min 和 max;pins 為 null 的 Package 在啟用範圍篩選時會被排除。
  2. Package Type 篩選filter.PACKAGE_TYPE.values 使用 PackageCategory ID。
  3. Keyword 搜尋:對 keyword 做不區分大小寫的子字串匹配,命中 PACKAGE_TYPE 或 PACKAGE_NAME 任一即算匹配。keyword 與 filter 為 AND 關係。
  4. 排序:數值欄位按數值排序,字串欄位按不區分大小寫的字母序排序。
  5. 3D Model fallback:若 DAM 路徑下無 .zip 檔案,返回 mailto:sales@richtek.com 聯絡連結。
  6. 效能最佳化:Package 使用延遲載入,消除 N+1 查詢。DAM 檔案掃描僅對分頁後的結果執行。
  7. filters:僅套用 keyword 後計算。
  8. filter_counts:套用 keyword + PINS range 後計算。

響應資料結構

json · response
{
  "status": 200,
  "success": true,
  "data": {
    "table_name": "drawing-dimension",
    "columns": [
      {"name": "PACKAGE_TYPE", "field_name": "Package Type", "type": "string"},
      {"name": "PACKAGE_NAME", "field_name": "Package Name", "type": "string"},
      {"name": "PINS", "field_name": "Pins", "type": "number"},
      {"name": "OUTLINE_DIMENSION", "field_name": "Outline Dimension", "type": "link"},
      {"name": "FOOTPRINTS", "field_name": "Footprints", "type": "link"},
      {"name": "IMAGE", "field_name": "Image", "type": "link"},
      {"name": "MODEL_3D", "field_name": "3D Model", "type": "link"}
    ],
    "products": [
      {
        "PACKAGE_TYPE": "BGA / TBGA",
        "PACKAGE_NAME": "TBGA10x10-144(FC)",
        "PINS": 144,
        "OUTLINE_DIMENSION": [{"url": "/content/dam/richtek/.../TBGA10x10-144.pdf", "icon": "pdf"}],
        "FOOTPRINTS": [{"url": "/content/dam/richtek/.../TBGA10x10-144.zip", "icon": "download"}],
        "IMAGE": [{"url": "/content/dam/richtek/.../TBGA10x10-144.png", "icon": "image"}],
        "MODEL_3D": [{"url": "/content/dam/richtek/.../TBGA10x10-144.zip", "icon": "download"}]
      },
      {
        "PACKAGE_TYPE": "CSP / WL-CSP",
        "PACKAGE_NAME": "WL-CSP0.7x1.35-5",
        "PINS": 5,
        "OUTLINE_DIMENSION": [],
        "FOOTPRINTS": [],
        "IMAGE": [],
        "MODEL_3D": [{"url": "mailto:sales@richtek.com", "icon": "email"}]
      }
    ],
    "pagination": {"page": 1, "page_size": 20, "total_items": 534, "total_pages": 27},
    "filters": {
      "pin_count": {
        "name": "PINS",
        "field_name": "Pin Count",
        "selection_type": "RANGE_VALUE_SLIDER",
        "data_type": "NUMERIC",
        "range": {"min": 3.0, "max": 225.0}
      },
      "package_type": {
        "selection_type": "CHECKBOX_TREE",
        "data_type": "STRING",
        "options": [
          {
            "id": "BGA", "name": "BGA", "count": 4,
            "children": [
              {"id": "TBGA", "name": "TBGA", "count": 1},
              {"id": "UBGA", "name": "UBGA", "count": 1},
              {"id": "WBGA", "name": "WBGA", "count": 1}
            ]
          }
        ]
      }
    },
    "filter_counts": {
      "package_type": [
        {
          "id": "BGA", "name": "BGA", "count": 4,
          "children": [
            {"id": "TBGA", "name": "TBGA", "count": 1},
            {"id": "UBGA", "name": "UBGA", "count": 1}
          ]
        }
      ]
    }
  }
}

25. Cross Reference Search 查詢 API #

用於交叉參考(競品替代)搜尋功能,使用者輸入競品料號或公司名稱關鍵字,系統返回 Richtek 對應替代產品列表。

資料流:關鍵字 → 收集關聯的 ProductSpec → 收集 Spec 葉子分類並上溯祖先鏈 → 計算參數聯集 → 批次載入產品族 → 附加 Type of Match → 記憶體內過濾/排序/分頁。

25.1 獲取交叉參考搜尋結果

屬性
URL/<aem-host>/bin/public/eds/cross-reference-search
HTTP MethodGET
Content-Typeapplication/json

請求引數

引數名型別必填說明
keywordstringREQ搜尋關鍵字,對 CrossReference 的 id 和 company_name 欄位做 LIKE 模糊匹配(OR 邏輯)
langstringOPT語言程式碼,預設 en
pagenumberOPT頁碼(1-based),預設 1
page_sizenumberOPT每頁筆數;省略或 ≤0 回傳全量
sort_bystringOPT排序欄位名稱
sort_orderstringOPT排序方向
filter.{column}.*stringOPT篩選條件,與 Parametric Search 相同

請求示例

request · 3 examples
# 基本查詢
GET /<aem-host>/bin/public/eds/cross-reference-search?keyword=TPS51125&lang=en

# 帶分頁與排序
GET /<aem-host>/bin/public/eds/cross-reference-search?keyword=TPS51125&lang=en&page=1&page_size=10&sort_by=VIN_MIN&sort_order=asc

# 帶篩選條件
GET /<aem-host>/bin/public/eds/cross-reference-search?keyword=TPS51125&lang=en&filter.TYPE_OF_MATCH.values=Pin-to-pin replacement,Drop-in replacement&filter.VIN_MIN.min=2.5&filter.VIN_MIN.max=6.0

欄位說明

固定列:PRODUCT_NUMBER(string)、DATASHEET(link)、TYPE_OF_MATCH(string)始終為前三列。其餘動態列由 Parameter 的聯集決定。

columns 陣列欄位:

欄位型別必填說明
namestring欄位標識,對應 products 中的 key
field_namestring列標題顯示名稱
typestring資料型別,詳見 3.3
unitstring單位,僅 numeric 型別需要
selection_typestring原生 Parameter CF selection_typeRANGE_VALUE_SLIDER / CHECKBOX …),前端據此決定篩選控件;僅動態參數列有此欄位
data_typestring原生 Parameter CF data_typeNUMERIC / STRING / RANGE),與 type(映射後的渲染型別)互補;僅動態參數列有此欄位
hiddenbooleantrue 表示該列預設隱藏;列與資料仍照常返回,由前端隱藏(由 Parameter CF hidden 控制)

products 陣列欄位:

欄位型別必填說明
PRODUCT_NUMBERstringRichtek 產品型號
DATASHEETobjectDatasheet 連結;無對應 datasheet 時不返回
TYPE_OF_MATCHstring匹配類型(如 Pin-to-pin replacement、Similar functionality)
其他引數欄位string/number根據 columns 中 type 定義返回

資料處理說明

  1. 搜尋匹配keyword 對 CrossReference 的 idcompany_name 欄位做 SQL LIKE 模糊匹配(OR 邏輯)。
  2. Type of Match 來源:一個 CrossReference 可關聯多個 ProductSpec;以「同一 Spec + 同一 type_of_match」去重,不同 type_of_match 會各自展開為列。
  3. 參數聯集:從每個 Spec 的葉子分類沿 parent 上溯至根分類,再取其 Parameter 的聯集(依 name 去重)。
  4. 列順序:固定列始終在前,動態列按 Parameter 的 order 排序。
  5. 篩選/排序/分頁:與 Parametric Search 使用相同邏輯。

響應資料結構

json · response
{
  "status": 200,
  "success": true,
  "data": {
    "table_name": "cross-reference-search",
    "columns": [
      {"name": "PRODUCT_NUMBER", "field_name": "Product Number", "type": "string"},
      {"name": "DATASHEET", "field_name": "Datasheet", "type": "link"},
      {"name": "TYPE_OF_MATCH", "field_name": "Type of match", "type": "string"},
      {"name": "VIN_MIN", "field_name": "Vin (min)", "type": "number", "unit": "V"},
      {"name": "VIN_MAX", "field_name": "Vin (max)", "type": "number", "unit": "V"},
      {"name": "NUM_OUTPUTS", "field_name": "Number of Outputs", "type": "number"},
      {"name": "OUTPUT_ADJ_METHOD", "field_name": "Output Adj. Method", "type": "string"},
      {"name": "IOUT_MAX", "field_name": "Iout (max)", "type": "number", "unit": "A"}
    ],
    "products": [
      {
        "PRODUCT_NUMBER": "RT5751B",
        "DATASHEET": {"url": "https://www.richtek.com/assets/datasheets/RT5751B.pdf", "icon": "pdf"},
        "TYPE_OF_MATCH": "Pin-to-pin replacement",
        "VIN_MIN": 2.5, "VIN_MAX": 6, "NUM_OUTPUTS": 1,
        "OUTPUT_ADJ_METHOD": "Resistor", "IOUT_MAX": 1
      },
      {
        "PRODUCT_NUMBER": "RT5751A",
        "DATASHEET": {"url": "https://www.richtek.com/assets/datasheets/RT5751A.pdf", "icon": "pdf"},
        "TYPE_OF_MATCH": "Similar functionality",
        "VIN_MIN": 2.5, "VIN_MAX": 6, "NUM_OUTPUTS": 1,
        "OUTPUT_ADJ_METHOD": "Resistor", "IOUT_MAX": 1
      },
      {
        "PRODUCT_NUMBER": "RTQ6361",
        "DATASHEET": {"url": "https://www.richtek.com/assets/datasheets/RTQ6361.pdf", "icon": "pdf"},
        "TYPE_OF_MATCH": "Drop-in replacement",
        "VIN_MIN": 4, "VIN_MAX": 60, "NUM_OUTPUTS": 1,
        "OUTPUT_ADJ_METHOD": "Resistor", "IOUT_MAX": 1.5
      }
    ],
    "pagination": {"page": 1, "page_size": 3, "total_items": 3, "total_pages": 1}
  }
}

25.2 獲取篩選條件定義

屬性
URL/<aem-host>/bin/public/eds/cross-reference-search/filters
HTTP MethodGET
Content-Typeapplication/json

請求引數

引數名型別必填說明
keywordstringREQ搜尋關鍵字
langstringOPT語言程式碼,預設 en

請求示例

request
GET /<aem-host>/bin/public/eds/cross-reference-search/filters?keyword=TPS51125&lang=en

資料處理說明

  1. Type of Match 篩選器:始終為第一個篩選器,selection_type 為 CHECKBOX,options 從搜尋結果中所有 CrossReference 的 type_of_match 值提取。
  2. 動態篩選器:後續篩選器根據參數聯集定義動態生成,與 Parametric Search 相同邏輯。

響應資料結構

json · response
{
  "status": 200,
  "success": true,
  "data": {
    "filters": [
      {
        "name": "TYPE_OF_MATCH",
        "field_name": "Type of match",
        "selection_type": "CHECKBOX",
        "data_type": "STRING",
        "options": ["Drop-in replacement", "Pin-to-pin replacement", "Similar functionality"]
      },
      {
        "name": "VIN_MIN",
        "field_name": "Vin (min)",
        "unit": "V",
        "selection_type": "RANGE_VALUE_SLIDER",
        "data_type": "NUMERIC",
        "range": {"min": 2.5, "max": 36.0}
      },
      {
        "name": "OUTPUT_ADJ_METHOD",
        "field_name": "Output Adj. Method",
        "selection_type": "CHECKBOX",
        "data_type": "STRING",
        "options": ["External", "Fixed", "Resistor"]
      }
    ]
  }
}

26. EVB Data 查詢 API #

用於 EVB 頁面,依據 EVB ID 返回 Evaluation Board CF 的 status、關聯 Product Spec 的 ID 與 title,並彙總關聯 Spec 頁面上 productImageSwitcher 元件的圖片。

26.1 獲取 EVB 資料

屬性
URL/<aem-host>/bin/public/eds/data/evaluation-boards
HTTP MethodGET
Content-Typeapplication/json

請求引數

引數名型別必填說明
idstringREQEvaluation Board ID
langstringOPT語言程式碼,預設 en

請求示例

request
GET /<aem-host>/bin/public/eds/data/evaluation-boards?id=EVB-001&lang=en

欄位說明

欄位型別必填說明
statusstringEVB CF 的 status 欄位值
titlestringEVB CF 的 name 欄位值
has_downloadable_documentsbooleanEVB 的 documents 資料夾存在可下載 DAM Asset 時為 true
specsarray與此 EVB 關聯的 Product Spec 列表
product_imagesarray關聯 Spec 頁面上 productImageSwitcher 元件的圖片彙總

邊界情況說明

  1. 缺少 id 參數:返回 400 err_bad_request
  2. id 不存在:返回 404 err_not_found
  3. EVB 無關聯 Specspecsproduct_images 為空陣列 []
  4. Spec 存在但無對應頁面specs 正常返回;該 Spec 不貢獻 product_images
  5. Spec 頁面存在但無 productImageSwitcher 元件:該 Spec 頁面不貢獻圖片。
  6. 可下載文件判斷has_downloadable_documents 只表示後端在該 EVB 的 documents 資料夾中找到至少一個有 original rendition 的 DAM Asset;不返回檔案清單。

響應資料結構

json · response
{
  "status": 200,
  "success": true,
  "message": "OK",
  "data": {
    "status": "Active",
    "title": "EVB_RT6160",
    "has_downloadable_documents": true,
    "specs": [
      { "id": "RT6160", "title": "RT6160 High Efficiency Buck Converter" },
      { "id": "RT6161", "title": "RT6161 Low Power Buck Converter" }
    ],
    "product_images": [
      {
        "title": "Typical Application",
        "description": "<p>Application circuit</p>",
        "img": "/content/dam/richtek/images/product_specs/RT61/RT6160/application.png",
        "image-alt": "RT6160 application circuit"
      }
    ]
  }
}

27. News Page Data 查詢 API #

用於 News 詳情頁入口,依據 News CF 業務 ID 返回 News Content Fragment 目前映射的所有 CF 欄位。此 API 不展開關聯的 Product Spec / EVB 詳細資料,product_specsevaluation_boards 返回 CF 中保存的原始 UUID 陣列。

27.1 獲取 News Page CF 資料

屬性
URL/<aem-host>/bin/public/eds/data/news
HTTP MethodGET
Content-Typeapplication/json

請求引數

引數名型別必填說明
idstringREQNews CF 業務 ID
langstringOPT語言程式碼,相容 zh-tw/zh-cn,預設 en

請求示例

request
GET /<aem-host>/bin/public/eds/data/news?id=news01&lang=en

欄位說明

欄位型別必填說明
idstringNews CF 的 id 欄位
titlestringNews CF 的 name 欄位,缺值時返回空字串 ""
datestring格式 yyyy-MM-dd,缺值時返回空字串 ""
authorstringNews CF 的 author 欄位
card_imagestringNews CF 的 card_image 欄位
tag_liststring[]News CF 的 tag_list 欄位
product_specsstring[]原始 UUID 陣列
evaluation_boardsstring[]原始 UUID 陣列

邊界情況說明

  1. 缺少 id 參數:返回 400 err_bad_request
  2. id 不存在:返回 404 err_not_found
  3. 關聯欄位不展開product_specs / evaluation_boards 僅返回 CF 原始 UUID。
  4. 空欄位:CF 字串/日期欄位無值時返回空字串 "";陣列欄位無值時返回空陣列。

響應資料結構

json · response
{
  "status": 200,
  "success": true,
  "message": "OK",
  "data": {
    "id": "news01",
    "title": "Example News",
    "date": "2026-06-12",
    "author": "Richtek",
    "card_image": "/content/dam/richtek/images/news01.png",
    "tag_list": ["News"],
    "product_specs": ["8b87c1f7-0000-4000-8000-000000000001"],
    "evaluation_boards": ["8b87c1f7-0000-4000-8000-000000000002"]
  }
}

28. Video Page Data 查詢 API #

用於 Video 詳情頁入口,依據 Video CF 業務 ID 返回 Video Content Fragment 目前映射的所有 CF 欄位。

28.1 獲取 Video Page CF 資料

屬性
URL/<aem-host>/bin/public/eds/data/video
HTTP MethodGET
Content-Typeapplication/json

請求引數

引數名型別必填說明
idstringREQVideo CF 業務 ID
langstringOPT語言程式碼,相容 zh-tw/zh-cn,預設 en

請求示例

request
GET /<aem-host>/bin/public/eds/data/video?id=video01&lang=en

欄位說明

欄位型別必填說明
idstringVideo CF 的 id 欄位
titlestringVideo CF 的 name 欄位
datestring格式 yyyy-MM-dd
video_durationstringVideo CF 的 video_duration 欄位
card_imagestringVideo CF 的 card_image 欄位
tag_liststring[]Video CF 的 tag_list 欄位
product_specsstring[]原始 UUID 陣列
evaluation_boardsstring[]原始 UUID 陣列

邊界情況說明

  1. 缺少 id 參數:返回 400 err_bad_request
  2. id 不存在:返回 404 err_not_found
  3. 關聯欄位不展開product_specs / evaluation_boards 僅返回 CF 原始 UUID。
  4. 空欄位:CF 字串/日期欄位無值時返回空字串 "";陣列欄位無值時返回空陣列。

響應資料結構

json · response
{
  "status": 200,
  "success": true,
  "message": "OK",
  "data": {
    "id": "video01",
    "title": "Example Video",
    "date": "2026-06-12",
    "video_duration": "03:30",
    "card_image": "/content/dam/richtek/images/video01.png",
    "tag_list": ["Video"],
    "product_specs": ["8b87c1f7-0000-4000-8000-000000000001"],
    "evaluation_boards": ["8b87c1f7-0000-4000-8000-000000000002"]
  }
}

29. Application Note Page Data 查詢 API #

用於 Application Note 詳情頁入口,依據 Application Note CF 業務 ID 返回 Application Note Content Fragment 目前映射的所有 CF 欄位。此 API 不展開關聯的 Product Spec 詳細資料,product_specs 返回 CF 中保存的原始 UUID 陣列。

29.1 獲取 Application Note Page CF 資料

屬性
URL/<aem-host>/bin/public/eds/data/application-note
HTTP MethodGET
Content-Typeapplication/json

請求引數

引數名型別必填說明
idstringREQApplication Note CF 業務 ID
langstringOPT語言程式碼 (en/zh_tw/zh_cn),相容 zh-tw/zh-cn,預設 en

請求示例

request
GET /<aem-host>/bin/public/eds/data/application-note?id=AN001&lang=en

欄位說明

data 物件欄位:

欄位型別必填說明
idstringApplication Note CF 的 id 欄位,缺值時返回空字串 ""
titlestringApplication Note CF 的 title 欄位,缺值時返回空字串 ""
title_enstringApplication Note CF 的 title_en 欄位,缺值時返回空字串 ""
datestringApplication Note CF 的 date 欄位,格式 yyyy-MM-dd,缺值時返回空字串 ""
authorstringApplication Note CF 的 author 欄位,缺值時返回空字串 ""
product_specsstring[]Application Note CF 的 product_specs 原始 UUID 陣列,無值時返回空陣列
has_downloadable_documentsbooleanApplication Note 的 PDF 資料夾存在可下載 DAM Asset 時為 true

邊界情況說明

  1. 缺少 id 參數:返回 400 err_bad_request,訊息為 "Missing required parameter: id"
  2. id 不存在:返回 404 err_not_found,訊息為 "Resource 'Application note: {id}' does not exist."
  3. 關聯欄位不展開product_specs 僅返回 CF 原始 UUID,不返回關聯 CF 的名稱或頁面路徑。
  4. 空欄位:CF 字串欄位無值時返回空字串 "";陣列欄位無值時返回空陣列。
  5. 可下載文件判斷has_downloadable_documents 只表示後端在該 Application Note 的 pdf 資料夾中找到至少一個有 original rendition 的 DAM Asset;不返回檔案清單。

響應資料結構

json · response
{
  "status": 200,
  "success": true,
  "message": "OK",
  "data": {
    "id": "AN001",
    "title": "Example Application Note",
    "title_en": "Example Application Note",
    "date": "2026-01-15",
    "author": "Richtek",
    "product_specs": ["8b87c1f7-0000-4000-8000-000000000001"],
    "has_downloadable_documents": true
  }
}

30. Related Read More Block 查詢 API #

用於 Tech Insight 詳情頁右側 Related / Read More 區塊。前端傳當前頁面的 source_typesource_id 與可選控制參數;後端會讀取該 News / Video / Webinar CF 的 tag_listproduct_specsevaluation_boards,再自行計算關聯資料。

Related 的關聯優先級為小 tag > spec > evb。大類 tag 固定忽略 NewsVideoWebinar。若小 tag 命中不足指定筆數,再用 product_specs 補位;仍不足時再用 evaluation_boards 補位。同一關聯層級內按 date 倒序排序。

Read More 不參與關聯計算,直接查詢全部 News / Video / Webinar CF,按 date 倒序返回。本 API 不限制最近 12 個月,會查詢全部歷史 Tech Insight CF。

30.1 獲取 Related / Read More 列表

屬性
URL/<aem-host>/bin/public/eds/blocks/related-read-more
HTTP MethodGET
Content-Typeapplication/json

請求引數

引數名型別必填說明
source_typestringREQ當前頁面類型;支援 newsvideowebinar
source_idstringREQ當前頁面對應的全域唯一 CF 業務 ID
related_limitintegerOPTRelated 返回筆數上限;預設 5,最大 20
read_more_limitintegerOPTRead More 返回筆數上限;預設 5,最大 20
related_exclude_idstring[]OPTRelated 黑名單 CF ID;可重複傳參
read_more_exclude_idstring[]OPTRead More 黑名單 CF ID;可重複傳參
langstringOPT語言程式碼,預設 en

請求示例

request · 2 examples
GET /<aem-host>/bin/public/eds/blocks/related-read-more?source_type=news&source_id=news01&lang=en
GET /<aem-host>/bin/public/eds/blocks/related-read-more?source_type=video&source_id=video01&related_limit=8&read_more_limit=6&related_exclude_id=news02&read_more_exclude_id=webinar01&lang=zh-tw

響應資料結構

json · response
{
  "status": 200,
  "success": true,
  "message": "OK",
  "data": {
    "related": {
      "items": [
        { "id": "news02", "name": "Example Related News", "url": "/content/richtek-eds/en/news/news02" }
      ]
    },
    "read_more": {
      "items": [
        { "id": "video03", "name": "Example Read More Video", "url": "/content/richtek-eds/en/videos/video03" }
      ]
    }
  }
}

欄位說明

items 陣列元素:

欄位型別必填說明
idstringNews / Video / Webinar CF 業務 ID
namestringNews / Video / Webinar CF name 欄位
urlstring對應 Tech Insight 詳情頁 content path,保留 /content/richtek-eds/ 前綴

邊界情況說明

  1. 缺少 source_typesource_id:返回 400 必填參數錯誤。
  2. source_type 不支援:返回 400 err_invalid_param
  3. source CF 不存在:返回 404。
  4. 黑名單排除related_exclude_id 只影響 Related;read_more_exclude_id 只影響 Read More。
  5. Related 與 Read More 不互斥:Read More 不排除已出現在 Related 的 CF。
  6. Related 自身去重:Related 會排除當前 source CF、黑名單 CF,以及前一優先級已加入的 CF。
  7. Read More 自身去重:Read More 會排除當前 source CF 與黑名單 CF。
  8. 頁面 URL 規則:後端優先查對應 Tech Insight 頁面;若無頁面資料,按頁面建立規則 fallback。
  9. 返回筆數控制related_limitread_more_limit 預設為 5,最大為 20。
  10. limit 錯誤處理:limit 參數若不是正整數,返回 400 err_invalid_param

31. Compare Products 查詢 API #

用於 Compare Products 產品比較頁。除了使用者在 Parametric Search 結果頁勾選多個 Product Number 後跳轉比較(pn 入口)外,亦支援由產品規格頁 / 產品組頁 / EVB 頁一鍵比較其下全部產品。本 API 回傳所選產品的完整「All Parameters」資料。

  • 來源引數四選一互斥pnproduct_spec_idproduct_group_idevb_id 每次請求必須且只能提供其中一個
  • 與 Parametric Search API 共用 JSON 契約(table_name / columns / products)與列定義
  • product_category_id 為每種入口的選填修飾:決定參數列集合與 Product Number 連結的分類上下文
  • 無比較數量上限(原 pn 的 10 筆上限已移除)
  • 「Differences」檢視由前端基於同一份回應自行計算,後端永遠回傳全量資料

31.1 獲取產品比較資料

屬性
URL/<aem-host>/bin/public/eds/compare-products
HTTP MethodGET
Content-Typeapplication/json

請求引數

引數名型別必填說明
pnstring4-OF要比較的 Product Number,可重複或逗號分隔。無數量上限
product_spec_idstring4-OF產品規格業務 ID。比較這些 Spec 下的全部 Active 產品族
product_group_idstring4-OF產品組業務 ID
evb_idstring4-OF評估板業務 ID。evb_id 不存在回傳 404
product_category_idstringOPT入口 ProductCategory ID,對任意來源選填。不影響比較哪些 row
langstringOPT語言程式碼,預設 en
pn / product_spec_id / product_group_id / evb_id 四選一互斥:必須且只能提供其中一個,否則回傳 400。

請求示例

request · 5 examples
# pn 入口(帶分類,與勾選搜尋頁一致)
GET /<aem-host>/bin/public/eds/compare-products?product_category_id=242909&pn=RT5512B&pn=RT9119&pn=RT9125H&lang=en

# pn 入口(不帶分類,全域解析)
GET /<aem-host>/bin/public/eds/compare-products?pn=RT5512B&pn=RT9119&pn=RT9125H&lang=en

# product_spec_id 入口(可逗號多值)
GET /<aem-host>/bin/public/eds/compare-products?product_spec_id=RT9101,RT9119&lang=en

# product_group_id 入口
GET /<aem-host>/bin/public/eds/compare-products?product_group_id=RT9101&lang=en

# evb_id 入口
GET /<aem-host>/bin/public/eds/compare-products?evb_id=EVB_RT6166DP-A&lang=en

資料處理說明

  1. 列定義與搜尋頁一致columns 結構與 Parametric Search 完全相同。
  2. row 順序pn 入口依請求中 pn 的順序回傳;其他入口依 Product Number 升序。
  3. 大小寫不敏感pn 與 ProductFamily name 比對時不區分大小寫;重複的 pn 會合併為一筆。
  4. not_found:僅 pn 入口有。無法解析的 Product Number 收集於 not_found 陣列回傳。
  5. 僅含 Active 產品:所有入口資料來源僅包含 Active 狀態的 ProductFamily。
  6. PRODUCT_NUMBER 跳轉連結:規則與 Parametric Search 相同(Group Page 優先,否則 Spec Page)。
  7. 無分頁:回應不含 pagination 欄位。
  8. 未傳 product_category_id 時的 columns 聯集columns 取所選產品所屬全部分類(含上鑽祖先)的參數聯集。
  9. 無比較數量上限:所有入口皆不限制比較的產品數量。
  10. 不受 Hidden 影響:Compare 不標記 hidden flag,hidden 參數一律照常顯示。

響應資料結構

json · response
{
  "status": 200,
  "success": true,
  "data": {
    "table_name": "compare-products",
    "columns": [
      {"name": "PRODUCT_NUMBER", "field_name": "Product Number", "type": "link"},
      {"name": "DATASHEET", "field_name": "Datasheet", "type": "link"},
      {"name": "VIN_MIN", "field_name": "Vin (min)", "type": "number", "unit": "V"},
      {"name": "VOUT_MAX", "field_name": "Vout (max)", "type": "number", "unit": "V"},
      {"name": "OUTPUT_ADJ_METHOD", "field_name": "Output Adj. Method", "type": "string"},
      {"name": "STATUS", "field_name": "Status", "type": "status"}
    ],
    "products": [
      {
        "PRODUCT_NUMBER": {"name": "RT5512B", "url": "/content/richtek-eds/en/product-specifications/rt55/rt5512b?productCategoryId=242909", "icon": "name"},
        "DATASHEET": {"url": "https://www.richtek.com/assets/datasheets/RT5512B.pdf", "icon": "pdf"},
        "VIN_MIN": 2.5, "VOUT_MAX": 6,
        "OUTPUT_ADJ_METHOD": "Resistor",
        "STATUS": {"text": "Active", "date": "", "type": "green"},
        "is_new": false
      },
      {
        "PRODUCT_NUMBER": {"name": "RT9119", "url": "/content/richtek-eds/en/product-groups/rt9119?productCategoryId=242909", "icon": "name"},
        "DATASHEET": {"url": "https://www.richtek.com/assets/datasheets/RT9119.pdf", "icon": "pdf"},
        "VIN_MIN": 3, "VOUT_MAX": 5.5,
        "OUTPUT_ADJ_METHOD": "Resistor",
        "STATUS": {"text": "Active", "date": "", "type": "green"},
        "is_new": true
      }
    ],
    "not_found": ["RT0000X"]
  }
}

響應欄位說明

與 Parametric Search(18.1)相同,僅差異如下:

欄位型別必填說明
data.table_namestring固定為 compare-products
data.not_foundstring[]無法解析的 Product Number 清單;全部解析成功時省略
data.pagination--不回傳

邊界情況說明

  1. 未提供任何來源pn / product_spec_id / product_group_id / evb_id 全缺 → 返回 400。
  2. 多個來源同時提供:返回 400 err_invalid_param(mutually exclusive)。
  3. product_category_id 不存在:僅帶分類路徑時校驗,返回 404。
  4. 部分 pn 找不到:正常 200,缺失項列於 not_found
  5. pn 全域解析分支找不到任何 Active 產品:正常 200,products 為空陣列。
  6. evb_id 不存在:返回 404 err_not_found
  7. product_group_id 無關聯 Spec:返回 400 err_invalid_param
  8. product_spec_id / evb_id 有效但無 Active 產品族:正常 200,products 為空陣列。

32. Webinar Page Data 查詢 API #

用於 Webinar 詳情頁入口,依據 Webinar CF 業務 ID 返回 Webinar Content Fragment 目前映射的所有 CF 欄位。此 API 不展開關聯的 Product Spec / EVB 詳細資料,product_specsevaluation_boards 返回 CF 中保存的原始 UUID 陣列。

32.1 獲取 Webinar Page CF 資料

屬性
URL/<aem-host>/bin/public/eds/data/webinar
HTTP MethodGET
Content-Typeapplication/json

請求引數

引數名型別必填說明
idstringREQWebinar CF 業務 ID
langstringOPT語言程式碼 (en/zh_tw/zh_cn),相容 zh-tw/zh-cn,預設 en;非法非空值回退英文

請求示例

request
GET /<aem-host>/bin/public/eds/data/webinar?id=webinar01&lang=en

欄位說明

data 物件欄位:

欄位型別必填說明
idstringWebinar CF 的 id 欄位
titlestringWebinar CF 的 name 欄位,缺值時返回空字串 ""
datestringWebinar CF 的 date 欄位,格式 yyyy-MM-dd,缺值時返回空字串 ""
card_imagestringWebinar CF 的 card_image 欄位,缺值時返回空字串 ""
tag_liststring[]Webinar CF 的 tag_list 欄位,無值時返回空陣列
product_specsstring[]Webinar CF 的 product_specs 原始 UUID 陣列,無值時返回空陣列
evaluation_boardsstring[]Webinar CF 的 evaluation_boards 原始 UUID 陣列,無值時返回空陣列

邊界情況說明

  1. 缺少 id 參數:返回 400 err_bad_request,訊息為 "Missing required parameter: id"
  2. id 不存在:返回 404 err_not_found,訊息為 "Resource 'Webinar: {id}' does not exist."
  3. 關聯欄位不展開product_specs / evaluation_boards 僅返回 CF 原始 UUID,不返回關聯 CF 的名稱或頁面路徑。
  4. 空欄位:CF 字串/日期欄位無值時返回空字串 "";陣列欄位無值時返回空陣列。

響應資料結構

json · response
{
  "status": 200,
  "success": true,
  "message": "OK",
  "data": {
    "id": "webinar01",
    "title": "Example Webinar",
    "date": "2026-06-12",
    "card_image": "/content/dam/richtek/images/webinar01.png",
    "tag_list": ["Webinar"],
    "product_specs": ["8b87c1f7-0000-4000-8000-000000000001"],
    "evaluation_boards": ["8b87c1f7-0000-4000-8000-000000000002"]
  }
}

附錄 A:資料型別與列舉值 #

A.1 產品狀態 (Status)

Active
正常銷售中
NRND
Not Recommended — 不建議用於新設計
LTB
Last Time Buy — 最後採購期,需顯示截止日期
EOL
End of Life — 已停產

附錄 B:資料流說明 #

根據會議討論,資料在前後端之間的流轉遵循以下原則:

  1. Category 路徑決定顯示內容:使用者從不同 Category 路徑進入同一個 Product Spec 頁面時,後端會根據路徑篩選出需要顯示的 Parameter 欄位。
  2. 欄位排序由陣列順序決定:columns 陣列的順序即為顯示順序,前端直接按陣列索引渲染,無需 order 欄位。
  3. 多值欄位處理:Package 表格中 Product Numbers 可能包含多個產品 ID,以逗號分隔的字串形式返回。
  4. 空值處理:當某些資料不存在時(如無 Footprint、無 3D Model),對應欄位返回空陣列 [],前端顯示為 -