Skip to main content

LMS Endpoint Catalog

Summary

Source-backed Draft reference for LMS Endpoint Catalog across the implemented Training Service and, where applicable, Gateway surface.

Audience

API consumers, engineering, QA, support, architecture, security, product, and implementation reviewers.

Reference Content

Catalog rules

Every mapped LMS-related operation appears exactly once below. R/W is read/write. Tenant values are None, Required (explicit required context), Filtered (tenant global filter/entity scope), or Forwarded (Gateway passes context). Auth records source evidence, not an assurance. Dependency names only public logical service boundaries. All entries remain Draft; T is Transitional and F is Foundation.

#MethodRouteCapabilityOwnerR/WRequestResponseTenantAuthDependencyStatusSource
1GET/Service discoveryNativeRNoneShared service-info envelopeNoneNoneNoneFP
2GET/healthProcess healthNativeRNoneHealth resultNoneNoneNoneFP
3GET/training/health-dataTraining diagnosticsNativeRNoneAnonymous diagnostic projectionFilteredNoneNoneFTE
4GET/training/coursesList coursesNativeRNoneCourseDto collectionFilteredNoneNoneTTE
5POST/training/coursesCreate course/contentNativeWCreateCourseDtoCourseDtoRequiredNoneNoneTTE
6POST/training/courses/{id}/publishPublish courseNativeWPath identifierCourseDtoFilteredNoneNoneTTE
7POST/training/courses/{id}/archiveArchive courseNativeWPath identifierCourseDtoFilteredNoneNoneTTE
8GET/training/import-export/templates/coursesCourse import templateNativeRNoneCSV fileNoneNoneNoneTTE
9POST/training/import-export/coursesImport coursesNativeWCsvImportDtoImportResultDtoRequiredNoneNoneTTE
10GET/training/import-export/courses/exportExport coursesNativeRNoneCSV fileFilteredNoneNoneTTE
11GET/training/import-export/templates/enrollmentsEnrollment import templateNativeRNoneCSV fileNoneNoneNoneTTE
12POST/training/import-export/enrollmentsImport enrollmentsNativeWCsvImportDtoImportResultDtoRequiredNoneNoneTTE
13GET/training/import-export/enrollments/exportExport enrollmentsNativeRNoneCSV fileFilteredNoneNoneTTE
14GET/training/import-export/certificates/exportExport certificatesNativeRNoneCSV fileFilteredNoneNoneTTE
15GET/training/import-export/assessment-results/exportExport assessment resultsNativeRNoneCSV fileFilteredNoneNoneTTE
16GET/training/courses/{id}/materialsList materialsNativeRPath identifierTrainingMaterialDto collectionFilteredNoneNoneTTE
17POST/training/courses/{id}/materialsStore materialNativeWCreateTrainingMaterialDtoTrainingMaterialDtoRequiredNoneDocument ServiceTTE
18GET/training/materials/{id}/downloadDownload materialNativeRPath identifierBinary fileFilteredNoneDocument ServiceTTE
19DELETE/training/materials/{id}Delete material referenceNativeWPath identifierMessage projectionFilteredNoneNoneTTE
20GET/training/learning-pathsList learning pathsNativeRNoneLearningPathDto collectionFilteredNoneNoneTTE
21POST/training/learning-pathsCreate learning pathNativeWCreateLearningPathDtoLearningPathDtoRequiredNoneNoneTTE
22GET/training/enrollmentsList enrollmentsNativeRNoneEnrollmentDto collectionFilteredNoneNoneTTE
23GET/training/enrollments/{id}Enrollment detailNativeRPath identifierEnrollmentDtoFilteredNoneNoneTTE
24POST/training/enrollmentsAssign courseNativeWCreateEnrollmentDtoEnrollmentDtoRequiredNoneNoneTTE
25POST/training/enrollments/{id}/startStart enrollmentNativeWPath identifierEnrollmentDtoFilteredNoneNoneTTE
26POST/training/enrollments/{id}/completeComplete enrollmentNativeWCompleteEnrollmentDto optionalEnrollmentDtoFilteredNoneNoneTTE
27GET/training/assessmentsList assessmentsNativeRNoneAssessmentDto collectionFilteredNoneNoneTTE
28POST/training/assessmentsCreate assessmentNativeWCreateAssessmentDtoAssessmentDtoRequiredNoneNoneTTE
29POST/training/assessments/{id}/attemptsStart attemptNativeWCreateAttemptDtoAttemptDtoFilteredNoneNoneTTE
30POST/training/attempts/{id}/submitSubmit attemptNativeWSubmitAttemptDtoAttemptDtoFilteredNoneNoneTTE
31GET/training/certificatesList certificatesNativeRNoneCertificateDto collectionFilteredNoneNoneTTE
32POST/training/certificates/{id}/issueIssue certificateNativeWIssueCertificateDto optionalCertificateDtoFilteredNoneNoneTTE
33POST/training/certificates/{id}/generate-documentGenerate certificate fileNativeWGenerateCertificateDocumentDto optionalCertificateDtoRequiredNoneDocument ServiceTTE
34GET/training/certificates/{id}/downloadDownload certificate fileNativeRPath identifierBinary fileFilteredNoneDocument ServiceTTE
35GET/training/sessionsList sessionsNativeRNoneSessionDto collectionFilteredNoneNoneTTE
36POST/training/sessionsCreate sessionNativeWCreateSessionDtoSessionDtoRequiredNoneNoneTTE
37POST/training/sessions/{id}/rescheduleReschedule sessionNativeWRescheduleSessionDtoSessionDtoFilteredNoneNoneTTE
38GET/training/reports/dashboardTraining dashboardNativeRNoneAnonymous report compositionFilteredNoneNoneTTE
39GET/training/reports/coursesCourse reportNativeRNoneCourseReportDtoFilteredNoneNoneTTE
40GET/training/reports/enrollmentsEnrollment reportNativeRNoneEnrollmentReportDtoFilteredNoneNoneTTE
41GET/training/reports/assessmentsAssessment reportNativeRNoneAssessmentReportDtoFilteredNoneNoneTTE
42GET/training/reports/certificatesCertificate reportNativeRNoneCertificateReportDtoFilteredNoneNoneTTE
43GET/training/reports/learning-pathsLearning-path reportNativeRNoneLearningPathReportDtoFilteredNoneNoneTTE
44GET/training/reports/managers/{managerId}Subject training summaryNativeRPath integerManagerTrainingReportDtoFilteredNoneNoneTTE
45GET/training/auditAudit evidenceNativeROptional limit queryAudit entity collectionFilteredNoneNoneFTE
46GET/training/timelineTimeline evidenceNativeROptional limit queryTimeline entity collectionFilteredNoneNoneFTE
47GET/training/outboxOutbox diagnosticsNativeROptional limit queryOutbox entity collectionFilteredNoneNoneFTE
48GET/ess/trainingESS training proxyGatewayRRequest contextGateway module resultForwardedGateway middleware; no route policyTraining ServiceTESS
49GET/ess/dashboardESS composed dashboardGatewayRRequest contextAnonymous composed resultForwardedGateway middleware; no route policyTraining and other servicesTESS

