Reveal is a data visualization solution provided by Infragistics and can be paired with the CData API Server to build dynamic dashboards from live IBM Cloud Object Storage data. The CData API Server generates an OData API for IBM Cloud Object Storage, which is natively consumable in Reveal. In this article, we walk through connecting to IBM Cloud Object Storage in API Server and connecting to the API Server from Infragistics Reveal to create a simple dashboard.
Connect to IBM Cloud Object Storage 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 "IBM Cloud Object Storage"
π Selecting a Connector (Salesforce is shown).
- Enter the necessary authentication properties to connect to IBM Cloud Object Storage.
Register a New Instance of Cloud Object Storage
If you do not already have Cloud Object Storage in your IBM Cloud account, follow the procedure below to install an instance of SQL Query in your account:
- Log in to your IBM Cloud account.
- Navigate to the
Connecting using OAuth Authentication
There are certain connection properties you need to set before you can connect. You can obtain these as follows:
API Key
To connect with IBM Cloud Object Storage, you need an API Key. You can obtain this as follows:
- Log in to your IBM Cloud account.
- Navigate to the Platform API Keys page.
- On the middle-right corner click "Create an IBM Cloud API Key" to create a new API Key.
- In the pop-up window, specify the API Key name and click "Create". Note the API Key as you can never access it again from the dashboard.
Cloud Object Storage CRN
If you have multiple accounts, specify the CloudObjectStorageCRN explicitly. To find the appropriate value, you can:
- Query the Services view. This will list your IBM Cloud Object Storage instances along with the CRN for each.
- Locate the CRN directly in IBM Cloud. To do so, navigate to your IBM Cloud Dashboard. In the Resource List, Under Storage, select your Cloud Object Storage resource to get its CRN.
Connecting to Data
You can now set the following to connect to data:
- InitiateOAuth: Set this to GETANDREFRESH. You can use InitiateOAuth to avoid repeating the OAuth exchange and manually setting the OAuthAccessToken.
- ApiKey: Set this to your API key which was noted during setup.
- CloudObjectStorageCRN (Optional): Set this to the cloud object storage CRN you want to work with. While the connector attempts to retrieve this automatically, specifying this explicitly is recommended if you have more than Cloud Object Storage account.
When you connect, the connector completes the OAuth process.
- Extracts the access token and authenticates requests.
- Saves OAuth values in OAuthSettingsLocation to be persisted across connections.
π Configuring a connection (Salesforce is shown).
Add IBM Cloud Object Storage Resource Definitions in API Server
After connecting to IBM Cloud Object Storage, create Resources, which represent API endpoints for IBM Cloud Object Storage data.
- Click Settings -> Resources -> Add Resource
π Adding a new resource
- Select the IBM Cloud Object Storage 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 IBM Cloud Object Storage from Reveal through API Server.
- Click Settings -> Users
- Click Add
- Configure a User with access to the IBM Cloud Object Storage 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 IBM Cloud Object Storage 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 IBM Cloud Object Storage data. For more information on creating OData feeds from IBM Cloud Object Storage (and more than 150 other sources), visit the API Server page. Download a free, 30-day trial and start working live IBM Cloud Object Storage data in tools that consume OData APIs.