Jedi seems like it could be a good tool for extracting all the symbols from our packages. This may need an independent CI job though since it may be a lengthy process.
with open('foo.py') as f:
c = jedi.Script(f.read())
# this will give a list of all the names of the symbols in the file
# these can be exported into a file themselves for use by 3rd parties
c.get_names()