Skip to content

Hướng dẫn Tích hợp & REST API v1

InfraMap GIS cung cấp bộ giao diện lập trình ứng dụng RESTful API chuẩn OpenAPI/Swagger giúp các hệ thống bên thứ ba (ERP, CRM, Cổng thông tin điện tử) tích hợp dữ liệu bản đồ.


1. Xác thực & Phân quyền (Authentication)

Mọi yêu cầu API (ngoại trừ các endpoint công khai như xem bản đồ chia sẻ) đều yêu cầu đính kèm JSON Web Token (JWT) trong HTTP Header:

http
Authorization: Bearer <your_access_token>

Đăng nhập lấy Token:

bash
curl -X POST "http://localhost:8000/api/v1/auth/login" \
  -H "Content-Type: application/json" \
  -d '{"username": "admin", "password": "your_password"}'

2. Các nhóm Endpoint Cốt lõi

A. Quản lý Dự án & Lớp bản đồ

  • GET /api/v1/projects: Lấy danh sách các dự án người dùng có quyền truy cập.
  • GET /api/v1/projects/{project_id}/layers: Danh sách toàn bộ các lớp bản đồ trong dự án.
  • GET /api/v1/layers/{layer_id}/features?bbox=minx,miny,maxx,maxy: Truy vấn đối tượng hình học GeoJSON theo phạm vi quan sát.
  • PATCH /api/v1/layers/{layer_id}/style: Cập nhật cấu hình màu sắc, nét viền và độ mờ của lớp.

B. Nhập liệu & Hàng đợi xử lý ngầm (Imports)

  • POST /api/v1/imports?project_id={id}: Tải lên tệp GIS (multipart/form-data). Trả về mã job_id.
  • GET /api/v1/imports/{job_id}: Kiểm tra trạng thái tiến trình xử lý ngầm (queued, processing, completed, failed).

C. Dịch vụ Bản đồ Tiles (XYZ / WMTS)

  • GET /api/v1/tiles/{layer_id}/{z}/{x}/{y}.png: Tải các mảnh bản đồ ảnh vệ tinh / DEM được render sẵn theo chuẩn Google XYZ Tile.
  • Dễ dàng nhúng vào các thư viện Leaflet, OpenLayers, Mapbox GL JS, hoặc QGIS Desktop.

D. Nghiệp vụ GPMB (Clearance API)

  • GET /api/v1/clearance/projects/{project_id}/parcels: Danh sách toàn bộ các thửa đất bị thu hồi.
  • POST /api/v1/clearance/parcels/{id}/assets: Thêm tài sản kiểm đếm trên đất.
  • POST /api/v1/clearance/projects/{project_id}/apply-pricing: Chạy thuật toán tự động áp giá hàng loạt cho toàn bộ dự án.

Hệ thống Quản lý và Khai thác Dữ liệu Không gian InfraMap GIS.