Create Informatica Mappings From/To a JDBC Data Source for Spotify

Jerod Johnson
Jerod Johnson
Director, Technology Evangelism
Create Spotify data objects in Informatica using the standard JDBC connection process: Copy the JAR and then connect.

Informatica provides a powerful, elegant means of transporting and transforming your data. By utilizing the CData JDBC Driver for Spotify, you are gaining access to a driver based on industry-proven standards that integrates seamlessly with Informatica's powerful data transportation and manipulation features. This tutorial shows how to transfer and browse Spotify data in Informatica PowerCenter.

Deploy the Driver

To deploy the driver to the Informatica PowerCenter server, copy the CData JAR and .lic file, located in the lib subfolder in the installation directory, to the following folder: Informatica-installation-directory\services\shared\jars\thirdparty.

To work with Spotify data in the Developer tool, you will need to copy the CData JAR and .lic file, located in the lib subfolder in the installation directory, into the following folders:

  • Informatica-installation-directory\client\externaljdbcjars
  • Informatica-installation-directory\externaljdbcjars

Create the JDBC Connection

Follow the steps below to connect from Informatica Developer:

  1. In the Connection Explorer pane, right-click your domain and click Create a Connection.
  2. In the New Database Connection wizard that is displayed, enter a name and Id for the connection and in the Type menu select JDBC.
  3. In the JDBC Driver Class Name property, enter:
    cdata.jdbc.api.APIDriver
  4. In the Connection String property, enter the JDBC URL, using the connection properties for Spotify.

    Using OAuth Authentication

    Spotify uses OAuth 2.0 for authentication. You will need to create an application in the Spotify Developer Dashboard to obtain your client credentials.

    Setting Up Your Spotify Application

    1. Visit the Spotify Developer Dashboard.
    2. Log in with your Spotify account and click Create app.
    3. Provide an app name, description, and set a Redirect URI (e.g.,
      http://localhost:33333
      for desktop applications).
    4. Copy your Client ID and Client Secret from the app settings.

    Connection Properties

    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 your Spotify application's Client ID.
    • OAuthClientSecret: Set this to your Spotify application's Client Secret.
    • Scope: Set this to the required OAuth scopes (space-separated). The default includes all read scopes needed for the tables in this profile.
    • CallbackURL: Set this to the Redirect URI configured in your Spotify application (e.g., http://localhost:33333).

    Example Connection String

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

    Available OAuth Scopes

    • user-read-private: Read access to user's subscription details and explicit content settings.
    • user-read-email: Read access to user's email address.
    • user-library-read: Read access to a user's saved tracks, albums, episodes, shows, and audiobooks.
    • playlist-read-private: Read access to user's private playlists.
    • playlist-read-collaborative: Read access to collaborative playlists the user follows.
    • user-follow-read: Read access to the list of artists the current user follows.
    • user-read-playback-state: Read access to a user's player state (device, current track, progress).
    • user-read-currently-playing: Read access to a user's currently playing content.
    • user-read-playback-history: Read access to a user's recently played tracks.
    • user-top-read: Read access to a user's top artists and tracks.

    Built-in Connection String Designer

    For assistance in constructing the JDBC URL, use the connection string designer built into the Spotify 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 connection string is below:

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

Browse Spotify Tables

After you have added the driver JAR to the classpath and created a JDBC connection, you can now access Spotify entities in Informatica. Follow the steps below to connect to Spotify and browse Spotify tables:

  1. Connect to your repository.
  2. In the Connection Explorer, right-click the connection and click Connect.
  3. Clear the Show Default Schema Only option.

You can now browse Spotify tables in the Data Viewer: Right-click the node for the table and then click Open. On the Data Viewer view, click Run.

Create Spotify Data Objects

Follow the steps below to add Spotify tables to your project:

  1. Select tables in Spotify, then right-click a table in Spotify, and click Add to Project.
  2. In the resulting dialog, select the option to create a data object for each resource.
  3. In the Select Location dialog, select your project.

    Create a Mapping

    Follow the steps below to add the Spotify source to a mapping:

    1. In the Object Explorer, right-click your project and then click New -> Mapping.
    2. Expand the node for the Spotify connection and then drag the data object for the table onto the editor.
    3. In the dialog that appears, select the Read option.

    Follow the steps below to map Spotify columns to a flat file:

    1. In the Object Explorer, right-click your project and then click New -> Data Object.
    2. Select Flat File Data Object -> Create as Empty -> Fixed Width.
    3. In the properties for the Spotify object, select the rows you want, right-click, and then click copy. Paste the rows into the flat file properties.
    4. Drag the flat file data object onto the mapping. In the dialog that appears, select the Write option.
    5. Click and drag to connect columns.

    To transfer Spotify data, right-click in the workspace and then click Run Mapping.

Ready to get started?

Connect to live data from Spotify with the API Driver

Connect to Spotify