3.2. Danh sách Web API Chính (Server-Side)
Đây là các endpoint chủ lực trên máy chủ, sử dụng JSON làm phương tiện trao đổi (application/json hoặc multipart/form-data). Hệ thống yêu cầu Token Authentication (JWT/OAuth2) cho hầu hết các API nghiệp vụ.
1. Nhóm API Xác thực & Cấp quyền
POST /api/sign/request-otp: Yêu cầu tạo mã OTP qua hệ thống. Dùng cho luồng bảo mật bước 2 trước khi áp con dấu cá nhân vào văn bản quan trọng.POST /api/auth/login: Đăng nhập lấy Bearer Token phục vụ việc gọi các API quản lý và ký số tiếp theo.
2. Nhóm API Ký số Cơ bản
POST /api/sign(Controller:SigningController):- API chính để ký dữ liệu tập trung (Dùng chứng thư máy chủ hoặc khai báo định danh).
- Input: Hỗ trợ Upload File qua
@RequestParam(đã được fix bỏ@RequestPartđể tránh lỗi boundary parser). Cung cấp mảng Metadata để chỉ định vị trí chèn ảnhVisual Signaturelên bề mặt file. - Xử lý: Tư động cấu hình EJBCA -> Convert Word/Excel sang PDF (nếu cần) -> Hash -> Gọi EJBCA -> Apply PDFBox Visuals.
POST /api/sign/visual-only(Dự án:/sign-visual-only):- API hỗ trợ đóng hình ảnh lên tài liệu nhanh (Chỉ xử lý Convert & thêm ảnh/con dấu).
- LƯU Ý: Không dùng mã hóa Cryptography chứng thư PKCS#7 qua đường này (nhanh và ứng dụng cho thư mời, thông báo phê duyệt nháy).
3. Nhóm API Quản trị & Audit Log
GET /api/admin/audit-logs(Controller:AuditLogAdminController): Lấy danh sách vết giao dịch ký của toàn bộ hệ thống dưới dạng phân trang (Pagination).POST /api/admin/sys-diagnostic(Controller:EmailDiagnosticController): Gửi cảnh báo SMS/Email kiểm tra tình trạng kết nối.