← Tài liệu

Khoá API và phạm vi

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 phạm vi mà chính họ đang có. Tạo và thu hồi ở Quản lý › Khoá API.

Gửi khoá

Một trong hai header (gateway nhận cả hai):

Lệnh mẫu
Authorization: Bearer nfk_...
X-Api-Key: nfk_...
Node.js
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();

Phạm vi

Bản đồ & mùa vụ

Phạm viCho phép
gis.parcels.viewXem thửa và mùa vụ
gis.zones.viewXem vùng
gis.farmers.viewXem nông dân
gis.crop-types.viewXem loại cây trồng
gis.facilities.viewXem công trình
gis.layers.viewXem lớp bản đồ

IoT (chỉ đọc)

Phạm viCho phép
iot.devices.viewXem thiết bị
iot.telemetry.viewXem số đo cảm biến
iot.telemetry.exportXuất số đo cảm biến
iot.alerts.viewXem cảnh báo

Thu hoạch & truy xuất

Phạm viCho phép
farm-harvest.harvest.viewXem lô thu hoạch
farm-harvest.harvest.createTạo lô thu hoạch (ghi)
farm-harvest.qr-codes.viewXem tem QR
farm-harvest.trace.viewXem truy xuất nguồn gốc
farm-harvest.certification.viewXem chứng nhận
farm-harvest.market-prices.viewXem giá thị trường

Sổ nông trại & công việc

Phạm viCho phép
office.base.record.viewXem dữ liệu sổ
office.base.record.manageThêm, sửa dòng sổ (ghi)
office.task.viewXem công việc
office.calendar.viewXem lịch

Báo cáo

Phạm viCho phép
report.viewXem báo cáo
report.exportXuất báo cáo

Giới hạn an toàn

Khoá API, webhook và MCP không bao giờ điều khiển thiết bị — không có phạm vi nào cho bật/tắt, cấu hình thiết bị, và gateway chặn mọi tuyến ghi của IoT với khoá.

Mã lỗi

MãÝ nghĩa
401Khoá sai, hết hạn hoặc đã bị thu hồi.
403Khoá thiếu phạm vi, hoặc tuyến không cho khoá API (chi tiết ở trường detail).
404Không tìm thấy dữ liệu.
422Dữ liệu gửi lên không hợp lệ (trường errors liệt kê từng lỗi).
429Gọi quá nhanh — đọc Retry-After rồi thử lại.

Mốc thời gian trả về theo UTC (ISO 8601). Danh sách phân trang bằng 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 →