You could iterate through and run multiple fetches as you have mentioned, another alternative is to start your fetch higher up the node tree and use the depth parameter to search deeper into the tree looking for infoboxes.
Each approach obviously has performance issues associated with it, especially as you increase the total number of objects in the tree, searching with depth starts to become hazardous.
If this happens to be the case then you would potentially look at writing a simple module fetch to run your own optimised sql fetch for the appropriate infoboxes. Although this may not be an issue, depending on the size of the node tree.