Connect to Strava Data in CloverDX (formerly CloverETL)

Jerod Johnson
Jerod Johnson
Director, Technology Evangelism
Transfer Strava data using the visual workflow in the CloverDX data integration tool.

The CData JDBC Driver for Strava enables you to use the data transformation components in CloverDX (formerly CloverETL) to work with Strava as sources. In this article, you will use the JDBC Driver for Strava to set up a simple transfer into a flat file. The CData JDBC Driver for Strava enables you to use the data transformation components in CloverDX (formerly CloverETL) to work with Strava as sources. In this article, you will use the JDBC Driver for Strava to set up a simple transfer into a flat file.

Connect to Strava as a JDBC Data Source

  1. Create the connection to Strava data. In a new CloverDX graph, right-click the Connections node in the Outline pane and click Connections -> Create Connection. The Database Connection wizard is displayed.
  2. Click the plus icon to load a driver from a JAR. Browse to the lib subfolder of the installation directory and select the cdata.jdbc.api.jar file.
  3. Enter the JDBC URL.

    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.

    A typical JDBC URL is below:

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

Query Strava Data with the DBInputTable Component

  1. Drag a DBInputTable from the Readers selection of the Palette onto the job flow and double-click it to open the configuration editor.
  2. In the DB connection property, select the Strava JDBC data source from the drop-down menu.
  3. Enter the SQL query. For example:
    SELECT ,  FROM Athlete WHERE  = ''

Write the Output of the Query to a UniversalDataWriter

  1. Drag a UniversalDataWriter from the Writers selection onto the jobflow.
  2. Double-click the UniversalDataWriter to open the configuration editor and add a file URL.
  3. Right-click the DBInputTable and then click Extract Metadata.
  4. Connect the output port of the DBInputTable to the UniversalDataWriter.
  5. In the resulting Select Metadata menu for the UniversalDataWriter, choose the Athlete table. (You can also open this menu by right-clicking the input port for the UniversalDataWriter.)
  6. Click Run to write to the file.

Ready to get started?

Connect to live data from Strava with the API Driver

Connect to Strava