Skip to main content

LMS Course Completion API

Summary

Source-backed Draft reference for LMS Course Completion API across the implemented Training Service and, where applicable, Gateway surface.

Audience

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

Reference Content

Confirmed behavior

There is no standalone completion route. Completion is an internal side effect of the enrollment completion action:

  1. the enrollment must be Assigned or InProgress;
  2. the endpoint moves it to Completed;
  3. it inserts completion evidence for the enrollment;
  4. it stages the completion event and records audit/timeline evidence.

Persistence uniqueness prevents more than one completion record per enrollment. The lifecycle check normally prevents a repeated API completion, returning conflict after the first completion.

No completion collection/detail, correction, deletion, or independent reporting route exists. The action does not require a passed assessment and does not directly create or issue a certificate. A Pending certificate is instead created by the assessment pass helper. Learning-path completion roll-up is report-derived and not a persisted/enforced progression workflow.

Tenant behavior follows the filtered enrollment lookup and entity tenant. Actual completion dates, learner references, and results are excluded from this public documentation.

Source References

  • microservices/src/training-service/Api/TrainingEndpoints.cs
  • microservices/src/training-service/Infrastructure/TrainingDbContext.cs
  • microservices/src/training-service/Infrastructure/Persistence.cs

See Also

Keywords

  • LMS API
  • Training Service
  • Source-backed contract

Revision Information

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