分頁查詢商品清單,用於遺失 id 對照,或商品是在後台先建立時,重新在 API 端找回既有商品。本端點只回傳一般商品,組合商品一律不會出現在結果中,也不計入 totalCount。
可用下列參數篩選:
- `outerSysCode`、`name`:大小寫不敏感的子字串比對,查 A100 也會比對到 A1000
- `status`:接受 Active、Inactive 或 InactiveVisible 三種值中的任一種,完全比對,大小寫必須完全相符——帶 active 會回傳 HTTP 200 但 data 是空陣列。三種狀態的完整語意見本頁 Response 裡 `status` 欄位的說明
- `productCategoryId`:篩分類
- `updatedSince`:篩「異動時間等於或晚於此刻」的資料,邊界含在內,剛好等於這一刻的資料也會被回傳,須帶明確時區或 Z(例如 2026-07-01T00:00:00Z),網址中的 + 記得轉成 %2B 編碼
`page` 從 1 起算,`pageSize` 為 1–100(預設 100),超出範圍一律回 400。
Query parameters
outerSysCodestringOptional
依 ERP 端的商品代碼篩選。大小寫不敏感的子字串比對,查 A100 也會一併比對到 A1000;要精確命中某一筆,請在你端再比對一次完整字串。
namestringOptional
依商品名稱篩選。大小寫不敏感的子字串比對,規則與 outerSysCode 相同。
statusstringOptional
依商品狀態篩選,接受 Active、Inactive 或 InactiveVisible。這是完全比對,而且大小寫必須與這裡列出的完全相符——帶 active 不會命中任何資料,會回傳 HTTP 200 但 data 是空陣列,不是錯誤。三種狀態的完整語意見本頁 Response 裡 `status` 欄位的說明。
productCategoryIdlongOptional
依商品分類序號篩選,只回傳歸類在這個分類的商品。必須是可指派的(子)分類 id;帶入根分類會回傳空結果。合法的序號可由 GET /v1/product-categories 的 isAssignable: true 項目取得。
updatedSincestringOptional
只回傳異動時間等於或晚於此刻的商品,用於增量同步;邊界含在內,剛好等於這一刻的資料也會被回傳。
必須是 ISO-8601 格式,並帶明確的時區位移或 Z(例如 2026-07-01T00:00:00Z);沒有時區資訊會回傳 400 invalid_updated_since,不會被猜成任何時區。放進網址時記得把 + 編碼成 %2B。
pageintegerOptional
頁碼,從 1 起算,省略時預設 1。小於 1 回傳 400 invalid_page;頁碼大到讓內部位移量溢位時同樣回傳 400 invalid_page。
pageSizeintegerOptional
每頁筆數,範圍 1 至 100,省略時預設 100。超出範圍一律回傳 400 invalid_page_size,不會自動夾限成合法值,避免分批掃描時誤判為已經抓完全部資料。
Response
OK
datalist of objects or nullOptional
本頁的商品資料,每一筆為一筆商品資料,形狀與「查詢單一商品」的回應相同。
totalCountintegerOptional
符合篩選條件的商品總數,涵蓋所有頁,不受目前頁碼影響。
currentPageintegerOptional
pageSizeintegerOptional
目前頁面的筆數上限,即請求帶入的 pageSize。
totalPagesintegerOptional
總頁數,等於 totalCount 除以 pageSize 後無條件進位;沒有符合的資料時為 0。