[HttpPost("imports")]
[ProducesResponseType<string>(200)]
[EndpointName("createImport")]
public Task<ActionResult<string>> CreateImportAsync(string courseSlug, bool mayCreateNewVersion, string callbackUrl, string uploadedContentType, string contentMetadata)
[HttpGet("courses/{courseSlug}")]
[ProducesResponseType<Course>(200, "application/json", new string[] { })]
[ProducesResponseType(404)]
[EndpointName("getCourse")]
public ActionResult<Course> GetCourse(string courseSlug)
[HttpGet("courses")]
[ProducesResponseType<Course[]>(200, "application/json", new string[] { })]
[EndpointName("getCourses")]
public ActionResult<Course[]> GetCourses()
[HttpGet("imports/{importSlug}")]
[ProducesResponseType<CourseImport>(200, "application/json", new string[] { })]
[EndpointName("getImportStatus")]
public ActionResult<CourseImport> GetImportStatus(string importSlug)
[HttpGet("courses/{courseSlug}/learners/{learnerId}/registration")]
[ProducesResponseType<string>(200)]
[EndpointName("getRegistrationId")]
public ActionResult<string> GetRegistrationId(string courseSlug, Guid learnerId)
[HttpGet("registrations/{registrationId}/progress")]
[ProducesResponseType<RegistrationProgress>(200, "application/json", new string[] { })]
[EndpointName("getRegistrationInstanceProgress")]
public ActionResult<RegistrationProgress> GetRegistrationInstanceProgress(Guid registrationId)
[HttpGet("registrations/{registrationId}/launch-url")]
[ProducesResponseType<string>(200)]
[EndpointName("getRegistrationLaunchUrl")]
public ActionResult<string> GetRegistrationLaunchUrl(Guid registrationId, string courseSlug, bool preview, string callbackUrl, string exitUrl)
[HttpGet("registrations")]
[ProducesResponseType<Registration[]>(200, "application/json", new string[] { })]
[EndpointName("getRegistrations")]
public ActionResult<Registration[]> GetRegistrations(string? course = null, string? more = null)