Skip to content

Commit 4f88ac6

Browse files
committed
feat: add endpoint to list user function permissions
1 parent 61f1eb0 commit 4f88ac6

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed

services/web/server/src/simcore_service_webserver/functions/_controller/_functions_rest.py

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
RegisteredFunction,
66
RegisteredFunctionGet,
77
)
8+
from models_library.api_schemas_webserver.users import MyFunctionPermissionsGet
89
from pydantic import TypeAdapter
910
from servicelib.aiohttp import status
1011
from servicelib.aiohttp.requests_validation import (
@@ -100,3 +101,24 @@ async def delete_function(request: web.Request) -> web.Response:
100101
)
101102

102103
return web.json_response(status=status.HTTP_204_NO_CONTENT)
104+
105+
106+
#
107+
# /me/* endpoints
108+
#
109+
110+
111+
@routes.get(f"/{VTAG}/me/function-permissions", name="list_user_functions_permissions")
112+
@login_required
113+
@handle_rest_requests_exceptions
114+
async def list_user_functions_permissions(request: web.Request) -> web.Response:
115+
req_ctx = AuthenticatedRequestContext.model_validate(request)
116+
function_permissions = await _functions_service.get_functions_user_abilities(
117+
app=request.app,
118+
user_id=req_ctx.user_id,
119+
product_name=req_ctx.product_name,
120+
)
121+
122+
return envelope_json_response(
123+
MyFunctionPermissionsGet(write_functions=function_permissions.write_functions)
124+
)

0 commit comments

Comments
 (0)