改商户侧属性(昵称、语言)
商户自身
需
x-idempotency-key
只有两个字段可改:nickname 与 notify_lang。传别的键会被忽略;
一个可改字段都没传时回 invalid_request(这是刻意的 ——
一次什么都没改的 200 会让你以为改成功了)。
两个字段都是静默截断而不是报错:昵称截到 60 字符、语言码截到 12。
所以回读一下响应里的值,别假设你发什么就存什么。
邮箱与 external_member_id 不可改。
路径参数
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
id |
string | 必填 | external_member_id 或 mem_<uuid> |
请求头
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
x-idempotency-key |
string | 必填 | UUID v4 |
请求体
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
nickname |
string | 可选 | 展示昵称。超过 60 字符静默截断 |
notify_lang |
string | 可选 | 通知语言码(如 zh-Hans / en)。超过 12 字符静默截断;
我方不校验它是不是一个受支持的语言,认不出时通知按缺省语言发。 |
响应
200已更新,回读整行
{
"id": "mem_9f1c0c8e-6f2a-4c1d-9d0b-2a7e5b3f8c41",
"external_member_id": "u-10086",
"uid": "80031427",
"email": "alice@example.com",
"nickname": "Alice",
"status": "normal",
"kyc_level": 1,
"created_at": "2026-08-12T09:30:00.000Z"
}400
invalid_request body 非 JSON,或一个可改字段都没传404
member_not_found(含「属于别的商户」)409
idempotency_key_reused · idempotency_in_progress请求
curl -X PATCH 'https://api.zise.com/v1/members/{id}' \
-H 'x-auth-token: Bearer $TOKEN' \
-H 'x-idempotency-key: $IDEMPOTENCY_KEY' \
-H 'content-type: application/json' \
-d '{
"nickname": "Alice",
"notify_lang": "zh-Hans"
}'const res = await fetch("https://api.zise.com/v1/members/{id}", {
method: "PATCH",
headers: {
"x-auth-token": "Bearer $TOKEN",
"x-idempotency-key": "$IDEMPOTENCY_KEY",
"content-type": "application/json",
},
body: JSON.stringify({
"nickname": "Alice",
"notify_lang": "zh-Hans"
}),
});
// 金额按字符串读,别让它变成 number
const data = await res.json();import requests
res = requests.patch(
"https://api.zise.com/v1/members/{id}",
headers={
"x-auth-token": "Bearer $TOKEN",
"x-idempotency-key": "$IDEMPOTENCY_KEY",
"content-type": "application/json",
},
json={
"nickname": "Alice",
"notify_lang": "zh-Hans"
},
)
# 金额用 Decimal(str(...)),不要 float
data = res.json()req, _ := http.NewRequest("PATCH", "https://api.zise.com/v1/members/{id}",
strings.NewReader(`{
"nickname": "Alice",
"notify_lang": "zh-Hans"
}`))
req.Header.Set("x-auth-token", "Bearer $TOKEN")
req.Header.Set("x-idempotency-key", "$IDEMPOTENCY_KEY")
req.Header.Set("content-type", "application/json")
res, err := http.DefaultClient.Do(req)
// 金额字段用 string 接,不要 float64HttpRequest req = HttpRequest.newBuilder()
.uri(URI.create("https://api.zise.com/v1/members/{id}"))
.header("x-auth-token", "Bearer $TOKEN")
.header("x-idempotency-key", "$IDEMPOTENCY_KEY")
.header("content-type", "application/json")
.method("PATCH", HttpRequest.BodyPublishers.ofString("""
{
"nickname": "Alice",
"notify_lang": "zh-Hans"
}
"""))
.build();
// 金额字段用 String / BigDecimal,不要 double$ch = curl_init('https://api.zise.com/v1/members/{id}');
curl_setopt_array($ch, [
CURLOPT_CUSTOMREQUEST => 'PATCH',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'x-auth-token: Bearer $TOKEN',
'x-idempotency-key: $IDEMPOTENCY_KEY',
'content-type: application/json',
],
CURLOPT_POSTFIELDS => <<<'JSON'
{
"nickname": "Alice",
"notify_lang": "zh-Hans"
}
JSON,
]);
$res = curl_exec($ch);
// 金额用 bcmath / 字符串,不要 floatval
200
{
"id": "mem_9f1c0c8e-6f2a-4c1d-9d0b-2a7e5b3f8c41",
"external_member_id": "u-10086",
"uid": "80031427",
"email": "alice@example.com",
"nickname": "Alice",
"status": "normal",
"kyc_level": 1,
"created_at": "2026-08-12T09:30:00.000Z"
}