freeleaps-service-hub/apps/authentication/webapi/routes/permission/delete_permission.py

23 lines
766 B
Python

from fastapi import APIRouter
from pydantic import BaseModel
from backend.services.permission.permission_service import PermissionService
router = APIRouter()
permission_service = PermissionService()
class DeletePermissionRequest(BaseModel):
permission_id: str
class DeletePermissionResponse(BaseModel):
success: bool
@router.post(
"/delete",
response_model=DeletePermissionResponse,
operation_id="delete-permission",
summary="Delete Permission",
description="Delete a permission after checking if it is referenced by any role."
)
async def delete_permission(req: DeletePermissionRequest) -> DeletePermissionResponse:
await permission_service.delete_permission(req.permission_id)
return DeletePermissionResponse(success=True)