public ActionResult <string> CreateClient([Required, FromBody] AltSourceNewClientDto input) { AccountsLib.Client newClient; try { UserInputValidation.ValidateUsername(input.Username); UserInputValidation.ValidateName(input.FirstName); UserInputValidation.ValidateName(input.LastName); var userInfo = User.GetUserInfo(); var username = userInfo.AccountsUsername; using (var session = Logic.Login(Repository, username)) { newClient = Logic.CreateClient(session, input.Username, input.FirstName, input.LastName); } } catch (AccountsLibException ex) { return(new ActionFailureResult(new ApiResponse(500, ex.Message))); } return(newClient?.ClientId); }
public async Task <string> CreateClient(string username, string firstName, string lastName) { UserInputValidation.ValidateUsername(username); UserInputValidation.ValidateName(firstName); UserInputValidation.ValidateName(lastName); var newClient = new AltSourceNewClientDto(username, firstName, lastName); var jsonNewUser = JsonConvert.SerializeObject(newClient); var content = new StringContent(jsonNewUser, Encoding.UTF8, "application/json"); var response = await this.InvokeApiAsync(Post, @"api/admin/create/client", content); var newClientId = await response.TryGetResponseContent(); return(newClientId); }