public async Task <IActionResult> BlockUser(string pageId, string blockId) { if (String.IsNullOrEmpty(pageId) || String.IsNullOrEmpty(blockId)) { return(BadRequest()); } try { object username = String.Empty; if (!HttpContext.Items.TryGetValue("username", out username)) { return(BadRequest()); } var accountFilter = Builders <AccountModel> .Filter.Eq("Username", username) & Builders <AccountModel> .Filter.ElemMatch(e => e.PageTokens, Builders <PageTokenModel> .Filter.Eq("ProfileId", pageId)); var account = _accountService.FindAsync(() => accountFilter).Result.FirstOrDefault(); var token = account.PageTokens[0].AccessToken; bool isSuccess = await _facebookService.BlockUser(blockId, token); return(Ok(new { isSuccess })); } catch (Exception ex) { return(StatusCode(StatusCodes.Status500InternalServerError)); } }