Analyze Discourse Data in Infragistics Reveal
Reveal is a data visualization solution provided by Infragistics and can be paired with the CData API Server to build dynamic dashboards from live Discourse data. The CData API Server generates an OData API for Discourse, which is natively consumable in Reveal. In this article, we walk through connecting to Discourse in API Server and connecting to the API Server from Infragistics Reveal to create a simple dashboard.
Connect to Discourse 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
- Select "Discourse"
- Enter the necessary authentication properties to connect to Discourse.
The Discourse API uses API Key authentication.
Using API Key Authentication
Discourse requires API Key and Username for authentication. API Keys are generated in the Discourse Admin panel under the API section. You can create user-specific API keys or all-users API keys. Once you have obtained the API Key, set it along with the Domain and Username in the ProfileSettings connection property.
Example Connection string
Profile=C:\profiles\Discourse.apip;ProfileSettings='Domain=forum.example.com;APIKey=your_api_key;Username=your_username;'AuthScheme=APIKey;
Add Discourse Resource Definitions in API Server
After connecting to Discourse, create Resources, which represent API endpoints for Discourse data.
- Click Settings -> Resources -> Add Resource
- Select the Discourse connection
- Select the table you wish to retrieve and click Next
- (Optional) Edit the resource to select specific fields and more
- Save the settings
Add an API Server User
Create a User to connect to Discourse from Reveal through API Server.
- Click Settings -> Users
- Click Add
- Configure a User with access to the Discourse Connection and Resource(s)
(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.
Create a Dashboard in Reveal
With the API Server configured, we can visualize Discourse data in Reveal.
- Log into Reveal and click Dashboards -> New
- Click Data Source -> OData Feed
- Specify the API Server API endpoint URL, for example: https://serverurl/api.rsc
- Select Generic Credentials and specify the API Server username and authentication token
- Select the entity you wish to visualize
- Select fields and choose a chart type
More Information & Free Trial
At this point, you have created a simple dashboard from live Discourse data. For more information on creating OData feeds from Discourse (and more than 150 other sources), visit the API Server page. Download a free, 30-day trial and start working live Discourse data in tools that consume OData APIs.