Query Smartsheet Data in DataGrip



Create a Data Source for Smartsheet in DataGrip and use SQL to query live Smartsheet data.

DataGrip is a database IDE that allows SQL developers to query, create, and manage databases. When paired with the CData JDBC Driver for Smartsheet, DataGrip can work with live Smartsheet data. This article shows how to establish a connection to Smartsheet data in DataGrip and use the table editor to load Smartsheet data.

Create a New Driver Definition for Smartsheet

The steps below describe how to create a new Data Source in DataGrip for Smartsheet.

  1. In DataGrip, click File -> New > Project and name the project
  2. In the Database Explorer, click the plus icon () and select Driver.
  3. In the Driver tab:
    • Set Name to a user-friendly name (e.g. "CData Smartsheet Driver")
    • Set Driver Files to the appropriate JAR file. To add the file, click the plus (), select "Add Files," navigate to the "lib" folder in the driver's installation directory and select the JAR file (e.g. cdata.jdbc.smartsheet.jar).
    • Set Class to cdata.jdbc.smartsheet.Smartsheet.jar
    Additionally, in the advanced tab you can change driver properties and some other settings like VM Options, VM environment, VM home path, DBMS, etc
    • For most cases, change the DBMS type to "Unknown" in Expert options to avoid native SQL Server queries (Transact-SQL), which might result in an invalid function error
  4. Click "Apply" then "OK" to save the Connection

Configure a Connection to Smartsheet

  1. Once the connection is saved, click the plus (), then "Data Source" then "CData Smartsheet Driver" to create a new Smartsheet Data Source.
  2. In the new window, configure the connection to Smartsheet with a JDBC URL.

    Built-in Connection String Designer

    For assistance in constructing the JDBC URL, use the connection string designer built into the Smartsheet JDBC Driver. Either double-click the JAR file or execute the jar file from the command-line.

    java -jar cdata.jdbc.smartsheet.jar

    Fill in the connection properties and copy the connection string to the clipboard.

    Smartsheet uses the OAuth authentication standard. To authenticate using OAuth, you will need to register an app to obtain the OAuthClientId, OAuthClientSecret, and CallbackURL connection properties.

    However, for testing purposes you can instead use the Personal Access Token you get when you create an application; set this to the OAuthAccessToken connection property.

  3. Set URL to the connection string, e.g., jdbc:smartsheet:OAuthClientId=MyOauthClientId;OAuthClientSecret=MyOAuthClientSecret;CallbackURL=http://localhost:33333;InitiateOAuth=GETANDREFRESH
  4. Click "Apply" and "OK" to save the connection string

At this point, you will see the data source in the Data Explorer.

Execute SQL Queries Against Smartsheet

To browse through the Smartsheet entities (available as tables) accessible through the JDBC Driver, expand the Data Source.

To execute queries, right click on any table and select "New" -> "Query Console."

In the Console, write the SQL query you wish to execute. For example: SELECT TaskName, Progress FROM Sheet_Event_Plan_Budget

Download a free, 30-day trial of the CData JDBC Driver for Smartsheet and start working with your live Smartsheet data in DataGrip. Reach out to our Support Team if you have any questions.

Ready to get started?

Download a free trial of the Smartsheet Driver to get started:

 Download Now

Learn more:

Smartsheet Icon Smartsheet JDBC Driver

Easy-to-use Smartsheet client enables Java-based applications to easily consume Smartsheet Sheets, Contacts, Folders, Groups, Users, etc.