Build Visualizations of Strava Data in Birst

Jerod Johnson
Jerod Johnson
Director, Technology Evangelism
Use CData drivers and the Birst Cloud Agent to build real-time visualizations of Strava data in Birst.

Birst is a cloud business intelligence (BI) tool and analytics platform that helps organizations quickly understand and optimize complex processes. When paired with the CData API Driver for JDBC, you can connect to live Strava data through the Birst Cloud Agent and build real-time visualizations. In this article, we walk you through, step-by-step, how to connect to Strava using the Cloud Agent and create dynamic reports in Birst.

With powerful data processing capabilities, the CData JDBC driver offers unmatched performance for live Strava data operations in Birst. When you issue complex SQL queries from Birst to Strava, the driver pushes supported SQL operations, like filters and aggregations, directly to Strava and utilizes the embedded SQL Engine to process unsupported operations client-side (often SQL functions and JOIN operations). With built-in dynamic metadata querying, the JDBC driver enables you to visualize and analyze Strava data using native Birst data types.

Configure a JDBC Connection to Strava Data in Birst

Before creating the Birst project, you will need to install the Birst Cloud Agent (in order to work with the installed JDBC Driver). Also, copy the JAR file for the JDBC Driver (and the LIC file, if it exists) to the /drivers/ directory in the installation location for the Cloud Agent.

With the driver and Cloud Agent installed, you are ready to begin.

  1. Create a new project in Birst.
  2. Name the connection (e.g. CDataAPI).
  3. Choose Live Access.
  4. Select an agent.
  5. Set Database Type to Other.
  6. Set SQL Type to MSSQL
  7. Set the Connection string.

    To authenticate to Strava, and connect to your own data or to allow other users to connect to their data, you can use the OAuth standard.

    Using OAuth Authentication

    You must create a custom OAuth application to connect to Strava. To create a custom OAuth application:

    1. Log into the Strava API Settings page
    2. Create a new application or select an existing application
    3. Set the "Authorization Callback Domain" to your callback URL domain (e.g. localhost)
    4. Note down the Client ID and Client Secret

    After setting the following connection properties, you are ready to connect:

    • AuthScheme: Set this to OAuth.
    • InitiateOAuth: Set this to GETANDREFRESH. You can use InitiateOAuth to manage the process to obtain the OAuthAccessToken.
    • OAuthClientId: Set this to the Client ID from your Strava API application.
    • OAuthClientSecret: Set this to the Client Secret from your Strava API application.
    • CallbackURL: Set this to the redirect URI matching your application's callback domain.

    Example connection string:

    Profile=C:\profiles\Strava.apip;AuthScheme=OAuth;InitiateOAuth=GETANDREFRESH;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;CallbackURL=http://localhost:33333;
    

    Built-in Connection String Designer

    For assistance in constructing the JDBC URL, use the connection string designer built into the Strava JDBC Driver. Either double-click the JAR file or execute the jar file from the command-line.

    java -jar cdata.jdbc.api.jar
    

    Fill in the connection properties and copy the connection string to the clipboard.

    When you configure the JDBC URL, you may also want to set the Max Rows connection property. This will limit the number of rows returned, which is especially helpful for improving performance when designing reports and visualizations.

    Below is a typical JDBC connection string for Strava:

    jdbc:api:Profile=C:\profiles\Strava.apip;AuthScheme=OAuth;InitiateOAuth=GETANDREFRESH;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;CallbackURL=http://localhost:33333;
    
    
  8. Set the Driver Name: cdata.jdbc.api.APIDriver and click Save.

NOTE: Since authentication to Strava is managed from the connection string, you can leave Security Credentials blank.

Configure Strava Data Objects

Now that the connection is configured, we are ready to configure the schema for the dataset, choosing the tables, views, and columns we wish to visualize.

  1. Select the Schema (e.g. API).
  2. Click on Tables and/or Views to connect to those entities and click Apply.
  3. Select the Tables and Columns you want to access and click Done.

With the objects configured, you can perform any data preparation and discover any relationships in your data using the Pronto Prepare and Relate tools.

Build a Visualization

After you prepare your data and define relationships between the connected objects, you are ready to build your visualization.

  1. Select the Visualizer tool from the menu.
  2. Select Measures & Categories from your objects
  3. Select and configure the appropriate visualization for the Measure(s) you selected.

Using the CData API Driver for JDBC with the Cloud Agent and Birst, you can easily create robust visualizations and reports on Strava data. Download a free, 30-day trial and start building Birst visualizations today.

Ready to get started?

Connect to live data from Strava with the API Driver

Connect to Strava