diff --git a/router.py b/router.py
index d06fa8701ad31d676dc33fae6d2a2548f2be1b81..4bb6d08e659eca837c583886509bd983f47e4706 100644
--- a/router.py
+++ b/router.py
@@ -52,6 +52,7 @@ def plugin_add_endpoint(endpoint_id: str, handler, permission_name: str, method=
         # add to menu
         if not menutext == None:
             public_service_menu.append((menutext, endpoint_id))
+            authorized_service_menu.append((menutext, endpoint_id, None))
     else:
         # Authorized endpoint
         # add endpoint
diff --git a/services.py b/services.py
index 2d19bf4d5fdbd52391603f66fbb8588e128e57d0..076d2d6efba1adebce8b4e58c66bc6bf69d88982 100644
--- a/services.py
+++ b/services.py
@@ -11,8 +11,12 @@ def get_service_menus(username: str, public_service_menu: dict, authorized_servi
     x = db.users.find_one(filter={'username': username})
     if x is None:
         return ret
-    for service_name in x['services']:
-        for (text, service, permission_name) in authorized_service_menu:
+    for (text, service, permission_name) in authorized_service_menu:
+        if permission_name == None:
+            # public menu, should include here as well
+            ret[text] = service
+            continue
+        for service_name in x['services']:
             if permission_name == service_name:
                 ret[text] = service
     return ret