Do you want to access REST API data from Tableau for analytics or data visualization? It can be tricky, as connecting to any REST API usually requires investing time and custom programming. Fortunately, with Progress DataDirect Autonomous REST Connector, you can connect to any REST API without any code and query the REST service using SQL 92.
The Autonomous REST Connector uses sampling to normalize the JSON responses from REST API and make them available as relational tables. It empowers you to use the full capabilities of SQL, including joining data from different endpoints.
To get you started with the Autonomous REST Connector, in this tutorial, we will walk you through the process of connecting to HubSpot API from Tableau. HubSpot is a popular automation and CRM platform for marketing, sales, and customer service. This tutorial will give you an overview of how flexible Autonomous REST Connector is and how it works. Let’s get started.
Note: This tutorial is for demonstration purposes only. The preferred method to get connected to HubSpot and other publicly accessible REST services is through the prebuilt model files. For details, refer to Getting started using prebuilt Model files (Windows).
HubSpot offers two means of authentication – OAuth 2.0 and API Keys. Both mechanisms are supported by the Autonomous REST Connector.
For this tutorial, we will use OAuth 2.0 for authentication.
Create an ODBC Data Source
4. Click Fetch OAuth Token; then, click Test Connect to connect to the HubSpot API.
DataDirect AutoREST.tdc
C:\Users\user_name\Documents\My Tableau Repository\Datasources
Result: A list of tables made available by Autonomous REST Connector by normalizing the JSON response from HubSpot API appears. You can now access the REST API data as usual.
To connect to multiple endpoints using Autonomous REST Connector:
Complete the following fields to create a new project; then, click OK:
The Configuration Manager opens to the Connection tab.
Note: Authentication properties specified through the Configuration Manager are not persisted in the Model file. To share authentication settings among all connections using the file, you must manually update the Model file.
Provide the minimum required information for an endpoint to which you want to issue requests:
%20
. For example: >companies/v2/companies/pagedFor testing purposes, you can add the following endpoints:
Table Name | Endpoint |
---|---|
Companies | companies/v2/companies/paged |
CompanyProperties | properties/v1/companies/properties |
Contacts | contacts/v1/lists/all/contacts/all |
ContactProperties | properties/v1/contacts/properties |
Deals | deals/v1/deal/paged |
DealProperties | properties/v1/deals/properties |
DealPipelines | deals/v1/pipelines |
Engagement | engagements/v1/engagements/paged |
Forms | forms/v2/forms |
Owners | owners/v2/owners |
Products | crm-objects/v1/objects/products/paged |
Tickets | crm-objects/v1/objects/tickets/paged |
Emails | marketing-emails/v1/emails |