Christian M. Andersen · senior backend developer, Copenhagen archive · 2026 · 5 channels open

cma:~$ cat work/tjekklinik.md

Build ·· work.0003

TjekKlinik

Built with Laravel · PHP
Status Running

This is a pretty niche topic, but in Denmark, healthcare professionals and the clinics in which they work must be authorised through a government agency called STPS (Styrelsen for Patientsikkerhed).

That same government agency has been gracious enough to provide a solution to search their register but in typical government fashion, the solution is difficult to find, clunky, slow, and has a lot of downtime (it is even down at the time of writing, and has been for hours). (Outdated as of 2026: the register now lives on a new, modern site. See the addendum below.)

When my wife opened her own clinic and was authorised, it occurred to her how difficult it was to even find the search form, much less use it. This left her concerned for the general public, as they would have absolutely no idea that the register existed or how to search it.

In the beginning I just created a sort of wrapper around the original search form, narrowing the fields down to two (one for the name of the clinic, and one for the name of the person), and then simply live-refactoring the information to be more easily digestible. To prove my point, I even added a button to switch between the original design and the “updated” design.

As with all “wrappers”, the stability of the product is directly dependent on what it wraps, so it didn’t take a long time before I felt obligated to upgrade TjekKlinik to not just wrap the data, but actually build my own database. Having already built the data-extraction layer of the site to display the results in a more readable way, it was pretty straight-forward to simply store that information in a structure I deemed appropriate.

TjekKlinik is now faster and way more stable than what it’s based on, but it is still dependent on the original to provide the data. There is no way around that… for now.

Addendum: Per request, I have also added cosmetic tattoo parlours and tattoo artists, since they also need to register with the government agency SIK (Sikkerhedsstyrelsen). The SIK search form is actually even more simple than the one on TjekKlinik (only one field), but multiple people expressed the opinion that they would like for these two forms to be in one place.

Addendum (2026): The register moved. The old site at autregweb.sst.dk was replaced overnight by a new one from Styrelsen for Patientsikkerhed, which I found out about when someone told me a clinic had the wrong name. The new site even comes with a REST API, which covers everything except the clinics. TjekKlinik now reads the same data the new site’s own pages are built from, which beats scraping HTML, but the dependency is very much still there.

‹ back to work