
The problem seems to lie in that the deserialization process first instantiates the data class with no values (because this is OK in Java) and then sets the values on every field afterwards. It is a string value and it is correctly returned from Fauna and received in my application. The value of the field in Fauna is not null.

One of my Kotlin data classes has a field that does not allow null values - a feature of Kotlin language (see here: Null safety | Kotlin) - and thus causes an exception to be thrown when data from Fauna is fetched and deserialization process and creation of instance of Kotlin data class is attempted. I’m writing a backend service in Kotlin and Spring Boot, and for Fauna integration I’m using the Java driver ( GitHub - fauna/faunadb-jvm: Scala and Java driver for FaunaDB).
