Sympa logoStudyTube logo

Training and certificates

Sympa to StudyTube integration: employees and organisation from Sympa in the academy, certificates back as PDF

With an integration between Sympa and StudyTube, every employee in Sympa automatically gets a StudyTube account in the team of their organisational unit, with their line manager as team manager. When they earn a certificate, the PDF arrives as an attachment on a new row in the training table of their card in Sympa.

What the integration does

Organisations that use Sympa for HR and StudyTube for onboarding and mandatory training often load employees into the academy with an export. Certificates needed for an audit then only live in StudyTube, and HR uploads them into Sympa by hand.

  1. The Sympa administrator creates two API interfaces: a read interface for employees and a write interface for the training table.
  2. KoppelHet reads employees with unit, line manager and end date, and sets up the units as teams in StudyTube.
  3. Every employee gets an account in their team; the line manager becomes team manager.
  4. Once a day KoppelHet fetches new certificates and adds each certificate as a row with PDF in Sympa.
  5. After the end date in Sympa KoppelHet removes the account.
Sympa → KoppelHet → StudyTubeSOURCESympaTARGETStudyTubeKoppelHetmapping · logging · monitoringSympa → KoppelHet → StudyTubeSOURCESympaTARGETStudyTubeKoppelHetmapping · logging · monitoring
Out: User with name, work email, job and employee number · Teams from Sympa's organisation tree · Team manager from the line manager
Back: Certificate name and completion date as a row in the training table · The certificate as PDF attachment on that row

What to watch for with Sympa and StudyTube

  • Sympa can only send an attachment when creating a single table row, only as PDF and up to about 30 MB per request. KoppelHet therefore creates a separate row with the PDF per StudyTube certificate, instead of bundling all certificates of a day into one request.
  • Attachments through the API are behind a setting in Sympa that must be switched on per organisation. At the start we ask your Sympa contact to switch it on; until then KoppelHet writes the row without PDF, with name and date only.
  • Sympa allows a hundred requests per hour per interface, for all kinds of requests together. Because every certificate with PDF costs one request, KoppelHet processes certificates once a day and spreads a large batch, for example after a mandatory e-learning, over several hours.
  • The line manager in Sympa is a reference to another employee card. In the interface we include their employee number as target field, so KoppelHet finds the team manager in StudyTube on the same uid the manager was created with.
  • Tables with validity in Sympa can be requested for a period or a reference date. KoppelHet requests the organisational unit with today's date as reference date, so a transfer per the first of next month only changes the team on that day.
  • The employee number cannot be changed through the Sympa API when it is the interface's unique key. KoppelHet therefore uses it as uid in StudyTube, so a new email address after a name change does not create a second account.
  • The API log in Sympa only shows the last ten requests. KoppelHet keeps its own record per certificate of whether and when it was added in Sympa, with the error if it failed, so HR can check during an audit why a certificate is missing.

How we build and run it

  • The integration runs on the KoppelHet platform, hosted in a data centre in the EU.
  • Every sync and every error is visible in the functional log; on an error your administrator is notified.
  • A change that cannot go through is not half-applied but queued for another attempt.
  • KoppelHet is ISO 27001 certified. Data travels encrypted and stays on the platform no longer than needed.
  • After go-live we manage the integration and adjust it when your process changes.
  • The integration fits next to your existing integration layer. Only the fields in the design are transferred; the platform keeps no register of its own.

Implementation, architecture and compliance

Implementation and price

This is not an app you switch on. We build the integration for your organisation on our platform, with building blocks we reuse on every project. So it is custom work that does not start from scratch.

A consultant prepares the intake and analyses both systems. We then record the mapping and exceptions field by field, test in the test or acceptance environment and go live at a moment you choose. Costs are a one-off amount for the setup and a monthly amount for platform, monitoring and support.

Price indication · Basic

Leave your work email and you see the price indication right away.

We only use your address to follow up on your question about this integration.

Frequently asked questions

Why two interfaces in Sympa?

That way the integration only reads the fields StudyTube needs, and only writes to the training table. Each interface also has its own limit of a hundred requests per hour.

What if the attachment feature in Sympa is not switched on?

Then the certificate arrives in Sympa as a row with name and date, without PDF. The PDF can still be downloaded in StudyTube.

Which organisational unit becomes the team?

We choose that at the start. Often it is the department, with the higher levels of the organisation tree as parent teams.

Technical details for IT

For those who want to know how it works under the hood: APIs, fields and sources used.

  • Sympa Integration API at https://api.sympahr.net/api with an API key (X-ApiKey or basic): GET on the read interface with $filter, $top and $skip, and at for tables with validity; POST /api/{interface}({employee number})/{table} as multipart/form-data with a json part and a PDF per attachment field (attachments only after activation by Sympa). 100 requests per hour per interface.
  • StudyTube Academy API v2 with OAuth 2.0 client credentials (read and write scope): POST /api/v2/users on uid, academy-teams/bulk/upsert up to 500 teams with parent, academy-teams/managers/sync, DELETE /api/v2/users/{id}, and GET /api/v2/certificates (created_at, name, completion_date, document, document_file_name).

Which fields are transferred

The key fields. The full mapping is agreed per customer.

Field in SympaField in StudyTubeNotes
Personeelsnummer (unieke sleutel)uid en employee_number
Voornaam en achternaamfirst_name en last_name
Werkadresemail
Functiecompany_role
Organisatie-eenheid (boomveld)Team met external_id en parent
Leidinggevende, met zijn personeelsnummer als doelveldTeammanager
Einddatum dienstverbandDELETE op de dag erna
Certificaat name en completion_dateRij in de opleidingstabelReturn path to Sympa
Certificaat document (pdf)Bijlageveld van die rij

Related

Which systems do you want to connect?

Tell us which systems you use and what should happen automatically. Together we define the smallest working solution, with a clear design and a quote before building.