using @JsonIgnoreProperties(ignoreUnknown = true) to avoid deserialization errors