veza/veza-backend-api/internal/api/routes_developer.go

28 lines
797 B
Go
Raw Normal View History

package api
import (
"github.com/gin-gonic/gin"
"veza-backend-api/internal/handlers"
"veza-backend-api/internal/services"
)
// setupDeveloperRoutes configures developer portal routes (API keys)
func (r *APIRouter) setupDeveloperRoutes(router *gin.RouterGroup) {
if r.config == nil || r.config.AuthMiddleware == nil {
return
}
apiKeyService := services.NewAPIKeyService(r.db.GormDB, r.logger)
apiKeyHandler := handlers.NewAPIKeyHandler(apiKeyService, r.logger)
developer := router.Group("/developer")
developer.Use(r.config.AuthMiddleware.RequireAuth())
r.applyCSRFProtection(developer)
{
apiKeys := developer.Group("/api-keys")
apiKeys.GET("", apiKeyHandler.ListAPIKeys)
apiKeys.POST("", apiKeyHandler.CreateAPIKey)
apiKeys.DELETE("/:id", apiKeyHandler.DeleteAPIKey)
}
}