← Tài liệu
OAuth cho ứng dụng
Ứng dụng phục vụ nhiều trại dùng OAuth2 client_credentials: một cặp client_id / client_secret, mỗi trại tự cho phép, token ngắn hạn theo từng trại.
| Khoá API | Ứng dụng OAuth | |
|---|---|---|
| Ai tạo | Chủ trại, cho hệ thống của chính trại | Đối tác, đăng ký một lần cho mọi trại |
| Duyệt | Không cần | Nextfarm duyệt trước khi trại thấy |
| Chứng từ | nfk_… | JWT 15 phút, xin lại khi hết |
| Phạm vi | Người tạo chọn | Ứng dụng xin, trại chọn phần cấp |
1
Đăng ký ứng dụng
Ở trang Đăng ký ứng dụng. Nhận client_id (nfa_…) và client_secret (nfs_…, hiện một lần).
2
Chờ duyệt
Nextfarm xem ứng dụng và phạm vi xin, trả lời qua email. Bị từ chối có ghi lý do.
3
Trại cho phép
Chủ trại vào Quản lý › Ứng dụng, bấm Cho phép và chọn phạm vi. Trại gửi bạn workspace_id (hiện ở màn Ứng dụng của trại).
4
Lấy token và gọi API
Lấy token
curl -X POST https://api-prod.nextfarm.vn/api/v1/iam/oauth/token \
-u "nfa_...:nfs_..." \
-d grant_type=client_credentials \
-d workspace_id=<id trại>Trả về
{ "access_token": "eyJ...", "token_type": "Bearer", "expires_in": 900,
"scope": "iot.telemetry.view gis.parcels.view" }Gọi API
curl https://api-prod.nextfarm.vn/api/v1/iot/devices \
-H "Authorization: Bearer eyJ..."Chi tiết
client_id/client_secretgửi bằng Basic auth hoặc trong thân (form hoặc JSON).scope(tuỳ chọn, cách bằng dấu cách) chỉ để thu hẹp; xin quá phần trại đã cấp là403.- Token sống 15 phút. Hết hạn thì xin token mới — không có refresh token.
- Trại gỡ ứng dụng thì không lấy được token mới; token đang có hết hạn trong tối đa 15 phút.
- Token dùng được cho MCP như khoá API.
- Luật tuyến giống khoá API: không vào quản trị, không điều khiển thiết bị, chỉ ghi ở vài tuyến.
| Mã | Khi nào |
|---|---|
| 401 | client_id/client_secret sai, hoặc ứng dụng chưa duyệt / bị đình chỉ (cùng một lỗi). |
| 403 | Trại chưa cho phép hoặc đã gỡ; scope vượt phần trại cấp. |
| 400 | Thiếu grant_type=client_credentials, client_id, client_secret hoặc workspace_id. |
client_secret chỉ để trên máy chủ của bạn. Không nhúng vào ứng dụng di động hay trang web chạy ở trình duyệt.Luật bảo mật đầy đủ cho đối tác: Bảo mật →