[cps] Fix getResourceDataForPassthroughOperational endpoint
[cps.git] / cps-ncmp-rest / docs / openapi / ncmp.yml
1 #  ============LICENSE_START=======================================================
2 #  Copyright (C) 2021-2022 Nordix Foundation
3 #  Modifications Copyright (C) 2021 Pantheon.tech
4 #  Modifications Copyright (C) 2021-2022 Bell Canada
5 #  ================================================================================
6 #  Licensed under the Apache License, Version 2.0 (the "License");
7 #  you may not use this file except in compliance with the License.
8 #  You may obtain a copy of the License at
9 #
10 #        http://www.apache.org/licenses/LICENSE-2.0
11 #
12 #  Unless required by applicable law or agreed to in writing, software
13 #  distributed under the License is distributed on an "AS IS" BASIS,
14 #  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 #  See the License for the specific language governing permissions and
16 #  limitations under the License.
17 #
18 #  SPDX-License-Identifier: Apache-2.0
19 #  ============LICENSE_END=========================================================
20 getResourceDataForPassthroughOperational:
21   get:
22     tags:
23       - network-cm-proxy
24     summary: Get resource data from pass-through operational for cm handle
25     description: Get resource data from pass-through operational for given cm handle
26     operationId: getResourceDataOperationalForCmHandle
27     parameters:
28       - $ref: 'components.yaml#/components/parameters/cmHandleInPath'
29       - $ref: 'components.yaml#/components/parameters/resourceIdentifierInQuery'
30       - $ref: 'components.yaml#/components/parameters/optionsParamInQuery'
31       - $ref: 'components.yaml#/components/parameters/topicParamInQuery'
32     responses:
33       200:
34         description: OK
35         content:
36           application/json:
37             schema:
38               type: object
39             examples:
40               dataSampleResponse:
41                 $ref: 'components.yaml#/components/examples/dataSampleResponse'
42       400:
43         $ref: 'components.yaml#/components/responses/BadRequest'
44       401:
45         $ref: 'components.yaml#/components/responses/Unauthorized'
46       403:
47         $ref: 'components.yaml#/components/responses/Forbidden'
48       500:
49         $ref: 'components.yaml#/components/responses/InternalServerError'
50       502:
51         $ref: 'components.yaml#/components/responses/BadGateway'
52
53 resourceDataForPassthroughRunning:
54   get:
55     tags:
56       - network-cm-proxy
57     summary: Get resource data from pass-through running for cm handle
58     description: Get resource data from pass-through running for given cm handle
59     operationId: getResourceDataRunningForCmHandle
60     parameters:
61       - $ref: 'components.yaml#/components/parameters/cmHandleInPath'
62       - $ref: 'components.yaml#/components/parameters/resourceIdentifierInQuery'
63       - $ref: 'components.yaml#/components/parameters/optionsParamInQuery'
64       - $ref: 'components.yaml#/components/parameters/topicParamInQuery'
65     responses:
66       200:
67         description: OK
68         content:
69           application/json:
70             schema:
71               type: object
72             examples:
73               dataSampleResponse:
74                 $ref: 'components.yaml#/components/examples/dataSampleResponse'
75       400:
76         $ref: 'components.yaml#/components/responses/BadRequest'
77       401:
78         $ref: 'components.yaml#/components/responses/Unauthorized'
79       403:
80         $ref: 'components.yaml#/components/responses/Forbidden'
81       500:
82         $ref: 'components.yaml#/components/responses/InternalServerError'
83       502:
84         $ref: 'components.yaml#/components/responses/BadGateway'
85   post:
86     tags:
87       - network-cm-proxy
88     summary: create resource data from pass-through running for cm handle
89     description: create resource data from pass-through running for given cm handle
90     operationId: createResourceDataRunningForCmHandle
91     parameters:
92       - $ref: 'components.yaml#/components/parameters/cmHandleInPath'
93       - $ref: 'components.yaml#/components/parameters/resourceIdentifierInQuery'
94       - $ref: 'components.yaml#/components/parameters/contentParamInHeader'
95     requestBody:
96       required: true
97       content:
98         application/json:
99           schema:
100             type: object
101           examples:
102             dataSampleRequest:
103               $ref: 'components.yaml#/components/examples/dataSampleRequest'
104         application/yang-data+json:
105           schema:
106             type: object
107           examples:
108             dataSampleRequest:
109               $ref: 'components.yaml#/components/examples/dataSampleRequest'
110     responses:
111       201:
112         $ref: 'components.yaml#/components/responses/Created'
113       400:
114         $ref: 'components.yaml#/components/responses/BadRequest'
115       401:
116         $ref: 'components.yaml#/components/responses/Unauthorized'
117       403:
118         $ref: 'components.yaml#/components/responses/Forbidden'
119       500:
120         $ref: 'components.yaml#/components/responses/InternalServerError'
121       502:
122         $ref: 'components.yaml#/components/responses/BadGateway'
123
124   put:
125     tags:
126       - network-cm-proxy
127     summary: Update resource data from pass-through running for a cm handle
128     description: Update resource data from pass-through running for the given cm handle
129     operationId: updateResourceDataRunningForCmHandle
130     parameters:
131       - $ref: 'components.yaml#/components/parameters/cmHandleInPath'
132       - $ref: 'components.yaml#/components/parameters/resourceIdentifierInQuery'
133       - $ref: 'components.yaml#/components/parameters/contentParamInHeader'
134     requestBody:
135       required: true
136       content:
137         application/json:
138           schema:
139             type: object
140           examples:
141             dataSampleRequest:
142               $ref: 'components.yaml#/components/examples/dataSampleRequest'
143         application/yang-data+json:
144           schema:
145             type: object
146           examples:
147             dataSampleRequest:
148               $ref: 'components.yaml#/components/examples/dataSampleRequest'
149     responses:
150       200:
151         $ref: 'components.yaml#/components/responses/Ok'
152       400:
153         $ref: 'components.yaml#/components/responses/BadRequest'
154       401:
155         $ref: 'components.yaml#/components/responses/Unauthorized'
156       403:
157         $ref: 'components.yaml#/components/responses/Forbidden'
158       500:
159         $ref: 'components.yaml#/components/responses/InternalServerError'
160       502:
161         $ref: 'components.yaml#/components/responses/BadGateway'
162
163   patch:
164     tags:
165       - network-cm-proxy
166     summary: Patch resource data from pass-through running
167     description: Patch resource data from pass-through running for the given cm handle
168     operationId: patchResourceDataRunningForCmHandle
169     parameters:
170       - $ref: 'components.yaml#/components/parameters/cmHandleInPath'
171       - $ref: 'components.yaml#/components/parameters/resourceIdentifierInQuery'
172       - $ref: 'components.yaml#/components/parameters/contentParamInHeader'
173     requestBody:
174       required: true
175       content:
176         '*/*':
177           schema:
178             type: object
179           examples:
180             dataSampleRequest:
181               $ref: 'components.yaml#/components/examples/dataSamplePatchRequest'
182     responses:
183       200:
184         $ref: 'components.yaml#/components/responses/Ok'
185       400:
186         $ref: 'components.yaml#/components/responses/BadRequest'
187       401:
188         $ref: 'components.yaml#/components/responses/Unauthorized'
189       403:
190         $ref: 'components.yaml#/components/responses/Forbidden'
191       500:
192         $ref: 'components.yaml#/components/responses/InternalServerError'
193       502:
194         $ref: 'components.yaml#/components/responses/BadGateway'
195
196   delete:
197     tags:
198       - network-cm-proxy
199     summary: Delete resource data
200     description: Delete resource data from pass-through running for a given cm handle
201     operationId: deleteResourceDataRunningForCmHandle
202     parameters:
203       - $ref: 'components.yaml#/components/parameters/cmHandleInPath'
204       - $ref: 'components.yaml#/components/parameters/resourceIdentifierInQuery'
205       - $ref: 'components.yaml#/components/parameters/contentParamInHeader'
206     responses:
207       204:
208         $ref: 'components.yaml#/components/responses/NoContent'
209       400:
210         $ref: 'components.yaml#/components/responses/BadRequest'
211       401:
212         $ref: 'components.yaml#/components/responses/Unauthorized'
213       403:
214         $ref: 'components.yaml#/components/responses/Forbidden'
215       404:
216         $ref: 'components.yaml#/components/responses/NotFound'
217       500:
218         $ref: 'components.yaml#/components/responses/InternalServerError'
219       502:
220         $ref: 'components.yaml#/components/responses/BadGateway'
221
222 fetchModuleReferencesByCmHandle:
223   get:
224     description: fetch all module references (name and revision) for a given cm handle
225     tags:
226       - network-cm-proxy
227     summary: Fetch all module references (name and revision) for a given cm handle
228     operationId: getModuleReferencesByCmHandle
229     parameters:
230       - $ref: 'components.yaml#/components/parameters/cmHandleInPath'
231     responses:
232       200:
233         description: OK
234         content:
235           application/json:
236             schema:
237               type: array
238               items:
239                 $ref: 'components.yaml#/components/schemas/RestModuleReference'
240       400:
241         $ref: 'components.yaml#/components/responses/BadRequest'
242       401:
243         $ref: 'components.yaml#/components/responses/Unauthorized'
244       403:
245         $ref: 'components.yaml#/components/responses/Forbidden'
246       500:
247         $ref: 'components.yaml#/components/responses/InternalServerError'
248
249 executeCmHandleSearch:
250   post:
251     description: Execute cm handle searches using 'hasAllModules' condition to get all cm handles for the given module names
252     tags:
253       - network-cm-proxy
254     summary: Execute cm handle search using the available conditions
255     operationId: executeCmHandleSearch
256     requestBody:
257       required: true
258       content:
259         application/json:
260           schema:
261             $ref: 'components.yaml#/components/schemas/Conditions'
262     responses:
263       200:
264         description: OK
265         content:
266           application/json:
267             schema:
268               $ref: 'components.yaml#/components/schemas/CmHandles'
269       400:
270         $ref: 'components.yaml#/components/responses/BadRequest'
271       401:
272         $ref: 'components.yaml#/components/responses/Unauthorized'
273       403:
274         $ref: 'components.yaml#/components/responses/Forbidden'
275       500:
276         $ref: 'components.yaml#/components/responses/InternalServerError'
277
278 retrieveCmHandleDetailsById:
279   get:
280     description: Retrieve CM handle details and properties by cm handle id
281     tags:
282       - network-cm-proxy
283     summary: Retrieve CM handle details
284     operationId: retrieveCmHandleDetailsById
285     parameters:
286       - $ref: 'components.yaml#/components/parameters/cmHandleInPath'
287     responses:
288       200:
289         description: OK
290         content:
291           application/json:
292             schema:
293               $ref: 'components.yaml#/components/schemas/RestOutputCmHandle'
294       400:
295         $ref: 'components.yaml#/components/responses/BadRequest'
296       401:
297         $ref: 'components.yaml#/components/responses/Unauthorized'
298       403:
299         $ref: 'components.yaml#/components/responses/Forbidden'
300       404:
301         $ref: 'components.yaml#/components/responses/NotFound'
302       500:
303         $ref: 'components.yaml#/components/responses/InternalServerError'