def build_request_view(
   req_type: str = "block_actions",
   callback_id: str = "change_request_view",
   private_metadata: str = "",
   actions_fixture: dict = {},
   state_fixture: dict = {}
):
   """ Create a change request input based on the action fixture """

   return {
      "type": req_type,
      "user": {
         "id": "user_id",
         "username": "username",
         "name": "user",
         "team_id": "team_id"
      },
      "api_app_id": "api_app_id",
      "token": "token",
      "trigger_id": "trigger_id",
      "team": {
         "id": "team_id",
         "domain": "domain"
      },
      "enterprise": "",
      "is_enterprise_install": bool(False),
      "view": {
         "id": "view_id",
         "team_id": "team_id",
         "type": "modal",
         "blocks": [],
         "private_metadata": private_metadata,
         "callback_id": callback_id,
         "state": {
            "values": state_fixture
         },
         "hash": "hash",
         "title": {
            "type": "plain_text",
            "text": "Switcher Change Request"
         },
         "previous_view_id": "",
         "root_view_id": "root_view_id",
         "app_id": "app_id",
         "external_id": "",
         "app_installed_team_id": "app_installed_team_id",
         "bot_id": "bot_id"
      },
      "actions": [actions_fixture]
   }