Validate Procore Data with QuerySurge



Access and validate Procore data in QuerySurge using the CData JDBC Driver.

QuerySurge is a smart data testing solution that automates data validation and testing. When paired with the CData API Driver for JDBC, QuerySurge can work with live Procore data. This article walks through connecting to Procore data from QuerySurge.

With built-in optimized data processing, the CData JDBC Driver offers unmatched performance for interacting with live Procore data. When you issue complex SQL queries to Procore, the driver pushes supported SQL operations, like filters and aggregations, directly to Procore and utilizes the embedded SQL engine to process unsupported operations client-side (often SQL functions and JOIN operations). Its built-in dynamic metadata querying allows you to work with and analyze Procore data using native data types.

Connecting to Procore Data in QuerySurge

To connect to live Procore data from QuerySurge, you need to deploy the JDBC Driver JAR file to your QuerySurge Agent(s) and add a new connection from the QuerySurge Admin view.

Deploy the JDBC Driver

  1. Download the CData API Driver for JDBC installer, unzip the package, and run the JAR file to install the driver.
  2. Once the driver is installed, stop the Agent Service.
  3. Copy the JAR File (and license file if it exists) from the installation location (typically C:\Program Files\CData\CData API Driver for JDBC\lib\) to your Agent(s) (QuerySurge_install_dir\agent\jdbc).
  4. Restart the Agent Service.

For more information on deploying JDBC drivers for QuerySurge, refer to the QuerySurge Knowledge Base.

Configure a New Connection to Procore

  1. Log into QuerySurge and navigate to the Admin view.
  2. Click Configuration -> Connections in the Administration Tree.
  3. Click Add to create a new connection.
  4. In the QuerySurge Connection Wizard, click Next.
  5. Name the connection (e.g. CData JDBC Connection to Procore).
  6. Set the Data Source to "All Other JDBC Connections (Connection Extensibility)" and click Next.
  7. Set the Driver Class to cdata.jdbc.api.APIDriver and click Next.
  8. Set the Connection URL using the necessary connection properties to authenticate with Procore. Your Connection URL will look something like the following:

    jdbc:api:Profile=C:\profiles\Procore.apip;Authscheme=OAuth;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;CallbackUrl=your_callback_url;InitiateOAuth=GETANDREFRESH

    Built-in Connection String Designer

    For assistance in constructing the JDBC URL, use the connection string designer built into the Procore 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.

    Start by setting the Profile connection property to the location of the Procore Profile on disk (e.g. C:\profiles\Procore.apip). Next, set the ProfileSettings connection property to the connection string for Procore (see below).

    Procore API Profile Settings

    To authenticate to Procore, and connect to your own data or to allow other users to connect to their data, you can use the OAuth standard.

    First, you will need to register an OAuth application with Procore. You can do so by logging to your Developer Account and going to Create New App. Follow all necessary steps to register your app. First you will need to create a new version of Sandbox Manifest and then promote it to Production in order to get your Production Crendentials. Your Oauth application will be assigned a client id and a client secret.

    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 the client_id that is specified in you app settings.
    • OAuthClientSecret: Set this to the client_secret that is specified in you app settings.
    • CallbackURL: Set this to the Redirect URI that is specified in your app settings
  9. Set the Test Query to enable the Test Connection button for the Connection (e.g. SELECT * FROM Companies LIMIT 1) and click Next.
  10. Click Test Connection to ensure the connection is configured properly and click Save to add the connection.

Once the connection is added, you can write SQL queries against your Procore data in QuerySurge.

Compare Procore Data Queries with a QueryPair

With the connection configured, you can follow the steps below to compare querying Procore data with a QueryPair.

  1. Select "Design Library" from the Design Menu
  2. Click QueryPairs under QuerySurge Design
  3. Click "Create New QueryPair"
  4. Name the QueryPair and click Save
  5. In either the Source or Target panes, select the connection created above (select the same connection to query Procore twice or another connection to perform a comparison)
  6. Write queries in the Editor for each pane, e.g. SELECT * FROM Companies
  7. Click the "Design-Time Run" tab to execute the queries
  8. When the query execution is finished, click "View Query Results" to see the Procore data returned by the query

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

Ready to get started?

Connect to live data from Procore with the API Driver

Connect to Procore