56 lines
1.7 KiB
JavaScript
56 lines
1.7 KiB
JavaScript
const express = require('express');
|
|
const router = express.Router();
|
|
|
|
// Import route modules
|
|
const deviceRoutes = require('./device');
|
|
const userRoutes = require('./user');
|
|
const alertRoutes = require('./alert');
|
|
const dashboardRoutes = require('./dashboard');
|
|
const healthRoutes = require('./health');
|
|
const debugRoutes = require('./debug');
|
|
const detectorsRoutes = require('./detectors');
|
|
const detectionsRoutes = require('./detections');
|
|
const droneTypesRoutes = require('./droneTypes');
|
|
|
|
// API versioning
|
|
router.use('/v1/devices', deviceRoutes);
|
|
router.use('/v1/users', userRoutes);
|
|
router.use('/v1/alerts', alertRoutes);
|
|
router.use('/v1/dashboard', dashboardRoutes);
|
|
router.use('/v1/health', healthRoutes);
|
|
router.use('/v1/detectors', detectorsRoutes);
|
|
router.use('/v1/detections', detectionsRoutes);
|
|
router.use('/v1/drone-types', droneTypesRoutes);
|
|
|
|
// Default routes (no version prefix for backward compatibility)
|
|
router.use('/devices', deviceRoutes);
|
|
router.use('/users', userRoutes);
|
|
router.use('/alerts', alertRoutes);
|
|
router.use('/dashboard', dashboardRoutes);
|
|
router.use('/health', healthRoutes);
|
|
router.use('/debug', debugRoutes);
|
|
router.use('/detectors', detectorsRoutes);
|
|
router.use('/detections', detectionsRoutes);
|
|
router.use('/drone-types', droneTypesRoutes);
|
|
|
|
// API documentation endpoint
|
|
router.get('/', (req, res) => {
|
|
res.json({
|
|
message: 'Drone Detection System API',
|
|
version: '1.0.0',
|
|
endpoints: {
|
|
detections: '/api/detections',
|
|
detectors: '/api/detectors',
|
|
devices: '/api/devices',
|
|
users: '/api/users',
|
|
alerts: '/api/alerts',
|
|
dashboard: '/api/dashboard',
|
|
health: '/api/health',
|
|
'drone-types': '/api/drone-types'
|
|
},
|
|
documentation: '/api/docs'
|
|
});
|
|
});
|
|
|
|
module.exports = router;
|