MCPcopy Create free account
hub / github.com/Flagsmith/flagsmith / detailed_permissions

Method detailed_permissions

api/projects/views.py:154–171  ·  view source on GitHub ↗
(self, request: Request, pk: str, user_id: str)

Source from the content-addressed store, hash-verified

152 url_name="user-detailed-permissions",
153 )
154 def detailed_permissions(self, request: Request, pk: str, user_id: str) -> Response:
155 project = self.get_object()
156 user = request.user
157 user_id_int = int(user_id)
158
159 if request.user.id != user_id_int:
160 if not request.user.is_project_admin(project): # type: ignore[union-attr]
161 # Only project admin can get permissions of other users
162 raise PermissionDenied()
163
164 user = get_object_or_404(FFAdminUser, id=user_id_int)
165
166 permission_data = get_project_permission_data(project, user) # type: ignore[arg-type]
167
168 serializer = UserDetailedPermissionsSerializer(
169 permission_data.to_detailed_permissions_data()
170 )
171 return Response(serializer.data)
172
173 @extend_schema(responses={200: UserObjectPermissionsSerializer})
174 @action(

Callers

nothing calls this directly

Calls 5

get_objectMethod · 0.45
is_project_adminMethod · 0.45

Tested by

no test coverage detected