Source key

  • Pmicroservices/src/training-service/Program.cs and microservices/src/shared-kernel/Extensions/EndpointRouteBuilderExtensions.cs
  • TEmicroservices/src/training-service/Api/TrainingEndpoints.cs
  • ESSmicroservices/src/gateway-api/EssEndpoints.cs

Verified totals

  • 49 combined mapped operations: 47 native and two Gateway.
  • 31 reads and 18 writes.
  • Two Gateway employee-self-service reads.
  • Eight import/export operations.
  • Seven native report operations.
  • Four direct Document Service operations.
  • Three direct document-transfer operations: one material upload-style request and two binary downloads.
  • Eight file responses: six CSV responses and two binary downloads. The two CSV imports accept text inside JSON rather than multipart files.
  • No endpoint authorization declarations appear in Training routes; no Training route is proven anonymous because authentication is absent rather than explicitly allowing anonymous access.

Source References

  • microservices/src/training-service/Program.cs
  • microservices/src/training-service/Api/TrainingEndpoints.cs
  • microservices/src/gateway-api/EssEndpoints.cs
  • microservices/src/shared-kernel/Extensions/EndpointRouteBuilderExtensions.cs

See Also

Keywords

  • LMS API
  • Training Service
  • Source-backed contract

Revision Information

  • Status: Draft
  • Last reviewed: 2026-07-17
  • Review cycle: Quarterly