How to query your Teamwork data from Power BI

Querying the Teamwork API directly from Power BI is slow and fragile. Stage your data in a relational database first, then build interactive dashboards that combine Teamwork with the rest of your business.

Ben Liebert Wrangling data since 2004 LinkedIn

Power BI really shines when you give it relational data to work with - tables, relationships and enough history to spot a trend. Unfortunately, querying the Teamwork API directly from Power BI is slow, fragile and quickly runs into rate limits. The better approach is to stage your Teamwork data in a database first, then let Power BI do what it does best: interactive dashboards, drill-downs and combining Teamwork with the other systems your business runs on.

In this article, I’ll take you through the steps to connect Power BI to your Teamwork data, and get started customizing the reports you need.

Connect to Teamwork

If you don’t already have a SyncHub account, you can grab a free trial here - go on, I’ll wait - it only takes a minute and you can cancel as soon as you’ve finished this tutorial if you like.

Ready? Now, a quick reminder - SyncHub works by staging your Teamwork data in a relational database. This gives us a huge advantage over other connectors which query the Teamwork API directly, but I won’t go in to them here. The point is, once you have connected your Teamwork account, querying from Power BI is trivial as you are just using its native SQL Server Connector.

Once connected, you'll find data from all these endpoints streaming down from Teamwork, such as this example from the Task table:

CardID Content DueDate EstimatedMinutes Priority
12 Complete project plan 2024-06-01 45 High
263 Fix login bug 2024-07-15 90 Medium
308 Prepare sprint review presentation 2024-08-10 120 Low

After connecting, visit your SyncHub Dashboard and grab your new database credentials - you'll need them below.

Reading your Teamwork data from Power BI

We now just need to tell Power BI where to find your data. Either select Import data from SQL Server or a new SQL Server connection from the Data ribbon:

Power BI ribbon

When prompted, enter the Server and Database that SyncHub provided in the first step above:

Power BI server

Next - and this is the part that trips most people up - switch to the Database credentials tab (highlighted by the arrow below), then enter the username and password provided to you by SyncHub in the step above:

Power BI credentials

Troubleshooting

This is the point where you are most likely to run into issues - your login won’t be accepted. After triple-checking that you have used the correct server/database/username/password, the most common resolutions we see are:

  1. try opening Power BI in Administrator mode
  2. if you are in an office, perhaps you have some firewall restrictions?

All going well, you’ll now be presented with the tables from Teamwork, and you know what to do from here:

Table list

Keeping your data up-to-date

SyncHub updates it’s staged data from Teamwork in near-realtime, so it’s always available. However, depending on your Power BI settings you may still observe a delay with your reports. But not to worry - the solution isn’t too onerous. Every time you want to refresh your data, simply click the (appropriately named) Refresh button in your Ribbon:

Refresh

Beyond Teamwork

Teamwork-specific reports are essential, but the true power of SyncHub comes when you augment your Teamwork data with additional information:

So what are you waiting for? Grab a free trial of SyncHub here and see what you can do. In ten minutes from now, you could be reporting against your Teamwork data and taking your first steps towards a data-driven business.

Keen to try SYNCHUB for yourself? Grab a free trial or book a demo.