Sửa khách
contacts.updateMCP:contacts_updateBộ công cụ: Khách hàngChange contact fields: name, phone, gender, birthday, owner, deal value, custom fields.
Quyền: Khách hàng
Gọi bằng REST v2
curl -X POST https://zl.builera.app/api/public/v2/ops/contacts.update \
-H "Authorization: Bearer za_live_…" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{"contactId":"3f2b8c1e-5d4a-4e6b-9c7d-1a2b3c4d5e6f","name":"Nguyễn Văn A"}'Mỗi khoá/kết nối tối đa 300 lệnh đọc và 60 lệnh ghi mỗi phút. Gọi lại cùng Idempotency-Key trả đúng kết quả cũ, không làm lại.
Gọi qua MCP
{
"method": "tools/call",
"params": {
"name": "contacts_update",
"arguments": {
"contactId": "3f2b8c1e-5d4a-4e6b-9c7d-1a2b3c4d5e6f",
"name": "Nguyễn Văn A"
}
}
}Thêm https://zl.builera.app/mcp vào ứng dụng AI rồi cho phép kết nối; AI chỉ thấy công cụ trong bộ bạn chọn.
Kết quả
HTTP 200
{ "status": "succeeded", "operationId": "…", "data": { … } }Ví dụ đầu vào
{
"contactId": "3f2b8c1e-5d4a-4e6b-9c7d-1a2b3c4d5e6f",
"name": "Nguyễn Văn A"
}Thay mã (id) mẫu bằng mã thật lấy từ các thao tác liệt kê/tìm kiếm.
Lược đồ đầu vào (JSON Schema)
{
"type": "object",
"properties": {
"contactId": {
"type": "string",
"format": "uuid"
},
"name": {
"type": "string",
"maxLength": 120
},
"phone": {
"type": "string",
"maxLength": 30,
"nullable": true
},
"gender": {
"type": "string",
"enum": [
"male",
"female",
"other"
],
"nullable": true
},
"birthday": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"nullable": true
},
"ownerId": {
"type": "string",
"format": "uuid",
"nullable": true
},
"dealValue": {
"type": "number",
"minimum": 0,
"maximum": 10000000000000,
"nullable": true
},
"custom": {
"type": "object",
"additionalProperties": {
"anyOf": [
{
"type": "string",
"maxLength": 500
},
{
"type": "number"
},
{
"enum": [
"null"
],
"nullable": true
}
]
}
}
},
"required": [
"contactId"
],
"additionalProperties": false
}