Connect to Spotify Data in NetBeans
The CData JDBC Driver for Spotify integrates connectivity to live Spotify data in IDEs that support JDBC. The JDBC standard enables you to use built-in data access wizards and other tools supporting rapid development. This article shows how to connect to Spotify data in NetBeans. You will create a connection and load Spotify data in the Table Editor.
Create a JDBC Data Source for Spotify in NetBeans
To create the JDBC data source, expand the Database node in the Service window, right-click the Drivers node, and select New Driver. In the New Driver wizard that results, enter the following information:
- Driver File(s): Click Add and, in the file explorer dialog that appears, select the cdata.jdbc.api.jar file. The driver JAR is located in the lib subfolder of the installation directory.
- Driver Class: Click Find to search for the driver class inside the JAR. Then select cdata.jdbc.api.APIDriver from the menu.
- Name: Enter the name for the driver.
Define Connection Parameters
Follow the steps below to define required connection properties:
In the Service window, right-click the Database node and click New Connection.
In the New Connection Wizard, enter the following connection properties:
- Driver Name: In the menu, select the CData JDBC Driver for Spotify.
- User Name: Enter the username. This can also be defined in the JDBC URL.
- Password: Enter the password. This can also be defined in the JDBC URL.
JDBC URL: Specify the JDBC URL.
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.jar
Fill in the connection properties and copy the connection string to the clipboard.
A typical JDBC URL is 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;
Query Spotify Data
To connect to Spotify data, right-click the connection in the Database node and click Connect. After the connection is established, you can expand it to discover schema information.
To load a table in the Data Views window, right-click the table and then click View Data..