Programatically access Arad's Digital Library

digitalization arad government rant

I love to use and see services that allow me to use their data in a programatical way, i.e. websites that provide APIs. APIs truly make openly available data, open. By providing an API, anyone can download your data and use it in their applications in a meaningful way.

Well, it seems like I started this year on a high note. I found out, while searching for the necessary documents for signing up, that Arad County Library “Alexandru D. Xenopol” has a very well organized digital library.

I was very pleased with the accessibility of the website and I quickly found myself browsing through some 44 thousand newspapers, some even printed in the year 1868. It seems that the newest newspapers are from 2003, but there are also some publications from the “Vasile Goldiș” University.

If I said that I started this year on a high note, that means that I just jumped a few octaves when I found out that the digital library used Omeka S, an open-source “wordpress-like” platform for digital collections. Like any good open-source piece of software, Omeka S makes the data truly open by allowing you to query it through an API.

People may be scared of such features in their web portals (you certainly don’t want those h4ck3rs stealing your precious user data); they may be even repulsed by such software, thinking that it may be geek-oriented, clunky and hard to use. But most good open-source software is very user-friendly while still making room for customization, extensibility and geeky things.

The API

Enough with the idealistic talk, let’s get a bit technical. The main API endpoint is https://digital.bibliotecaarad.ro/api. It allows you to access almost every information stored by the site through this API; you could even use this API to build an entirely new interface for the library while using the exact same data. THIS IS THE POWER OF APIs.

A thing that is very common with open-source software is good documentation. Good documentation is needed for open-source software to work, because it relies on contributions from people that haven’t followed the entire development cycle. The API documentation can be found here (thank god).