I would like to get information about direct mergers of the main progenitors of a subhalo for a range of redshifts, so in principle I would like to start with a subhalo in snapshot 99 for example, go to the main progenitor (MP1) in snapshot 98, then check all the "next progenitors" in snapshot 98 until there are none (always saving some data fields). Then I continue with the main progenitor of MP1 in snapshot 97 and to the same again. But I am not interested in the progenitors of the "next progenitors".
Is the only option to do that to download the full merger trees for the subhalos that I am interested in in snapshot 99? The subhalo information that I can retrieve with the API contains only the most massive progenitor and descendant in the "related" field, the next progenitor information is not available (and also only for sublink and not lHalotree). If I have to download the full trees for the halos, is it possible to limit the merger tree download to specific fields to limit the file size? the API instruction says: "By default, extracting the main progenitor branch, or the full tree, for a given subhalo will return all fields. That is, in addition to telling you the Subfind IDs and snapshot numbers of all progenitors, the properties of each progenitor subhalo will also be returned." (https://www.tng-project.org/data/docs/api/) but I did not find how this "default" can be changed.
You are correct, you are going to need a specific subset of trees, but not just the main progenitor branch.
So best option is: if you have a small number of halos (<1000), just download the individual full trees. They are not so big. If you have a large number of halos, or want to analyze all halos, you should just download the entire merger tree itself, and then load the individual trees you want from it.