Reveal is a data visualization solution provided by Infragistics and can be paired with the CData API Server to build dynamic dashboards from live Typeform data. The CData API Server generates an OData API for Typeform, which is natively consumable in Reveal. In this article, we walk through connecting to Typeform in API Server and connecting to the API Server from Infragistics Reveal to create a simple dashboard.
Connect to Typeform from API Server
CData API Server uses a straightforward, point-and-click interface to connect to data sources and generate APIs.
- Open API Server and click Settings -> Connection -> Add Connection
π Adding a connection
- Select "Typeform"
π Selecting a Connector (Salesforce is shown).
- Enter the necessary authentication properties to connect to Typeform.
Start by setting the Profile connection property to the location of the TypeForm Profile on disk (e.g. C:\profiles\TypeForm.apip). Next, set the ProfileSettings connection property to the connection string for TypeForm (see below).
TypeForm API Profile Settings
Authentication to TypeForm uses the OAuth standard.
To authenticate to TypeForm, you must first register and configure an OAuth application with TypeForm here: https://admin.typeform.com/account#/section/tokens. Your app will be assigned a client ID and a client secret which can be set in the connection string. More information on setting up an OAuth application can be found at https://developer.typeform.com/get-started/.
Note that there are several different use scenarios which all require different redirect URIs:
- CData Desktop Applications: CData desktop applications (Sync, API Server, ArcESB) accept OAuth tokens at /src/oauthCallback.rst. The host and port is the same as the default port used by the application. For example, if you use http://localhost:8019/ to access CData Sync then the redirect URI will be http://localhost:8019/src/oauthCallback.rst.
- CData Cloud Applications: CData cloud applications are similar to their desktop counterparts. If you access Connect AI at https://1.2.3.4/ then you should use the redirect https://1.2.3.4/src/oauthCallback.rst.
- Desktop Application: When using a desktop application, the URI https://localhost:33333 is recommended.
- Web Application: When developing a web application using the driver, use your own URI here such as https://my-website.com/oauth.
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 your app settings.
- OAuthClientSecret: Set this to Client Secret that is specified in your app settings.
- CallbackURL: Set this to the Redirect URI you specified in your app settings.
π Configuring a connection (Salesforce is shown).
Add Typeform Resource Definitions in API Server
After connecting to Typeform, create Resources, which represent API endpoints for Typeform data.
- Click Settings -> Resources -> Add Resource
π Adding a new resource
- Select the Typeform connection
π Selecting a connection (Salesforce is shown)
- Select the table you wish to retrieve and click Next
π Selecting a Table (Salesforce is shown)
- (Optional) Edit the resource to select specific fields and more
- Save the settings
Add an API Server User
Create a User to connect to Typeform from Reveal through API Server.
- Click Settings -> Users
- Click Add
- Configure a User with access to the Typeform Connection and Resource(s)
π Creating a new user
π API Server users
(Optional) Configure Cross-Origin Resource Sharing (CORS)
When accessing and connecting to multiple different domains from an application such as Ajax, there is a possibility of violating the limitations of cross-site scripting. In that case, configure the CORS settings in Settings -> Server.
- Enable cross-origin resource sharing (CORS): ON
- Allow all domains without '*': ON
- Access-Control-Allow-Methods: GET, PUT, POST, OPTIONS
- Access-Control-Allow-Headers: Authorization
Save the changes to the settings.
π Configuring CORS settings
Create a Dashboard in Reveal
With the API Server configured, we can visualize Typeform data in Reveal.
- Log into Reveal and click Dashboards -> New
π Adding a new dashboard
- Click Data Source -> OData Feed
π Adding a new OData data source
- Specify the API Server API endpoint URL, for example: https://serverurl/api.rsc
π Configuring the OData URL
- Select Generic Credentials and specify the API Server username and authentication token
π Configuring the credentials
- Select the entity you wish to visualize
π Selecting an entity to visualize (Salesforce is shown.)
- Select fields and choose a chart type
π Visualizing data in Reveal (Salesforce is shown.)
More Information & Free Trial
At this point, you have created a simple dashboard from live Typeform data. For more information on creating OData feeds from Typeform (and more than 150 other sources), visit the API Server page. Download a free, 30-day trial and start working live Typeform data in tools that consume OData APIs.