Integrate Spotify Data in Your Informatica Cloud Instance
Informatica Cloud allows you to perform extract, transform, and load (ETL) tasks in the cloud. With the Cloud Secure Agent and the CData API Driver for JDBC, you get live access to Spotify data, directly within Informatica Cloud. In this article, we will walk through downloading and registering the Cloud Secure Agent, connecting to Spotify through the JDBC Driver and generating a mapping that can be used in any Informatica Cloud process.
Informatica Cloud Secure Agent
To work with the Spotify data through the JDBC Driver, install the Cloud Secure Agent.
- Navigate to the Administrator page in Informatica Cloud
- Select the Runtime Environments tab
- Click "Download Secure Agent"
- Make note of the Install Token
- Run the installer on the client machine and register the Cloud Secure Agent with your username and install token
NOTE: It may take some time for all of the Cloud Secure Agent services to get up and running.
Connecting to the Spotify JDBC Driver
With the Cloud Secure Agent installed and running, you are ready to connect to Spotify through the JDBC Driver.
Adding the JDBC Driver to the Secure Agent Machine
- Navigate to the following directory on the Secure Agent machine:
%Secure Agent installation directory%/ext/connectors/thirdparty/
- Create a folder and add the driver JAR file (cdata.jdbc.api.jar) based on the type of mapping that you want to configure.
For mappings, create the following folder and add the driver JAR file:
informatica.jdbc_v2/common
For mappings in advanced mode, also create the following folder and add the driver JAR file:
informatica.jdbc_v2/spark
- Restart the Secure Agent.
Connecting to Spotify in Informatica Cloud
After installing the driver JAR file, you are ready to configure your connection to Spotify in Informatica Cloud. Start by clicking the Connections tab and clicking New Connection. Fill in the following properties for the connection:- Connection Name: Name your connection (i.e.: CData Spotify Connection)
- Type: Select "JDBC_V2"
- Runtime Environment: Select the runtime environment where you installed the Secure Agent
- JDBC Driver Class Name: The name of the JDBC driver class: cdata.jdbc.api.APIDriver
- JDBC Connection URL: Set this to the JDBC URL for Spotify. Your URL will look similar to the following:
jdbc:api:Profile=C:\profiles\Spotify.apip;AuthScheme=OAuth;InitiateOAuth=GETANDREFRESH;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;CallbackURL=http://localhost:33333;
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
- Visit the Spotify Developer Dashboard.
- Log in with your Spotify account and click Create app.
- Provide an app name, description, and set a Redirect URI (e.g.,
http://localhost:33333
for desktop applications). - 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.jarFill in the connection properties and copy the connection string to the clipboard.
- Username: Set this to a placeholder value (since Spotify does not require a username)
- Password: Set this to a placeholder value (since Spotify does not require a password)
Create a Mapping for Spotify Data
With the connection to Spotify configured, we can now access Spotify data in any Informatica process. The steps below walk through creating a mapping for Spotify to another data target.
- Navigate to the Data Integration page
- Click New.. and select Mapping from the Mappings tab
- Click the Source Object and in the Source tab, select the Connection and set the Source Type
- Click "Select" to choose the table to map
- In the Fields tab, select the fields from the Spotify table to map
- Click the Target object and configure the Target source, table and fields. In the Field Mapping tab, map the source fields to the target fields.
With the mapping configured, you are ready to start integrating live Spotify data with any of the supported connections in Informatica Cloud. Download a free, 30-day trial of the CData API Driver for JDBC and start working with your live Spotify data in Informatica Cloud today.