Still in the early learnings of Swift.
Ryan Sullivan

In that case you don’t need an additional wrapper.

I’ve noted that the process that works better for me is to just start defining a hierarchy of Codable objects that directly represents your response. For example, in you case, you may want to have a top level Response with just one property, time, that contains an instance of a TimeResponse. That TimeResponse would have the rest of the properties in your example.

And then, you can leave it at that. But sometimes you can start refining: does all responses contain that top level time thing? Can I use some enum for a property instead of a String? And etc.