Files
bookhoard/internal/router/device.go
T
john-okeefe 81fbcfac11 feat: add RegenerateDeviceToken API endpoint
- Add handler to regenerate device auth tokens
- Add PUT /api/devices/:id/regenerate-token route
- Returns new token and sync URLs for device configuration
2026-02-13 12:12:28 -05:00

30 lines
1.0 KiB
Go

package router
func registerDeviceRoutes(cfg *Config) {
e := cfg.Echo
// JWT middleware
jwtMiddleware := createJWTMiddleware(cfg)
// Protected routes
protected := e.Group("/api", jwtMiddleware)
devices := protected.Group("/devices")
// Public device registration routes (no auth required)
e.POST("/api/devices/register", cfg.DeviceHandler.InitiateRegistration)
e.POST("/api/devices/register/status", cfg.DeviceHandler.CheckRegistrationStatus)
// Device management routes (protected)
devices.GET("", cfg.DeviceHandler.ListDevices)
devices.GET("/:id", cfg.DeviceHandler.GetDevice)
devices.PUT("/:id", cfg.DeviceHandler.UpdateDevice)
devices.DELETE("/:id", cfg.DeviceHandler.DeleteDevice)
// Token regeneration endpoint (JWT authentication required)
devices.PUT("/:id/regenerate-token", cfg.DeviceHandler.RegenerateDeviceToken)
devices.GET("/pending", cfg.DeviceHandler.ListPendingRegistrations)
devices.GET("/approve/:registration_id", cfg.DeviceHandler.ApproveDevice)
devices.POST("/reject/:registration_id", cfg.DeviceHandler.RejectDevice)
}