1 # ============LICENSE_START=======================================================
2 # Copyright (C) 2021-2022 Nordix Foundation
3 # Modifications Copyright (C) 2021 Pantheon.tech
4 # ================================================================================
5 # Licensed under the Apache License, Version 2.0 (the "License");
6 # you may not use this file except in compliance with the License.
7 # You may obtain a copy of the License at
9 # http://www.apache.org/licenses/LICENSE-2.0
11 # Unless required by applicable law or agreed to in writing, software
12 # distributed under the License is distributed on an "AS IS" BASIS,
13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 # See the License for the specific language governing permissions and
15 # limitations under the License.
17 # SPDX-License-Identifier: Apache-2.0
18 # ============LICENSE_END=========================================================
35 RestDmiPluginRegistration:
40 example: my-dmi-plugin
44 example: my-dmi-data-plugin
48 example: my-dmi-model-plugin
53 $ref: '#/components/schemas/RestInputCmHandle'
57 cmHandle: my-cm-handle
59 add-my-property: add-property
60 update-my-property: updated-property
61 delete-my-property: '~'
62 publicCmHandleProperties:
63 add-my-property: add-property
64 update-my-property: updated-property
65 delete-my-property: '~'
67 $ref: '#/components/schemas/RestInputCmHandle'
72 example: [my-cm-handle1, my-cm-handle2, my-cm-handle3]
83 $ref: '#/components/schemas/RestCmHandleProperties'
84 publicCmHandleProperties:
85 $ref: '#/components/schemas/RestCmHandleProperties'
86 RestCmHandleProperties:
96 $ref: '#/components/schemas/ConditionsData'
101 $ref: '#/components/schemas/ConditionProperties'
106 example: hasAllModules
108 $ref: '#/components/schemas/ModuleNamesAsJsonArray'
109 ModuleNamesAsJsonArray:
113 $ref: '#/components/schemas/ModuleNameAsJsonObject'
114 example: [my-module-1, my-module-2, my-module-3]
115 ModuleNameAsJsonObject:
126 $ref: '#/components/schemas/CmHandleProperties'
131 $ref: '#/components/schemas/CmHandleProperty'
136 example: my-cm-handle-id
140 title: Module reference details
144 example: my-module-name
147 example: my-module-revision
151 title: CM handle Details
155 example: my-cm-handle1
156 publicCmHandleProperties:
157 $ref: '#/components/schemas/CmHandlePublicProperties'
158 CmHandlePublicProperties:
162 additionalProperties:
168 summary: Sample request
169 description: Sample request body
172 bookstore-name: Chapters
186 dataSamplePatchRequest:
187 summary: Sample patch request
188 description: Sample patch request body
190 ietf-restconf:yang-patch:
198 bookstore-name: Chapters
216 bookstore-name: Novels
231 summary: Sample response
232 description: Sample response for selecting 'sample 1'.
252 description: The identifier for a network function, network element, subnetwork or any other cm object by managed Network CM Proxy
256 example: my-cm-handle
265 requiredXpathInQuery:
272 includeDescendantsOptionInQuery:
273 name: include-descendants
275 description: include-descendants
283 description: cps-path
288 resourceIdentifierInQuery:
289 name: resourceIdentifier
291 description: The format of resource identifier depend on the associated DMI Plugin implementation. For ONAP DMI Plugin it will be RESTConf paths but it can really be anything.
299 resourceIdentifier: \shops\bookstore
302 resourceIdentifier: \shops\bookstore\categories[@code=1]
305 resourceIdentifier: parent=shops,child=bookstore
310 description: Accept parameter for response, if accept parameter is null, that means client can accept any format.
313 enum: [ application/json, application/yang-data+json ]
317 description: options parameter in query, it is mandatory to wrap key(s)=value(s) in parenthesis'()'. The format of options parameter depend on the associated DMI Plugin implementation.
328 options: (fields=book)
331 options: (depth=2,fields=book/authors)
332 contentParamInHeader:
336 description: Content parameter for request, if content parameter is null, default value is application/json.
339 default: application/json
340 example: application/yang-data+json
344 description: The specified resource was not found
348 $ref: '#/components/schemas/ErrorMessage'
351 message: Not found error message
352 details: Not found error details
354 description: Unauthorized
358 $ref: '#/components/schemas/ErrorMessage'
361 message: Unauthorized error message
362 details: Unauthorized error details
364 description: Forbidden
368 $ref: '#/components/schemas/ErrorMessage'
371 message: Forbidden error message
372 details: Forbidden error details
374 description: Bad Request
378 $ref: '#/components/schemas/ErrorMessage'
380 status: 400 BAD_REQUEST
381 message: Bad request error message
382 details: Bad request error details
384 description: Conflict
388 $ref: '#/components/schemas/ErrorMessage'
391 message: Conflict error message
392 details: Conflict error details
394 description: The given path has not been implemented
398 $ref: '#/components/schemas/ErrorMessage'
401 message: Not implemented error message
402 details: Not implemented error details
413 description: No Content
416 description: Internal Server Error
420 $ref: "#/components/schemas/ErrorMessage"
423 message: Internal Server Error
424 details: Internal Server Error occurred