How opetushallitus/kieli-ja-kaantajatutkinnot works
This monorepo hosts four Finnish National Agency for Education services: AKR translator authorization, OTR interpreter qualification, VKT language-exam enrollment and results, and YKI exam-session registration. The principal VKT journey is public enrollment into an exam event, followed by examiner appointment/grade handling and register synchronization; clerks manage events and enrollments. AKR and OTR expose public registries and clerk administration, while YKI manages exam sessions and registrations. The graph emphasizes documented capabilities and sampled call paths; YKI and several unsampled integrations are represented only at subsystem level.
Main entry points: ClerkTranslatorService.java Authorization management · ClerkInterpreterService.java Qualification management · PublicEnrollmentService.java Enrollment and queue · ExaminerEnrollmentService.java Appointments and grades
Components 27
AKR translators
- Translator API
backend/akr/src/main/java/fi/oph/akr/api/translator/TranslatorController.java - Public registry search
backend/akr/src/main/java/fi/oph/akr/service/PublicTranslatorService.java - Translator administration
backend/akr/src/main/java/fi/oph/akr/api/clerk/ClerkTranslatorController.java - Authorization management
backend/akr/src/main/java/fi/oph/akr/service/ClerkTranslatorService.java - Translator records
backend/akr/src/main/java/fi/oph/akr/repository/TranslatorRepository.java
OTR interpreters
- Interpreter API
backend/otr/src/main/java/fi/oph/otr/api/PublicController.java - Public interpreter search
backend/otr/src/main/java/fi/oph/otr/service/PublicInterpreterService.java - Interpreter administration
backend/otr/src/main/java/fi/oph/otr/api/clerk/ClerkInterpreterController.java - Qualification management
backend/otr/src/main/java/fi/oph/otr/service/ClerkInterpreterService.java - Interpreter records
backend/otr/src/main/java/fi/oph/otr/repository/InterpreterRepository.java
VKT exams
- Public enrollment API
backend/vkt/src/main/java/fi/oph/vkt/api/PublicController.java - Enrollment and queue
backend/vkt/src/main/java/fi/oph/vkt/service/PublicEnrollmentService.java - Clerk enrollment API
backend/vkt/src/main/java/fi/oph/vkt/api/clerk/ClerkEnrollmentController.java - Clerk enrollment operations
backend/vkt/src/main/java/fi/oph/vkt/service/ClerkEnrollmentService.java - Examiner enrollment API
backend/vkt/src/main/java/fi/oph/vkt/api/examiner/ExaminerEnrollmentController.java - Appointments and grades
backend/vkt/src/main/java/fi/oph/vkt/service/ExaminerEnrollmentService.java - Exam enrollment data
backend/vkt/src/main/java/fi/oph/vkt/service - Enrollment notifications
backend/vkt/src/main/java/fi/oph/vkt/service/PublicEnrollmentEmailService.java - Register synchronization
backend/vkt/src/main/java/fi/oph/vkt/service/RegisterEnrollmentService.java
YKI sessions
- Exam sessions and registrations
backend/yki/src/main/java/fi/oph/yki/service/ClerkExamSessionService.java - Public session identity
backend/yki/src/main/java/fi/oph/yki/service/PublicAuthService.java
Shared integrations
- ONR personal data
backend/akr/src/main/java/fi/oph/akr/onr/OnrService.java - Email delivery
backend/vkt/src/main/java/fi/oph/vkt/service/PublicEnrollmentEmailService.java
Other components
- Public users
- Clerk users
- Examiner users
- Language register
Connections 25
- Public users → Translator API: requests
- Translator API → Public registry search: delegates
- Clerk users → Translator administration: requests
- Translator administration → Authorization management: delegates
- Authorization management → ONR personal data: reads or updates
- Authorization management → Translator records: persists records
- Public users → Interpreter API: requests
- Interpreter API → Public interpreter search: delegates
- Clerk users → Interpreter administration: requests
- Interpreter administration → Qualification management: delegates
- Qualification management → ONR personal data: reads or updates
- Qualification management → Interpreter records: persists records
- Public users → Public enrollment API: enrolls
- Public enrollment API → Enrollment and queue: delegates
- Enrollment and queue → Exam enrollment data: validates and saves
- Enrollment and queue → Enrollment notifications: sends confirmations
- Enrollment notifications → Email delivery: delivers email
- Clerk users → Clerk enrollment API: manages enrollment
- Clerk enrollment API → Clerk enrollment operations: delegates
- Examiner users → Examiner enrollment API: handles enrollment
- Examiner enrollment API → Appointments and grades: delegates
- Appointments and grades → Exam enrollment data: updates grades
- Appointments and grades → Register synchronization: graded results
- Register synchronization → Language register: syncs results
- Clerk users → Exam sessions and registrations: manages sessions