api – I am trying to download file from SharePoint through c# code but i am getting this error. ({StatusCode: 400, ReasonPhrase: ‘Bad Request’, )

    public async Task<ActionResult> DownloadFile(string serverFileUrl)
    {
        //var webUrl = "https://sharepoint.com/sites/509847/";

        Uri webUrl = new Uri("https://teamsolgen.sharepoint.com");
        var fileUrl = serverFileUrl;
        var fileName = Path.GetFileName(serverFileUrl);

        ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;

        var actualFileName = $"sites/CallRecordings/{fileName}";
        string passwords = ConfigurationManager.AppSettings("MicrosoftPassword");
        var password = new SecureString();
        string userName = ConfigurationManager.AppSettings("MicrosoftUserName");
        foreach (char c in passwords)
        {
            password.AppendChar(c);
        }
        var accessTokens = EnsureAccessTokenAsync(webUrl, userName, passwords);
        var accessToken = accessTokens.Result.ToString();
        using (var client = new HttpClient())
        {
            client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", accessToken);
            var requestUrl = String.Format("{0}/_api/web/GetFileByServerRelativeUrl('{1}')/$value", webUrl, actualFileName);

            var response = await client.GetAsync(requestUrl, HttpCompletionOption.ResponseHeadersRead);

            var fileContent = response.Content.ReadAsByteArrayAsync().Result;
            return File(fileContent, System.Net.Mime.MediaTypeNames.Application.Octet, fileName);
        }
    }