Hoppa till innehåll

Fas 2 · Innan praktik · 2.10

LMS-integration och webhook-system

Tvåvägs synk mellan Prakto och skolans LMS (Canvas eller Moodle) för studenter, kurser, betyg och händelser, plus signerade webhooks för externa system.

· Q1 2025

LMS-integrationen gör att skolans befintliga lärplattform och Prakto är samma datakälla. Studenter, kursregistreringar och praktikbetyg synkas i båda riktningarna, och ett webhook-system gör att andra system (HR, ekonomi, CRM) kan reagera på samma händelser i realtid.

Plattformar och scope

Integrationen är byggd kring de två LMS som dominerar svensk yrkeshögskola och universitet, med tydligt definierade dataobjekt.

ObjektRiktningFrekvens
StudenterLMS till PraktoSchemalagt + on demand
KursregistreringarLMS till PraktoSchemalagt
ProgramstrukturLMS till PraktoSchemalagt
PraktikbetygPrakto till LMSVid godkännande
LIA-avklaratPrakto till LMSVid avslut

Stödda plattformar är Canvas och Moodle. Anslutningen sker via OAuth2 eller API-token och konfigureras per skola.

Fältmappning

Varje skola kan mappa sina egna LMS-fält mot Praktos fält. Det betyder att standardobjekt fungerar direkt, men att skolan kan beskriva sina egna anpassningar.

Prakto-fältLMS-fält (exempel Canvas)Riktning
Student.emailsis_user_idLMS → Prakto
Student.programIdenrollment.course_idLMS → Prakto
Placement.gradesubmission.gradePrakto → LMS
Placement.completedAtsubmission.submitted_atPrakto → Prakto

Mappningarna lagras strukturerat och kan justeras utan att integrationen behöver byggas om.

Synkjobb och historik

Varje synk är ett spårbart jobb med startid, sluttid, status och resultat. Jobb som misslyckas kan köras om, och varje jobb har en lista av poster som lyckades respektive misslyckades.

  • Schemalagda jobb. Körs nattligen för fullständig synk.
  • Inkrementella jobb. Körs var 15:e minut för förändringar.
  • Manuella jobb. Triggas från admin när en specifik student eller kurs behöver synkas direkt.
  • Återköp. Misslyckade poster läggs i kö och försöks igen med exponentiell backoff.

Webhook-system

Utöver LMS-synken finns ett generellt webhook-system där skolan eller företaget kan prenumerera på domänhändelser från Prakto. Det är mekanismen för att koppla in egna system utan att Prakto behöver bygga en specifik integration.

HändelseTriggas vidVanligt mottagarsystem
placement.createdPlacering registreradHR, ekonomi
placement.approvedPlacering godkändAvtalssystem
placement.completedPlacering avslutadDiplomssystem
evaluation.submittedUtvärdering inskickadKvalitetsuppföljning
company.activatedFöretag aktiveratCRM
company.deactivatedFöretag avaktiveratCRM

Säkerhet och leverans

Webhooks är byggda för att vara verifierbara och pålitliga, inte bara enkla att skicka.

  • HMAC-SHA256-signering. Varje payload signeras med en hemlighet per prenumeration. Mottagaren kan verifiera att anropet kommer från Prakto.
  • whsec_-prefix. Hemligheterna är prefixade och 48 hex tecken långa, vilket gör dem lätta att känna igen och rotera.
  • Återförsök. Misslyckade leveranser försöks på nytt med exponentiell backoff i upp till 24 timmar.
  • Leveranslogg. Varje försök loggas med statuskod, svarstid och respons.
  • Pausning. Endpoints som svarar med fel i mer än 24 timmar pausas automatiskt och flaggas till administratören.

Kanaler

Utöver klassiska webhooks går samma händelseström även att leverera till Slack och Microsoft Teams. Det gör att en koordinator kan få en kanalavisering varje gång en placering godkänns utan att skolan behöver bygga något själv.

Resultatet är att Prakto inte är en isolerad ö, utan en del av skolans befintliga systemlandskap, både för administrativ data via LMS och för automatisering via webhooks.

Dela avsnitt

LinkedInXMejl