Analyze NASA 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 NASA data. The CData API Server generates an OData API for NASA, which is natively consumable in Reveal. In this article, we walk through connecting to NASA in API Server and connecting to the API Server from Infragistics Reveal to create a simple dashboard.
Connect to NASA 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 "NASA"
- Enter the necessary authentication properties to connect to NASA.
Using API Key Authentication
Most NASA API endpoints (APOD, NeoWS, DONKI, TechTransfer) require a NASA API key. Register for a free key at https://api.nasa.gov. The default DEMO_KEY provides limited access (30 requests/hour, 50 requests/day); a registered key allows 1,000 requests/hour.
The following endpoints do not require an API key and work without authentication: EONET (Earth Observatory Natural Event Tracker), EPIC (Earth Polychromatic Imaging Camera), NASA Image and Video Library, and TechPort.
After obtaining your API key, set the following connection properties:
- AuthScheme: Set this to APIKey.
- APIKey: Set this to your NASA API key. Use DEMO_KEY for limited testing.
Example Connection String
Profile=C:\profiles\NASA.apip;AuthScheme=APIKey;APIKey=YOUR_NASA_API_KEY
Connecting to NASA
Once the authentication is configured, you can connect to NASA and query data from any of the available tables such as AstronomyPictureOfDay, NearEarthObjectFeed, EonetEvents, and NasaImageLibrary.
Add NASA Resource Definitions in API Server
After connecting to NASA, create Resources, which represent API endpoints for NASA data.
- Click Settings -> Resources -> Add Resource
- Select the NASA 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 NASA from Reveal through API Server.
- Click Settings -> Users
- Click Add
- Configure a User with access to the NASA 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 NASA 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 NASA data. For more information on creating OData feeds from NASA (and more than 150 other sources), visit the API Server page. Download a free, 30-day trial and start working live NASA data in tools that consume OData APIs.