Design BIRT Reports on Smartsheet Data

Ready to get started?

Download for a free trial:

Download Now

Learn more:

Smartsheet JDBC Driver

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



Provide current Smartsheet data to your embedded analytics.

The CData JDBC Driver for Smartsheet integrates connectivity to Smartsheet APIs into your data-driven Java applications. You can use the CData JDBC Driver for Smartsheet with the BIRT (Business Intelligence Reporting Tools) platform to create BIRT reports that reflect changes to your data in real time.

  1. If you have not already done so, install the BIRT Framework plugin and the Database Development plugin for Eclipse.
  2. Click File -> New -> Report. The Report Design perspective is opened.
  3. In the Data Explorer, right-click Data Sources and click New Data Source.
  4. Select the Create from a Data Source Type in the Following List option and select JDBC Data Source.
  5. Click Manage Drivers and add the driver JAR, located in the lib subfolder of the installation folder.
  6. In the Database URL box, enter the JDBC URL containing the connection string.

    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.

    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.

    When you configure the JDBC URL, 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.

    A typical JDBC URL is below:

    jdbc:smartsheet:OAuthClientId=MyOauthClientId;OAuthClientSecret=MyOAuthClientSecret;CallbackURL=http://localhost:33333;InitiateOAuth=GETANDREFRESH
  7. Right-click the Data Sets folder and select the JDBC data source for Smartsheet.
  8. In the resulting dialog, build the SELECT query to be used to retrieve the data for the report. This article uses the following query: SELECT TaskName, Progress FROM Sheet_Event_Plan_Budget
  9. In the Palette, drag a Chart onto the editor. The chart wizard is displayed.
  10. After selecting the chart type, drag columns onto the chart fields on the Select Data tab.
  11. Click Run -> View Report -> In Web Viewer to view the report.

Your BIRT reports can now pick up any updates to Smartsheet data.

To publish the report to your application server, add the driver JAR to the BIRT Viewer's classpath. For more information, see the CData KB for guides to deploying the JDBC Driver on Java application servers.