code: async def handle_action(self, action: str, request_id: str, **kwargs):
          
          try:
              await self.check_permissions(action, **kwargs)
  
              if action not in self.actions:
                  raise MethodNotAllowed(method=action)
  
              content, status = await self.call_view(
                  action=action,
                  **kwargs
              )
  
              await self.reply(
                  action=action,
                  request_id=request_id,
                  data=content,
                  status=status
              )
  
          except Exception as exc:
              await self.handle_exception(
                  exc,
                  action=action,
                  request_id=request_id
              )
docs: run the action.