internal async Task InviteUser() { Printer.PrintStepTitle("User Invitation"); Console.Write("Enter an email address to invite:"); string email = Console.ReadLine(); if (email == "-1") { return; } Console.Write("Enter first name:"); string firstName = Console.ReadLine(); Console.Write("Enter last name:"); string lastName = Console.ReadLine(); Console.Write($"Enter role ({string.Join(",", UserRole.Roles)}):"); string role = Console.ReadLine(); var parameters = new UserInviteParameters { EmailAddress = email, FirstName = firstName, LastName = lastName, Role = role }; var invitation = await _apiClient.Users.Invite(parameters); Console.WriteLine($"{firstName} {lastName} has been invited. Following URL is sent in the invitation e-mail"); Console.WriteLine(invitation.Url); }
/// <inheritdoc /> public async Task <UserInvitation> Invite(UserInviteParameters parameters) { var response = await ApiClient.PostAsJsonAsync("users/invitations", parameters); if (response.IsSuccessStatusCode) { return(await response.Content.ReadAsJsonAsync <UserInvitation>()); } throw new ApiException("Users.Invite", response.StatusCode, await response.Content.ReadAsStringAsync()); }