Bosch IoT Insights

External data source: use API from another Insights project

Customers may have a use case for REST requests from dashboards of one project ("requesting-project") to access Insights APIs from another project ("allowing-project"), in order to visualize data from "allowing-project" in "requesting-project".

Prerequisites

For this to work as a responsible person for the target project ("allowing-project") submit a request to the Insights support, asking to allow one or more other Insights projects to access the APIs of your project ("allowing-project").

Example request:

Please whitelist project 'requesting-project' to access the Insights APIs provided by our project 'allowing-project'.


Note that a user of project "requesting-project" will only be able to request data from the target project "allowing-project" if the user has the required role to access the underlying API from project "allowing-project" (Keycloak access token for the current user session is forwarded).


Limitations

  • Custom domains as target URL are not supported.

Basic steps

In your project ("requesting-project") configure a dashboard with a widget that allows to configure an external data source. As external data source set the URL of the API of another Insights project ("allowing-project"), which has whitelisted your project.

For example, this can be data provided by the query service API using a query template :

https://bosch-iot-insights.com/mongodb-query-service/v2/allowing-project/query-templates/685ab724a4d0b159d0aa68ea/execute-query      

Users of your project "requesting-project" can see the data provided that they have the required role to access the underlying API from target project "allowing-project".

Example use cases

  • Visualize processed data of another Insights project provided by the MongoDB query service.

  • Visualize device data of another Insights project provided by the Device Management API.

  • Widget with an action button that forwards data from project "requesting-project" to the data recorder endpoint of target project "allowing-project".