There are many Services in Fedora. Many of these have an interface that we can query and get back information as JSON data. There is documentation here about both the services and the client modules that can access them.
FAS is the Fedora Account System. It holds the account data for all of our contributors.
It is not safe to use a single instance of the AccountSystem object in multiple threads. This is because instance variables are used to hold some connection-specific information (for instance, the user who is logging in). For this reason, we also provide the fedora.client.FasProxyClient object.
This is especially handy when writing authn and authz adaptors that talk to fas from a multithreaded webserver.
The Package Database holds information about packages in Fedora. It currently has a developer-centric view of packages that concentrates on who the owner is of a particular package.
Plans to add an end-user view to packages is ongoing.
Bodhi is used to push updates from the build system to the download repositories. It lets packagers send packages to the testing repository or to the update repository.
pythyon-fedora currently supports both the old Bodhi1 interface and the new Bodhi2 interface. By using fedora.client.BodhiCLient, the correct one should be returned to you depending on what is running live on Fedora Infrastructure servers.