public Task <CreateGuardianEnrollmentTicketResponse> CreateEnrollmentTicketAsync( CreateGuardianEnrollmentTicketRequest request) { return(Connection.PostAsync <CreateGuardianEnrollmentTicketResponse>("guardian/enrollments/ticket", request, null, null, null, null, null)); }
public async Task Can_create_enrollment_ticket() { // Create a connection for creating a user var connection = await _managementApiClient.Connections.CreateAsync(new ConnectionCreateRequest { Name = Guid.NewGuid().ToString("N"), Strategy = "auth0", EnabledClients = new[] { GetVariable("AUTH0_CLIENT_ID"), GetVariable("AUTH0_MANAGEMENT_API_CLIENT_ID") } }); // Create a new user var userCreateRequest = new UserCreateRequest { Connection = connection.Name, Email = $"{Guid.NewGuid():N}@nonexistingdomain.aaa", EmailVerified = true, Password = "******" }; var user = await _managementApiClient.Users.CreateAsync(userCreateRequest); // Create an enrollment request var request = new CreateGuardianEnrollmentTicketRequest { UserId = user.UserId, MustSendMail = false }; var response = await _managementApiClient.Guardian.CreateEnrollmentTicketAsync(request); response.TicketId.Should().NotBeNull(); response.TicketUrl.Should().NotBeNull(); // Clean up after ourselves await _managementApiClient.Users.DeleteAsync(user.UserId); await _managementApiClient.Connections.DeleteAsync(connection.Id); }
/// <summary> /// Generate an email with a link to start the Guardian enrollment process. /// </summary> /// <param name="request"> /// The <see cref="CreateGuardianEnrollmentTicketRequest" /> containing the information about the user who should be enrolled. /// </param> /// <returns>A <see cref="CreateGuardianEnrollmentTicketResponse" /> with the details of the ticket that was created.</returns> public Task <CreateGuardianEnrollmentTicketResponse> CreateEnrollmentTicketAsync(CreateGuardianEnrollmentTicketRequest request) { return(Connection .SendAsync <CreateGuardianEnrollmentTicketResponse>( HttpMethod.Post, BuildUri("guardian/enrollments/ticket"), request, DefaultHeaders)); }