I made an episode exploring ways to build structs from external data.
https://elixircasts.io/building-structs-from-external-data