The RENergetic system provides different microservices to allow the optimisation of energy consumption. Each microservice can be realised by utilising the respective API.
The RENergetic microservice-APIs are:
If you haven't deployed the system yet, you can replace {YOUR_FRONTEND_URL}
with https://front-ren-prototype.apps.paas-dev.psnc.pl to see the documentation from the RENergetic test environment.
The APIs are protected by OAuth2, all API endpoints need a Bearer Token to accept the requests, this token is provided by Keycloak. The token also contains information about the user and its role and is used by the APIs to accept or deny access or return different information for each user.
It manages the RENergetic data model, creates most of the tables used by the system and allows to inspect data and do insertion, update and delete operations on it.
OpenAPI specification: {YOUR_FRONTEND_URL}
/api-base/1.0/api/
The data API relates to the RENergetic relational database (RDB) measurements with the InfluxDB measurements and returns the UI panels data and configuration.
The UI panels have provide some RDB measurements, those measurements are used to decide which data should be retrieved from Influx DB to be shown in the UI. Furthermore, the API is utilised to fetch previously set up user configurations (colors, position on the UI, titles...), from the Influx DB to set up the UI.
OpenAPI specification: {YOUR_FRONTEND_URL}
/api-data/1.0/api/
It manages the RENergetic users, it allows to create, update and delete users. It also allows to modify the roles assigned to the users and list them.
OpenAPI specification: {YOUR_FRONTEND_URL}
/api-user/1.0/api/
This API groups all information needed to build the RENergetic Interactive Platform menus and previews.
The UI sends the logged user information to the API and returns the information that the user is authorised to access (public panels, panels related with its assets, menus allowed to its role...)
OpenAPI specification: {YOUR_FRONTEND_URL}
/api-wrapper/1.0/api/
It manages the heat demand response requests and allows to get results and configure them.
OpenAPI specification: {YOUR_FRONTEND_URL}
/api-hdr/1.0/api/
It enables the configuration of abstract meters, which are needed to configure different RENergetic KPIs. Also, the KPI API allows to get the abstract meter and KPI data from InfluxDB and list the abstract meters configuration.
Finally, this service execute a process to calculate the RENergetic KPIs calculation every 4 hours (the period for this calculation can be configured in the APIs properties before installing it).
OpenAPI specification: {YOUR_FRONTEND_URL}
/api-kpi/1.0/api/
The models and all the AI is on Kubeflow, so this API is used to integrate it in the RENergetic interactive platform.
This API will give information in relation with the experiments, pipelines, runs, etc. It will also allow to run pipelines in demand configuring the parameters asked in each of them.
OpenAPI specification: {YOUR_FRONTEND_URL}
/api-kubeflow/1.0/api/
It allows to insert data from sensor or user databases to RENergetic system.
OpenAPI specification: {YOUR_FRONTEND_URL}
/api-ingestion/1.0/api/