How to ask
Email your contact at WorkerJoy, or welkom@workerjoy.nl. You can do so during the pilot and in the 30 days after it. There is no notice period, and there are no costs.
A transition period of at most 30 days follows, which you may extend once. During it the dashboard and the data stay available free of charge, but no questionnaires go out after the last day of the pilot. After the transition period you can still ask for the data for at least 30 days. Then we erase everything that could be taken along, and confirm by email that we have. If you only want it erased, we do that straight away.
You fetch the files yourselves, whenever you like: an Administrator of your dashboard downloads them on the Take your data screen, and makes the key for the connection there too.
The format
- Every file is CSV according to RFC 4180: a header row, commas between the fields, every field in quotation marks, in UTF-8 without a BOM. Every file opens in a spreadsheet.
- Column names and codes are fixed and in Dutch, whatever language you read the dashboard in. What you typed yourselves, such as a name or the text of a report, is there as it was typed.
- A number has a full stop as its decimal separator and one decimal. A date is written yyyy-mm-dd, a moment yyyy-mm-dd hh:mm in Dutch time.
- A field that begins with =, +, -, @, a tab or a carriage return gets an apostrophe in front, so that a spreadsheet shows it as text rather than running it as a formula. A program reading the files removes that apostrophe.
- Every file is made at the moment it is fetched, and we do not keep it. Two files can therefore be a few seconds apart.
- Figures are only there where the dashboard shows them too: no team that is too small, no score from fewer than 5 answers, and the response as a range or as a word.
- We only add columns and files, and rename nothing. If something has to change in a way that would break a program, a new version of the connection comes alongside this one.
Which data goes along
This is the register of the export: every file, and what each column holds. The files come with LEESMIJ.txt, which says the same in short.
File chauffeurs.csv
For each driver, what you entered in the dashboard. No date of birth: we only keep that as an unreadable code. Nothing about signing up or taking part.
| Column | What it holds |
|---|---|
naam |
The name as you entered it. |
depot |
The depot the driver's team belongs to. |
team |
The team. A driver is in one team. |
taal |
The language you gave, as a two-letter code such as nl or pl. |
telefoon_van |
Whose telephone it is according to you: prive (the driver's own), werkgever (the employer's) or onbekend (unknown). |
status |
werkzaam (employed), non-actief (inactive) or uit-dienst (left). |
File gebruikers.csv
For each dashboard user and each role: who, and what they may see. Somebody without a role appears once, with the role columns empty.
| Column | What it holds |
|---|---|
naam |
The user's name. |
e_mail |
The email address the user signs in with. |
status |
actief (active), uitgenodigd (invited) or geblokkeerd (blocked). |
rol |
The role as a fixed code: beheerder, analist, depotmanager or kijker, or the code of a role you made yourselves. |
rol_naam |
The name of the role as the dashboard shows it. |
bereik |
heel-bedrijf (the whole company), or the depots and teams the role may see, separated by a semicolon. |
File inloggen.csv
Every time a user signed in. Not the times WorkerJoy looked along at your request.
| Column | What it holds |
|---|---|
naam |
Who signed in. Empty for somebody who no longer has access. |
e_mail |
The email address of who signed in. Empty for somebody who no longer has access. |
ingelogd_op |
When, to the minute, in Dutch time. |
File actiebord.csv
Every card on Take action, for the whole company.
| Column | What it holds |
|---|---|
groep |
The team, depot or company of the card. |
onderwerp_code |
The topic as a fixed code, such as workload. |
onderwerp |
The topic as the dashboard names it. |
status |
open, bezig (in progress) or klaar (done). |
opgepakt_door |
Who took the card on. |
voorstel |
The heading of the card. |
actie |
What the card suggests doing. |
vermijden |
What the card advises against. |
vraag_1 |
The first question for the conversation with the team. |
vraag_2 |
The second question for the conversation with the team. |
vraag_3 |
The third question for the conversation with the team. |
File meldingen.csv
Every report a driver had passed on, as on Driver reports: without a name and without a team.
| Column | What it holds |
|---|---|
verschenen_op |
The day the report appeared on Driver reports. |
wat |
What is going on, in the words of the report. |
waar |
Where it is going on. |
status |
nieuw (new), opgepakt (taken on) or afgehandeld (dealt with). |
File cijfers.csv
For the company, each depot and each team, for each rhythm and each measurement: the WorkerJoy score and the response.
| Column | What it holds |
|---|---|
niveau |
bedrijf (company), depot or team. |
groep |
The name of the company, depot or team. |
depot |
For a team: the depot it belongs to. |
cadans |
week, maand (month) or kwartaal (quarter). |
meting |
The measurement as the dashboard names it. |
verstuurd_op |
The day the questionnaire went out. |
nulmeting |
ja (yes) for the baseline measurement, otherwise empty. |
workerjoy_score |
The WorkerJoy score with one decimal, or empty where the dashboard shows none. |
respons |
The response as a range, such as 60-70%, or as a word: goed (good), matig (moderate) or laag (low). Empty when there are too few answers. |
File cijfers-per-onderwerp.csv
The same measurements, per topic: the score, or why there is none.
| Column | What it holds |
|---|---|
niveau |
bedrijf (company), depot or team. |
groep |
The name of the company, depot or team. |
depot |
For a team: the depot it belongs to. |
cadans |
week, maand (month) or kwartaal (quarter). |
meting |
The measurement as the dashboard names it. |
verstuurd_op |
The day the questionnaire went out. |
nulmeting |
ja (yes) for the baseline measurement, otherwise empty. |
onderwerp_code |
The topic as a fixed code, such as workload. |
onderwerp |
The topic as the dashboard names it. |
score |
The score with one decimal, or empty. |
toelichting |
Why the score is empty: te-weinig-antwoorden (too few answers) or niet-gemeten (not measured). |
File maandrapporten.csv
For each month and group, the standing at the end of the month as the monthly report shows it, beside the month before. You make the PDF of a monthly report yourselves on the Monthly report screen.
| Column | What it holds |
|---|---|
maand |
The month, as yyyy-mm. |
niveau |
bedrijf (company), depot or team. |
groep |
The name of the company, depot or team. |
depot |
For a team: the depot it belongs to. |
loopt_nog |
ja (yes) if the month is still running, otherwise nee (no). |
onderwerp_code |
The topic as a fixed code, or workerjoy_score for the WorkerJoy score. |
onderwerp |
The topic as the monthly report names it. |
score |
The standing at the end of the month, with one decimal, or empty. |
score_vorige_maand |
The standing at the end of the month before, or empty. |
File themas.csv
The themes from the open answers for each team and measurement, as the dashboard shows them. A theme is a summary made with WorkerJoy's method, and cannot be compared with the outcome of another measurement.
| Column | What it holds |
|---|---|
soort |
always thema (theme). |
team |
The team. |
onderwerp_code |
The topic as a fixed code, such as workload. |
gevoel |
pos, neu or neg. |
samenvatting |
The summary of the theme. |
volgorde |
The place in the order the dashboard shows them in: 1 was mentioned most. |
meting_op |
The day the questionnaire went out. |
vanaf |
Always empty. The column belonged to the signal, which no longer exists; it stays so that a program reading the files does not break. |
The connection
A program fetches the same files free of charge through the connection: you yourselves, or the provider you are switching to.
- An Administrator of your dashboard makes a key on the Take your data screen and gives it to whoever fetches the files. The key is shown on screen once, and we only keep it as an unreadable code.
- The program sends the key in the Authorization: Bearer header, and never in the address.
- A key works for at most 31 days. An Administrator can revoke or renew it at any time, and it stops at once when whoever made it is no longer an Administrator.
The address of the connection will be here as soon as the dashboard is in use for customers.
Individual answers
Individual answers to the questionnaire only go directly to a recipient you name in writing, such as the new provider, and only once that recipient confirms to us in writing that it processes them as your processor, with limits and retention periods at least as strict as ours, and that you never get to see them individually. You do not get them yourselves, and they never go through the connection: drivers and the works council have been promised that you never see who answered what. If you name nobody, we erase them.
What does not go along
- What WorkerJoy processes itself: sign-ups, telephone numbers, the language a driver chose himself, STOP and the conversations with Joy. WorkerJoy is responsible for those, not you (article 7.2 of the terms).
- What belongs to how our service works: what is protected by our intellectual property, and data about the internal workings in so far as handing it over would breach our trade secrets, such as the questionnaire, our models and the way we have texts written.
Where our systems are
- The website, the dashboard and its database run at Brainpod, in the Netherlands, within the European Union.
- WhatsApp messages go through Meta. Where Meta stores them, we have set to the European Union, in Germany.
- What a driver writes to Joy, and the open answers a language model may read, are read by the language model of Mistral AI, a French company, through Mistral's European address.
Dutch law applies to the agreement with you.
Protection against requests from governments outside the EU
- We do not move your drivers' answers or the driver list in the dashboard outside the European Union.
- Every connection to the website, the dashboard and the connection for programs is encrypted (https).
- If a government outside the EU asks for data, we only hand it over where European or Dutch law obliges us to, and tell you when we may.