Most of the official German transit apps query a list of transit maps from their respective backends. Because most of them are just re-packaged versions of the 2 largest providers, the response structure is mostly the same.
We could compile a list of these endpoints (a list of lists) and fetch their reported transit map URLs.