API JSON-2
Gọi mọi phương thức công khai của mọi đối tượng: tìm, đọc, tạo, sửa, xoá
Yêu cầu
POST https://congty.solidsuite.vn/json/2/<đối tượng>/<phương thức>
Authorization: bearer <khoá API>
Content-Type: application/json
{ "ids": [...], "context": {...}, ...tham số của phương thức }
<đối tượng>: tên kỹ thuật, vd.res.partner(liên hệ),crm.lead(cơ hội),sale.order(đơn bán),hr.employee(nhân viên),account.move(hoá đơn).ids: bản ghi cần thao tác (vớiread,write,unlink...).context: tuỳ chọn, vd.{"lang": "vi_VN"}để nhận nhãn tiếng Việt.- Kết quả là JSON; bản ghi trả về dạng danh sách id.
Tìm và đọc
curl -X POST https://congty.solidsuite.vn/json/2/res.partner/search_read \
-H "Authorization: bearer $SOLIDSUITE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"domain": [["is_company", "=", true], ["city", "ilike", "Hồ Chí Minh"]],
"fields": ["name", "email", "phone"], "limit": 20, "order": "name"}'
domain là danh sách điều kiện [trường, toán tử, giá trị]; toán tử thường dùng: =, !=,
>, <, in, ilike (chứa, không phân biệt hoa thường).
Tạo và sửa
import os, requests
BASE = "https://congty.solidsuite.vn/json/2"
HEADERS = {"Authorization": f"bearer {os.environ['SOLIDSUITE_API_KEY']}"}
def call(model, method, **params):
r = requests.post(f"{BASE}/{model}/{method}", json=params, headers=HEADERS, timeout=30)
r.raise_for_status()
return r.json()
# Tạo cơ hội mới, trả về danh sách id
[lead_id] = call("crm.lead", "create", vals_list=[{
"name": "Khách quan tâm căn 2PN",
"contact_name": "Trần Thị B",
"phone": "0901234567",
}])
# Sửa
call("crm.lead", "write", ids=[lead_id], vals={"expected_revenue": 3500000000})
Xem trường và phương thức
Đăng nhập hệ thống của công ty rồi mở https://congty.solidsuite.vn/doc: danh sách đối tượng, trường, phương thức kèm
ví dụ, theo đúng phân hệ công ty đang dùng và quyền của bạn. Hoặc gọi fields_get:
curl -X POST https://congty.solidsuite.vn/json/2/crm.lead/fields_get \
-H "Authorization: bearer $SOLIDSUITE_API_KEY" -H "Content-Type: application/json" \
-d '{"attributes": ["string", "type", "required"]}'
Mã lỗi
| HTTP | Ý nghĩa |
|---|---|
| 401 | Thiếu / sai khoá API, khoá hết hạn, hoặc công ty đang bị khoá. |
| 403 | Người dùng không có quyền với đối tượng / bản ghi này. |
| 404 | Sai tên đối tượng / phương thức (hoặc phân hệ chưa được bật). |
| 422 | Tham số không khớp với phương thức. |