@@ -12,7 +12,16 @@ import attachmentRoutes from "./routes/attachments";
1212import templatesRoutes from "./routes/templates" ;
1313import aiRoutes from "./routes/ai" ;
1414import { requireAuth } from "./middleware/auth" ;
15- import { healthCheckLimiter , staticFileLimiter , aiLimiter } from "./middleware/rateLimiters" ;
15+ import {
16+ healthCheckLimiter ,
17+ staticFileLimiter ,
18+ aiLimiter ,
19+ readLimiter ,
20+ fileOperationLimiter ,
21+ searchLimiter ,
22+ fileTransferLimiter ,
23+ authLimiter ,
24+ } from "./middleware/rateLimiters" ;
1625import { GitService } from "./services/gitService" ;
1726import { DATA_DIR as DEFAULT_DATA_DIR , FileSystemService } from "./services/fileSystem" ;
1827
@@ -252,12 +261,12 @@ app.get("/api", (req: Request, res: Response) => {
252261} ) ;
253262
254263// Routes
255- app . use ( "/api/auth" , authRoutes ) ; // Auth routes (public)
256- app . use ( "/api/folders" , requireAuth , folderRoutes ) ; // Protected
257- app . use ( "/api/pages" , requireAuth , pageRoutes ) ; // Protected
258- app . use ( "/api/templates" , requireAuth , templatesRoutes ) ; // Protected
259- app . use ( "/api/search" , requireAuth , searchRoutes ) ; // Protected
260- app . use ( "/api/attachments" , requireAuth , attachmentRoutes ) ; // Protected
264+ app . use ( "/api/auth" , authLimiter , authRoutes ) ; // Auth routes (public, rate limited )
265+ app . use ( "/api/folders" , requireAuth , fileOperationLimiter , folderRoutes ) ; // Protected
266+ app . use ( "/api/pages" , requireAuth , fileOperationLimiter , pageRoutes ) ; // Protected
267+ app . use ( "/api/templates" , requireAuth , readLimiter , templatesRoutes ) ; // Protected
268+ app . use ( "/api/search" , requireAuth , searchLimiter , searchRoutes ) ; // Protected
269+ app . use ( "/api/attachments" , requireAuth , fileTransferLimiter , attachmentRoutes ) ; // Protected
261270app . use ( "/api/ai" , requireAuth , aiLimiter , aiRoutes ) ; // Protected - AI chat
262271
263272// Health check
0 commit comments