How to Connect DBeaver to Spotify via a JDBC Driver

Jerod Johnson
Jerod Johnson
Director, Technology Evangelism
Manage Spotify data with visual tools in DBeaver like the query browser.

The CData API Driver for JDBC implements JDBC standards that enable third-party tools to interoperate, from wizards in IDEs to business intelligence tools. This article shows how to connect to Spotify data with wizards in DBeaver and browse data in the DBeaver GUI.

Create a JDBC Data Source for Spotify Data

Follow the steps below to load the driver JAR in DBeaver.

  1. Open the DBeaver application and, in the "Database" menu, select the "Driver Manager" option. Click "New" to open the "Create new driver" form.
  2. In the Settings tab:
    • Set Driver Name to a user-friendly name for the driver (e.g. CData API Driver for JDBC).
    • Set Class Name to the class name for the JDBC driver: cdata.jdbc.api.APIDriver.
    • Set URL Template to jdbc:api:.
  3. In the Libraries tab, click "Add File," navigate to the "lib" folder in the installation directory (C:\Program Files\CData[product_name] XXXX\) and select the JAR file (cdata.jdbc.API.jar).

Create a Connection to Spotify Data

Follow the steps below to add credentials and other required connection properties.

  1. In the "Database" menu, click "New Database Connection."
  2. In the "Connect to a database" wizard that results, select the driver you just created (e.g. CData API Driver for JDBC) and click "Next >."
  3. On the Main tab of the configuration wizard, set the JDBC URL, using the required connection properties:

    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.

    Below is a typical connection string:

    jdbc:api:Profile=C:\profiles\Spotify.apip;AuthScheme=OAuth;InitiateOAuth=GETANDREFRESH;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;CallbackURL=http://localhost:33333;
    
  4. Click "Test Connection ..." to ensure you have configured the connection properly.
  5. Click "Finish."

Query Spotify Data

You can now query information from the tables exposed by the connection: Right-click a Table and then click View Table. The data is available on the Data tab.

More Information & Free Trial

Download a free, 30-day trial of the CData API Driver for JDBC and start working with your live Spotify data in DBeaver. Join the CData Community or reach out to our Support Team if you have any questions.

Ready to get started?

Connect to live data from Spotify with the API Driver

Connect to Spotify