API key và scope
Mỗi khoá thuộc một trang trại và chỉ làm được đúng phần đã chọn. Người tạo khoá chỉ cấp được scope mà chính họ đang có. Tạo và thu hồi ở Hệ thống › API key.
Gửi khoá
Một trong hai header (gateway nhận cả hai):
Authorization: Bearer nfk_...
X-Api-Key: nfk_...const res = await fetch("https://api-prod.nextfarm.vn/api/v1/iot/devices?status=offline", {
headers: { Authorization: `Bearer ${process.env.NEXTFARM_API_KEY}` },
});
const { items } = await res.json();Scope
Bản đồ & mùa vụ
| Scope | Cho phép |
|---|---|
gis.parcels.view | Xem thửa và mùa vụ |
gis.zones.view | Xem vùng |
gis.farmers.view | Xem nông dân |
gis.crop-types.view | Xem loại cây trồng |
gis.facilities.view | Xem công trình |
gis.layers.view | Xem lớp bản đồ |
IoT (chỉ đọc)
| Scope | Cho phép |
|---|---|
iot.devices.view | Xem thiết bị |
iot.telemetry.view | Xem số đo cảm biến |
iot.telemetry.export | Xuất số đo cảm biến |
iot.alerts.view | Xem cảnh báo |
Thu hoạch & truy xuất
| Scope | Cho phép |
|---|---|
harvest.harvest.view | Xem lô thu hoạch |
harvest.harvest.create | Tạo lô thu hoạch (ghi) |
harvest.qr-codes.view | Xem tem QR |
harvest.trace.view | Xem truy xuất nguồn gốc |
harvest.certification.view | Xem chứng nhận |
harvest.market-prices.view | Xem giá thị trường |
Sổ nông trại & công việc
| Scope | Cho phép |
|---|---|
office.base.record.view | Xem dữ liệu sổ |
office.base.record.manage | Thêm, sửa dòng sổ (ghi) |
office.task.view | Xem công việc |
office.calendar.view | Xem lịch |
office.automation.view | Xem luật tự động hoá |
Báo cáo
| Scope | Cho phép |
|---|---|
report.view | Xem báo cáo |
report.export | Xuất báo cáo |
Giới hạn an toàn
- Khoá chỉ đọc, trừ: tạo/sửa lô thu hoạch, thêm/sửa dòng sổ nông trại. Không xoá được gì.
- Không vào được quản trị người dùng, nhóm quyền, hay tạo khoá khác.
- Thu hồi có hiệu lực ngay; khoá có thể đặt hạn (30 ngày, 90 ngày, 1 năm) hoặc không hết hạn.
n8n / Make
Dùng node HTTP Request (n8n) hoặc HTTP › Make a request (Make): method + URL lấy ở tham chiếu API, header Authorization: Bearer nfk_… (cất key vào Credentials, đừng dán thẳng vào node). Nhận webhook: lấy URL của node Webhook khai ở Hệ thống › Webhook, verify signature bằng node Code.
Method: GET
URL: https://api-prod.nextfarm.vn/api/v1/gis/parcels?page_size=50
Authentication: Generic Credential Type › Header Auth
Name: Authorization
Value: Bearer nfk_…Error code
| Mã | Ý nghĩa |
|---|---|
401 | Khoá sai, hết hạn hoặc đã bị thu hồi. |
403 | Khoá thiếu scope, hoặc tuyến không cho API key (chi tiết ở trường detail). |
404 | Không tìm thấy dữ liệu. |
422 | Dữ liệu gửi lên không hợp lệ (trường errors liệt kê từng lỗi). |
429 | Gọi quá nhanh — đọc Retry-After rồi retry. |
Mốc thời gian trả về theo UTC (ISO 8601). Danh sách có pagination qua page, page_size. Thân JSON gửi lên và trả về đều dùng snake_case (vd parcel_id) — khoá camelCase trong thân bị bỏ qua.
Luật bảo mật đầy đủ cho đối tác: Bảo mật →