The DonorHub API Approach (preferred)
If you want to support the largest number of organizations with your app, this is the best way to go.
To learn more, read the: DonorHub API Documentation
The SOAP/XML Approach (obsolete)
DonorHub provides a SOAP/XML end point that other web applications can use to query donation data. The Staff Portal which is included with DonorHub gets all of its data exclusively through this web service. If you can see something on the Staff Portal, you can programmatically retrieve the same information.
Here's a demo of the Staff Portal:
Here are the SOAP web service endpoints where the demo Staff Portal gets its data:
The Staff Portal works with the instance's single sign on provider. The main SOAP endpoint has a SiteProperties informational record you can request this info. It includes the URL to the authentication provider under "SSOProvider". The main way authentication works with the DataQuery service is through a session id. Let me explain: When the user comes to the Staff Portal, they authenticate via the authentication provider and gets a service ticket. It passes in the service name and service ticket to the SOAP method "Login(ServiceName, ServiceTicket)" which returns a SessionID, UserName, and UserIsRegistered. You need to persists the SessionID as this is used for all subsequent method calls. If the user is not registered, you need to prompt the user for a registration code and submit it to the method "RegisterUser(SessionID, RegistrationCode)" until the user is registered.
Trusted Portal URL Prefixes
To ensure that only trusted web applications are querying a user's donation data on their behalf (via the SOAP/XML api), DonorHub requires you to maintain a list of "URL Prefixes". Contact TntWare to let us know what the URL is of your web application. We'll need the left most significant part of the URL (enough to make it "trusted") and add it to the list of trusted prefixes.