Chuyển tới nội dung chính

Tổng quan API

Địa chỉ

Môi trườngBase URLDữ liệu
Thật (production)https://hqbm.vn/api/v1dữ liệu thật, cẩn trọng
Thử nghiệmhttps://test.hqbm.vn/api/v1tách biệt, thoải mái thử

Mọi endpoint dưới đây đều nối tiếp vào base URL. Ví dụ POST /Auth/login nghĩa là POST https://hqbm.vn/api/v1/Auth/login.

Quy ước dữ liệu trả về

Hầu hết endpoint trả về JSON theo một khuôn chung:

{
"success": true,
"message": null,
"error": null,
"data": { },
"total": 0
}
TrườngÝ nghĩa
successtrue nếu xử lý thành công. Luôn kiểm tra trường này — nhiều endpoint trả HTTP 200 kèm success: false thay vì trả mã lỗi HTTP.
messageThông báo lỗi bằng tiếng Việt, hiển thị được thẳng cho người dùng.
errorMã lỗi nội bộ (nếu có).
dataDữ liệu chính. Có thể là object, mảng, số hoặc null.
totalTổng số bản ghi khi truy vấn có phân trang.

:::warning Đừng chỉ dựa vào mã HTTP Một số controller bắt lỗi rồi trả Ok(ResultModel.Error(...)), tức là HTTP 200 nhưng success: false. Client phải đọc success chứ không thể chỉ nhìn mã trạng thái HTTP. :::

Một số endpoint phân trang trả thẳng { "data": [...], "total": 123 } không có success — tài liệu từng nhóm sẽ ghi rõ.

Định dạng ngày giờ

Ngày gửi lên và nhận về phần lớn theo dd/MM/yyyy (ví dụ 08/09/2026), không phải ISO. Một số DTO mới hơn trả DateTime dạng ISO 2026-09-08T14:30:00. Khi tích hợp nên kiểm tra thực tế từng endpoint thay vì giả định.

Số tiền và số lượng

  • Tiền tệ: đơn vị đồng, làm tròn về số nguyên (quy định 01/09/2026).
  • Số lượng: cho phép phần thập phân (kg, lít...).

Phân trang

Endpoint có phân trang nhận page (bắt đầu từ 1) và pageSize:

GET /Dashboard/danhSachDonDangGiao?page=1&pageSize=10

Trả về data là mảng của trang hiện tại, total là tổng số bản ghi của toàn bộ kết quả lọc (không phải số phần tử trong trang).