diff --git a/pkg/api/api.go b/pkg/api/api.go
index 89e231f96af33bbfe1fd2b9da04624a78f9d26c7..ff21d17a58f3d064d6cb86547b00e82164d532fd 100644
--- a/pkg/api/api.go
+++ b/pkg/api/api.go
@@ -115,12 +115,14 @@ func InitServer(cfg *Config) *echo.Echo {
 		return c.HTML(http.StatusOK, help.HelpiOS)
 	})
 
-	agentEndpoints := e.Group("/api/5/agent")
-	agentEndpoints.Use(agentRegistrationMiddleware(cfg.AgentSharedKey))
-	// Limit agent registration requests to 10MB
-	agentEndpoints.Use(middleware.BodyLimit("10M"))
-	agentEndpoints.PUT("/bridge", r.RegisterBridge)
-	agentEndpoints.PUT("/gateway", r.RegisterGateway)
+	if cfg.AgentSharedKey != "" {
+		agentEndpoints := e.Group("/api/5/agent")
+		agentEndpoints.Use(agentRegistrationMiddleware(cfg.AgentSharedKey))
+		// Limit agent registration requests to 10MB
+		agentEndpoints.Use(middleware.BodyLimit("10M"))
+		agentEndpoints.PUT("/bridge", r.RegisterBridge)
+		agentEndpoints.PUT("/gateway", r.RegisterGateway)
+	}
 
 	e.HideBanner = true
 	return e