Spotify Reporting and Star Schemas in OBIEE

Jerod Johnson
Jerod Johnson
Director, Technology Evangelism
Create a star schema that shows perspectives on Spotify facts in real time.

The CData ODBC Driver for Spotify is a standard database driver that can integrate real-time access to Spotify data into your data warehouse or directly into your reporting tool. This article shows how to bypass the data warehouse and import operational Spotify data into Oracle Business Intelligence Enterprise Edition (OBIEE).

See the knowledge base for ODBC integrations with ETL tools like Informatica PowerCenter. For an ETL solution into Oracle Warehouse Builder, use the driver with the Oracle ODBC Gateway to Access Spotify Data as a Remote Oracle Database.

Connect to Spotify as an ODBC Data Source

If you have not already, first specify connection properties in an ODBC DSN (data source name). This is the last step of the driver installation. You can use the Microsoft ODBC Data Source Administrator to create and configure ODBC DSNs.

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.

When you configure the DSN, you may also want to set the Max Rows connection property. This will limit the number of rows returned, which is especially helpful for improving performance when designing reports and visualizations.

Import Spotify Metadata

Follow the steps below to use the OBIEE Client Tools to import Spotify metadata into an OBIEE repository. You can then integrate Spotify data into your business models.

  1. Open the Administration Tool and click File -> New Repository.

  2. In the Connection Type menu, select ODBC 3.5 and select the CData DSN.
  3. Select the metadata types you want to import under the Relational Sources option and then select Spotify tables.
You can now create star schemas based on Spotify tables:

Ready to get started?

Connect to live data from Spotify with the API Driver

Connect to Spotify