更新客戶
更新客戶
依 id 更新客戶。路徑上的 id 永遠優先於 body 帶的 id,即使 body 另外指定了別的 id 也一律以路徑為準,避免呼叫端不小心把更新導向另一筆客戶。更新是部分合併,只送有異動的欄位;省略的欄位維持原值,不會被清空。id 不存在或屬於其他租戶時回傳 404。
Authentication
每個 /v1 請求都必須帶 X-Client-Id、X-Timestamp、X-Nonce 與 X-Signature 四個標頭。X-Signature 是以 client secret 對 canonical string 做 HMAC-SHA256 後的 Base64。canonical string 的組成、可複製的簽章範例與 401 排查步驟,請參閱「驗證與簽章」。
Path parameters
要更新的客戶序號。這個值永遠優先於 body 裡的 id,兩者不一致時一律以路徑為準。不存在或屬於其他租戶時,回傳 404;error 是該資源的簡短說明,而非 not_found。
Request
客戶序號。帶 id 時一律視為更新該筆客戶,不會再比對 outerSysCode;省略時改依 outerSysCode 判斷新增或更新。PUT /v1/customers/{id} 會忽略這裡的值,一律以路徑上的 id 為準。
ERP 端的客戶代碼,用來與既有客戶比對、去重。新增時省略視為空字串;更新時省略保留現有值。長度上限 50 字元,超過回傳 400 outer_sys_code_too_long。
企業名稱。新增時省略視為空字串;更新時省略保留現有值。長度上限 50 字元,超過回傳 400 name_too_long。
企業簡稱。新增時省略視為空字串;更新時省略保留現有值。長度上限 20 字元,超過回傳 400 short_name_too_long。
公司電話。新增時省略視為空字串;更新時省略保留現有值。長度上限 20 字元,超過回傳 400 cell_phone_too_long。
收貨地址。新增時省略視為空字串;更新時省略保留現有值。長度上限 50 字元,超過回傳 400 shipping_address_too_long。
負責業務(內部使用者)的序號,選填。新增時省略會套用貴租戶設定的預設業務;若租戶未設定預設業務,新增會失敗。更新時省略保留現有值。
Response
新增或更新成功後,該筆資料的 id。