Some parts of the code use kotlinx.serialization, some parts use jackson. This is highly confusing and unnecessarily increases complexity.