The Developer Console is presenting a modular Architecture composed of Storage, Developer Console Core functionalities, User interface, REST API, Developer Website.
The main modules are:
- Storage allows to persist the data produced by the users.
- Developer platform is composed of a set of functionalities that can be exploited through the User Interface, REST API and Developer Website.
- Developer Platform allows you to develop and deploy your own personalized Module(s) that can extend their functionalities, giving the opportunity to present to Developers the best experience for your API.
- Developer Website is the entry point for Developers and allows them to interact with Platform.
- User interface is implemented as Web UI, and used by the Developer Console Admin’s (API Team) to set up the configuration parameters and to check status.
- REST API gives Developers the possibility to use in their applications Developer Platform functions, as an example: OAuth process is easy to integrate on their application. Another example, is when the user authorization process is integrated with API Gateway.
The Core Developer Console is composed of:
- OAuth – The Developer Console handles authentication and authorization for users defined on each application. Developer platform REST API supports an easy integration with developer’s applications.
- Application Management – it gives the Developer the possibility to manage the defined Applications. An application is a logical collection of APIs. An application is primarily used to decouple the consumer from the APIs. Each application contains a different set of configurations.
- User Management – The Developer controls the registered users on each defined Application.
- Log Management – Each application is logging the events, that can be presented to the Developer. Log functions allow to send the events into Elastic search server to be better analyzed using Kibana.
- Push Notification – The Developer can use the Push Notification function to send messages to Application users.
- Modules Management – the API Team can develop a personalized Module. Development must be done around framework.