As far as I know, this is a temporary mechanism to keep a useful list of relays the topologyupdater can use to create their static topology. So when you online a new relay the topologyupdater will use this list to create its initial topology list.
I am guessing here but I would say we don’t want a system that is dependent on too many things like apis and other websites as you mentioned. We got just 1 simple json which is updated through the explained topologyupdater. And from my experience works pretty well.