批次更新組合商品價格

View as Markdown
批次更新多筆組合商品的牌價與對外售價,逐筆結果互不影響,規則鏡像規格價格的批次端點:price、sellPrice 各自可省略,省略(null)保留現有值,不會被歸零;兩者若有帶值,必須介於 0 到 9999999.99,超出範圍該筆失敗並帶 invalid_price。bundleId 必填,是商品序號,不是規格序號——伺服器會解析成該商品配對的組合品規格;指向不存在、屬於其他租戶,或一般商品的 bundleId,該筆失敗並帶 not_found。⚠️ 逐筆狀態一律是 updated,不會是 created:價格是既有規格上的欄位,這支端點只會更新既有的組合商品,不會建立新的。送出空陣列或沒有 body 會在受理前被拒絕,回傳 400 empty_batch;已受理的請求一律回傳 HTTP 200,逐筆的處理結果放在回應 body 的 items 裡(見 BatchUpsertResult / BatchItemResult),單筆失敗不會讓其他筆一起失敗。

Authentication

X-Signaturestring

每個 /v1 請求都必須帶 X-Client-Id、X-Timestamp、X-Nonce 與 X-Signature 四個標頭。X-Signature 是以 client secret 對 canonical string 做 HMAC-SHA256 後的 Base64。canonical string 的組成、可複製的簽章範例與 401 排查步驟,請參閱「驗證與簽章」。

Request

This endpoint expects a list of objects.
bundleIdlongOptional

要更新價格的組合商品序號,是商品序號、不是規格序號,伺服器會解析成該商品配對的組合品規格。必填;指向不存在、屬於其他租戶,或一般商品時,這一筆會在逐筆結果中回報 failed,不影響其他筆。

pricedouble or nullOptional

牌價。省略(null)保留現值;若有帶值,必須介於 0 到 9999999.99 之間,超出範圍該筆失敗並帶 invalid_price。

sellPricedouble or nullOptional

對外售價。省略(null)保留現值;範圍規則與 price 相同。

Response

OK
itemslist of objects or nullOptional

逐筆的處理結果,順序與送出的陣列相同,一筆對一筆。

Errors

400
Bad Request Error
401
Unauthorized Error
403
Forbidden Error
500
Internal Server Error