Skip to content

Learning APIs

Why This Exists

This document defines API responsibilities for the Learning Domain. It does not define final OpenAPI specifications.

Owner

The owner is the Chief Product Officer and Enterprise Architect.

Business Value

API boundaries make Learning usable by the Academy interface, Digital Professionals, adjacent domains, analytics, notifications, and future workflow automation.

API Groups

API group Responsibilities Example endpoints
Course Catalog API Browse and manage courses, modules, lessons, quizzes, and exercises. GET /learning/courses, POST /learning/courses, GET /learning/courses/{courseId}
Learning Path API Create and retrieve guided learning paths. GET /learning/paths, POST /learning/paths, GET /learning/paths/{pathId}
Enrollment API Enrol users in courses or paths. POST /learning/enrollments, GET /learning/users/{userId}/enrollments
Lesson API Retrieve lesson content and record lesson activity. GET /learning/lessons/{lessonId}, POST /learning/lessons/{lessonId}/start, POST /learning/lessons/{lessonId}/complete
Quiz API Retrieve quizzes and submit attempts. GET /learning/quizzes/{quizId}, POST /learning/quizzes/{quizId}/attempts
Practical Exercise API Retrieve exercises and submit applied work. GET /learning/exercises/{exerciseId}, POST /learning/exercises/{exerciseId}/submissions
Certificate API Retrieve and issue certificates through policy-controlled commands. GET /learning/certificates, POST /learning/certificates/evaluate
User Progress API Retrieve progress summaries and detailed progress records. GET /learning/users/{userId}/progress, GET /learning/progress/{progressId}
Procurement Maturity Assessment API Create and submit assessments. POST /learning/maturity-assessments, POST /learning/maturity-assessments/{assessmentId}/submit
Learning Recommendation API Create, present, accept, dismiss, and complete recommendations. GET /learning/recommendations, POST /learning/recommendations/{recommendationId}/accept
AI Tutor API Start, continue, and complete tutor sessions with Intelligence support. POST /learning/tutor-sessions, POST /learning/tutor-sessions/{sessionId}/messages
Organization Learning Profile API Retrieve organization education state. GET /learning/organizations/{organizationId}/profile

API Design Rules

  • Commands that mutate learning records must go through Learning APIs.
  • Cross-domain triggers should pass references and reasons, not copied business facts.
  • AI tutor endpoints must record confidence, references, and guardrail outcomes.
  • Certificate issuance must be policy-controlled.
  • Final endpoint names and schemas will be defined in later OpenAPI work.

Example Command Flow

sequenceDiagram
    participant UI as Academy UI
    participant LearningAPI as Learning API
    participant Learning as Learning Domain
    participant Intelligence as Intelligence Domain

    UI->>LearningAPI: POST /learning/tutor-sessions
    LearningAPI->>Learning: Start tutor session command
    Learning->>Intelligence: Request tutor reasoning
    Intelligence-->>Learning: Explanation and confidence
    Learning-->>LearningAPI: Tutor session record
    LearningAPI-->>UI: Tutor response with learning context