Set CPS Project Status to 'Mature'
[cps/ncmp-dmi-plugin.git] / docs / openapi / components.yml
1 components:
2   schemas:
3     ErrorMessage:
4       type: object
5       title: Error
6       properties:
7         status:
8           type: string
9         message:
10           type: string
11         details:
12           type: string
13
14     CmHandles:
15       type: object
16       properties:
17         cmHandles:
18           type: array
19           items:
20             type: string
21
22     DmiModuleReadRequestBody:
23       type: object
24       properties:
25         operation:
26           type: string
27           enum: [read]
28         dataType:
29           type: string
30         data:
31           type: object
32           properties:
33             modules:
34               type: array
35               items:
36                 type: object
37                 properties:
38                   name:
39                     type: string
40                   revision:
41                     type: string
42         cmHandleProperties:
43           type: object
44           additionalProperties:
45             type: string
46             example: system-001
47
48     ModuleSet:
49       type: object
50       properties:
51         schemas:
52           type: array
53           items:
54             type: object
55             properties:
56               moduleName:
57                 type: string
58               revision:
59                 type: string
60               namespace:
61                 type: string
62
63     YangResources:
64       type: array
65       items:
66         type: object
67         $ref: '#/components/schemas/YangResource'
68
69     YangResource:
70       properties:
71         yangSource:
72           type: string
73         moduleName:
74           type: string
75         revision:
76           type: string
77
78     DataAccessReadRequest:
79       type: object
80       properties:
81         operation:
82           type: string
83           enum: [ read ]
84         cmHandleProperties:
85           type: object
86           additionalProperties:
87             type: string
88
89     DataAccessWriteRequest:
90       type: object
91       properties:
92         operation:
93           type: string
94           enum: [ create ]
95         dataType:
96           type: string
97         data:
98           type: string
99         cmHandleProperties:
100           type: object
101           additionalProperties:
102             type: string
103
104   responses:
105     NotFound:
106       description: The specified resource was not found
107       content:
108         application/json:
109           schema:
110             $ref: '#/components/schemas/ErrorMessage'
111     Unauthorized:
112       description: Unauthorized
113       content:
114         application/json:
115           schema:
116             $ref: '#/components/schemas/ErrorMessage'
117     Forbidden:
118       description: Forbidden
119       content:
120         application/json:
121           schema:
122             $ref: '#/components/schemas/ErrorMessage'
123     BadRequest:
124       description: Bad Request
125       content:
126         application/json:
127           schema:
128             $ref: '#/components/schemas/ErrorMessage'
129     Conflict:
130       description: Conflict
131       content:
132         application/json:
133           schema:
134             $ref: '#/components/schemas/ErrorMessage'
135     Ok:
136       description: OK
137       content:
138         application/json:
139           schema:
140             type: object
141     Created:
142       description: Created
143       content:
144         text/plain:
145           schema:
146             type: string
147     NoContent:
148       description: No Content
149       content: {}
150
151   parameters:
152     cmHandleInPath:
153       name: cmHandle
154       in: path
155       description: The identifier for a network function, network element, subnetwork, or any other cm object by managed Network CM Proxy
156       required: true
157       schema:
158         type: string
159
160     resourceIdentifierInPath:
161       name: resourceIdentifier
162       in: path
163       description: Resource identifier to get/set the resource data
164       required: true
165       schema:
166         type: string
167
168     acceptParamInHeader:
169       name: accept
170       in: header
171       description: Accept parameter for response, if accept parameter is null, that means client can accept any format.
172       schema:
173         type: string
174         enum: [ application/json, application/yang-data+json ]
175
176     fieldsParamInQuery:
177       name: fields
178       in: query
179       description: Fields parameter to filter resource
180       required: false
181       schema:
182         type: string
183
184     depthParamInQuery:
185       name: depth
186       in: query
187       description: Depth parameter for response
188       required: false
189       schema:
190         type: integer
191         minimum: 1