summaryrefslogtreecommitdiffstats
path: root/docs/design.rst
blob: dd1472c91cba382289825f9eef90053afbba802e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
.. This work is licensed under a Creative Commons Attribution 4.0 International License.
.. http://creativecommons.org/licenses/by/4.0
.. Copyright (C) 2021-2024 Nordix Foundation

.. DO NOT CHANGE THIS LABEL FOR RELEASE NOTES - EVEN THOUGH IT GIVES A WARNING
.. _design:


DMI-Plugin Design
#################

.. toctree::
   :maxdepth: 1

Offered APIs
============

The DMI-Plugin supports the public APIs listed in the link below:

:download:`DMI Rest OpenApi Specification <api/swagger/openapi.yaml>`

:download:`DMI Datajob OpenApi Specification <api/swagger/openapi-datajob.yaml>`

View Offered APIs
-----------------

The standard for API definition in the RESTful API world is the OpenAPI Specification (OAS).
The OAS 3, which is based on the original "Swagger Specification", is being widely used in API developments.

Specification can be accessed using following URI:

.. code-block:: bash

  http://<hostname>:<port>/v3/api-docs?group=dmi-plugin-docket

Additionally, the Swagger User Interface can be found at the following URI. The component may be changed between CPS-Core
and CPS-NCMP using the drop down table in the top right:

.. code-block:: bash

  http://<hostname>:<port>/swagger-ui/index.html?configUrl=/v3/api-docs/swagger-config#/

Health Check APIs
=================

The healthcheck URL can be accessed using following URI:

.. code-block:: bash

  http://<hostname>:<port>/actuator/health

The Health check endpoint is essential for monitoring the status of DMI-Plugins.
CPS is using a Spring Boot pattern here which can easily be configured for any spring boot application.
Springboot provides a built-in Health Check feature through the Spring Boot Actuator module.

Consumed APIs
=============

- SDNC: REST based interface exposed by the SDNC client. This is used to retrieve the yang resources and modules for CPS.