I've been exploring the json dumps of each block through ./tezos-client rpc get /chains/main/blocks/<bid>
and wanted to know the block heights at which some important changes might have happened to the protocol in its current history that would have modified/added new json fields.
You can find the height of the first and the last block of each protocol in some block explorers (e.g. https://tezos.id/protocols).
You can also consult the documentation's Protocols section (starting from 003), which should capture these changes.