[DCAEGEN2-SLICEANALYSISMS] Add new robot for CCVPN/IBN closed-loop functionality...
[integration/csit.git] / plans / dcaegen2-services-slice-analysis-ms / testsuites / config / vescollector / etc / externalRepo / 3gpp / rep / sa5 / MnS / blob / SA88-Rel16 / OpenAPI / provMnS.yaml
1 openapi: 3.0.1
2 info:
3   title: Provisioning MnS
4   version: 16.4.0
5   description: >-
6     OAS 3.0.1 definition of the Provisioning MnS
7     © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC).
8     All rights reserved.
9 externalDocs:
10   description: 3GPP TS 28.532 V16.4.0; Generic management services
11   url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.532/
12 servers:
13   - url: 'http://{URI-DN-prefix}/{root}/ProvMnS/v1640/{LDN-first-part}'
14     variables:
15       URI-DN-prefix:
16         description: See subclause 4.4 of TS 32.158
17         default: example.com
18       root:
19         description: See subclause 4.4 of TS 32.158
20         default: 3GPPManagement
21       LDN-first-part:
22         description: See subclause 4.4 of TS 32.158
23         default: ''
24 paths:
25   '/{className}={id}':
26     parameters:
27       - name: className
28         in: path
29         required: true
30         schema:
31           $ref: '#/components/schemas/className-PathType'
32       - name: id
33         in: path
34         required: true
35         schema:
36           $ref: '#/components/schemas/id-PathType'
37     put:
38       summary: Replaces a complete single resource or creates it if it does not exist
39       description: >-
40         With HTTP PUT a complete resource is replaced or created if it does not
41         exist. The target resource is identified by the target URI.
42       requestBody:
43         required: true
44         content:
45           application/json:
46             schema:
47               $ref: '#/components/schemas/resourcePut-RequestType'
48       responses:
49         '200':
50           description: >-
51             Success case ("200 OK").
52             This status code shall be returned when the resource is replaced, and
53             when the replaced resource representation is not identical to the resource
54             representation in the request.
55             This status code may be retourned when the resource is updated and when the
56             updated resource representation is identical to the resource representation
57             in the request.
58             The representation of the updated resource is returned in the response
59             message body.
60           content:
61             application/json:
62               schema:
63                 $ref: '#/components/schemas/resourceUpdate-ResponseType'
64         '201':
65           description: >-
66             Success case ("201 Created").
67             This status code shall be returned when the resource is created.
68             The representation of the created resource is returned in the response
69             message body.
70           content:
71             application/json:
72               schema:
73                 $ref: '#/components/schemas/resourceCreation-ResponseType'
74         '204':
75           description: >-
76             Success case ("204 No Content").
77             This status code may be returned only when the replaced resource
78             representation is identical to the representation in the request.
79             The response has no message body.
80         default:
81           description: Error case.
82           content:
83             application/json:
84               schema:
85                 $ref: '#/components/schemas/error-ResponseType'
86       callbacks:
87         notifyMOICreation:
88           '{request.body#/notificationRecipientAddress}':
89             post:
90               requestBody:
91                 required: true
92                 content:
93                   application/json:
94                     schema:
95                       $ref: '#/components/schemas/notifyMOICreation-NotifType'
96               responses:
97                 '204':
98                   description: >-
99                     Success case ("204 No Content").
100                     The notification is successfully delivered. The response
101                     has no message body.
102                 default:
103                   description: Error case.
104                   content:
105                     application/json:
106                       schema:
107                         $ref: '#/components/schemas/error-ResponseType'
108         notifyMOIDeletion:
109           '{request.body#/notificationRecipientAddress}':
110             post:
111               requestBody:
112                 required: true
113                 content:
114                   application/json:
115                     schema:
116                       $ref: '#/components/schemas/notifyMOIDeletion-NotifType'
117               responses:
118                 '204':
119                   description: >-
120                     Success case ("204 No Content").
121                     The notification is successfully delivered. The response
122                     has no message body.
123                 default:
124                   description: Error case.
125                   content:
126                     application/json:
127                       schema:
128                         $ref: '#/components/schemas/error-ResponseType'
129         notifyMOIAttributeValueChange:
130           '{request.body#/notificationRecipientAddress}':
131             post:
132               requestBody:
133                 required: true
134                 content:
135                   application/json:
136                     schema:
137                       $ref: '#/components/schemas/notifyMOIAttributeValueChange-NotifType'
138               responses:
139                 '204':
140                   description: >-
141                     Success case ("204 No Content").
142                     The notification is successfully delivered. The response
143                     has no message body.
144                 default:
145                   description: Error case.
146                   content:
147                     application/json:
148                       schema:
149                         $ref: '#/components/schemas/error-ResponseType'
150         notifyMOIChanges:
151           '{request.body#/notificationRecipientAddress}':
152             post:
153               requestBody:
154                 required: true
155                 content:
156                   application/json:
157                     schema:
158                       $ref: '#/components/schemas/notifyMOIChanges-NotifType'
159               responses:
160                 '204':
161                   description: >-
162                     Success case ("204 No Content").
163                     The notification is successfully delivered. The response
164                     has no message body.
165                 default:
166                   description: Error case.
167                   content:
168                     application/json:
169                       schema:
170                         $ref: '#/components/schemas/error-ResponseType'
171     get:
172       summary: Reads one or multiple resources
173       description: >-
174         With HTTP GET resources are read. The resources to be retrieved are
175         identified with the target URI. The attributes and fields parameter
176         of the query components allow to select the resource properties to be returned.
177       parameters:
178         - name: scope
179           in: query
180           description: >-
181             This parameter extends the set of targeted resources beyond the base
182             resource identified with the path component of the URI. No scoping
183             mechanism is specified in the present document.
184           required: false
185           schema:
186             $ref: '#/components/schemas/scope-QueryType'
187           style: form
188           explode: true
189         - name: filter
190           in: query
191           description: >-
192             This parameter reduces the targeted set of resources by applying a
193             filter to the scoped set of resource representations. Only resource
194             representations for which the filter construct evaluates to "true"
195             are targeted. No filter language is specified in the present
196             document.
197           required: false
198           schema:
199             $ref: '#/components/schemas/filter-QueryType'
200         - name: attributes
201           in: query
202           description: >-
203             This parameter specifies the attributes of the scoped resources that
204             are returned.
205           required: true
206           schema:
207             $ref: '#/components/schemas/attributes-QueryType'
208           style: form
209           explode: false
210         - name: fields
211           in: query
212           description: >-
213             This parameter specifies the attribute field of the scoped resources
214             that are returned.
215           required: false
216           schema:
217             $ref: '#/components/schemas/fields-QueryType'
218           style: form
219           explode: false
220       responses:
221         '200':
222           description: >-
223             Success case ("200 OK").
224             The resources identified in the request for retrieval are returned
225             in the response message body. In case the attributes or fields query
226             parameters are used, only the selected attributes or sub-attributes are
227             returned. The response message body is constructed according to the
228             hierarchical response construction method (TS 32.158 [15]).
229           content:
230             application/json:
231               schema:
232                 $ref: '#/components/schemas/resourceRetrieval-ResponseType'
233         default:
234           description: Error case.
235           content:
236             application/json:
237               schema:
238                 $ref: '#/components/schemas/error-ResponseType'
239     patch:
240       summary: Patches one or multiple resources
241       description: >-
242         With HTTP PATCH resources are created, updated or deleted. The resources
243         to be modified are identified with the target URI (base resource) and
244         the patch document included in the request message body.
245       requestBody:
246         description: >-
247           The request body describes changes to be made to the target resources.
248           The following patch media types are available
249             - "application/merge-patch+json" (RFC 7396)
250             - "application/3gpp-merge-patch+json" (TS 32.158)
251             - "application/json-patch+json" (RFC 6902)
252             - "application/3gpp-json-patch+json" (TS 32.158)
253         required: true
254         content:
255           application/merge-patch+json:
256             schema:
257               $ref: '#/components/schemas/jsonMergePatch-RequestType'
258           application/3gpp-merge-patch+json:
259             schema:
260               $ref: '#/components/schemas/3gppJsonMergePatch-RequestType'
261           application/json-patch+json:
262             schema:
263               $ref: '#/components/schemas/jsonPatch-RequestType'
264           application/3gpp-json-patch+json:
265             schema:
266               $ref: '#/components/schemas/3gppJsonPatch-RequestType'
267       responses:
268         '200':
269           description: >-
270             Success case ("200 OK").
271             This status code is returned when the updated the resource representations
272             shall be returned for some reason.
273             The resource representations are returned in the response message body. The
274             response message body is constructed according to the hierarchical response
275             construction method (TS 32.158 [15])
276           content:
277             application/json:
278               schema:
279                 $ref: '#/components/schemas/resourceUpdate-ResponseType'
280         '204':
281           description: >-
282             Success case ("204 No Content").
283             This status code is returned when there is no need to return the updated
284             resource representations.
285             The response message body is empty.
286         default:
287           description: Error case.
288           content:
289             application/json:
290               schema:
291                 $ref: '#/components/schemas/error-ResponseType'
292     delete:
293       summary: Deletes one or multiple resources
294       description: >-
295         With HTTP DELETE resources are deleted. The resources to be deleted are
296         identified with the target URI.
297       parameters:
298         - name: scope
299           in: query
300           description: >-
301             This parameter extends the set of targeted resources beyond the base
302             resource identified with the path component of the URI. No scoping
303             mechanism is specified in the present document.
304           required: false
305           schema:
306             $ref: '#/components/schemas/scope-QueryType'
307         - name: filter
308           in: query
309           description: >-
310             This parameter reduces the targeted set of resources by applying a
311             filter to the scoped set of resource representations. Only resources
312             representations for which the filter construct evaluates to "true"
313             are returned. No filter language is specified in the present
314             document.
315           required: false
316           schema:
317             $ref: '#/components/schemas/filter-QueryType'
318       responses:
319         '200':
320           description: >-
321             Success case ("200 OK").
322             This status code shall be returned, when query parameters are present in
323             the request and one or multiple resources are deleted.
324             The URIs of the deleted resources are returned in the response message body.
325         '204':
326           description: >-
327             Success case ("204 No Content").
328             This status code shall be returned, when no query parameters are present in
329             the request and only one resource is deleted.
330             The message body is empty.
331           content:
332             application/json:
333               schema:
334                 $ref: '#/components/schemas/resourceDeletion-ResponseType'
335         default:
336           description: Error case.
337           content:
338             application/json:
339               schema:
340                 $ref: '#/components/schemas/error-ResponseType'
341 components:
342   schemas:
343     dateTime-Type:
344       type: string
345       format: date-time
346     long-Type:
347       type: integer
348       format: int64
349     uri-Type:
350       type: string
351     correlatedNotification-Type:
352       type: object
353       properties:
354         source:
355           $ref: '#/components/schemas/uri-Type'
356         notificationIds:
357           type: array
358           items:
359             $ref: '#/components/schemas/notificationId-Type'
360     notificationId-Type:
361       $ref: '#/components/schemas/long-Type'
362     notificationType-Type:
363       type: string
364       enum:
365         - notifyMOICreation
366         - notifyMOIDeletion
367         - notifyMOIAttributeValueChange
368     systemDN-Type:
369       type: string
370     additionalText-Type:
371       type: string
372     sourceIndicator-Type:
373       type: string
374       enum:
375         - resourceOperation
376         - mangementOperation
377         - sONOperation
378         - unknown
379     header-Type:
380       type: object
381       properties:
382         href:
383           $ref: '#/components/schemas/uri-Type'
384         notificationId:
385           $ref: '#/components/schemas/notificationId-Type'
386         notificationType:
387           $ref: '#/components/schemas/notificationType-Type'
388         eventTime:
389           $ref: '#/components/schemas/dateTime-Type'
390         systemDN:
391           $ref: '#/components/schemas/systemDN-Type'
392       required:
393         - href
394         - notificationId
395         - notificationType
396         - eventTime
397         - systemDN
398     scopeType-Type:
399       type: string
400       enum:
401         - BASE_ONLY
402         - BASE_NTH_LEVEL
403         - BASE_SUBTREE
404         - BASE_ALL
405     scopeLevel-Type:
406       type: integer
407     className-PathType:
408       type: string
409     id-PathType:
410       type: string
411     attributes-QueryType:
412       type: array
413       items:
414         type: string
415     fields-QueryType:
416       type: array
417       items:
418         type: string
419     filter-QueryType:
420       type: string
421     scope-QueryType:
422       type: object
423       properties:
424         scopeType:
425           $ref: '#/components/schemas/scopeType-Type'
426         scopeLevel:
427           $ref: '#/components/schemas/scopeLevel-Type'
428
429     resourcePut-RequestType:
430       $ref: '#/components/schemas/resourceRepresentation-Type'
431     jsonMergePatch-RequestType:
432       $ref: '#/components/schemas/resourceRepresentation-Type'
433     3gppJsonMergePatch-RequestType:
434       $ref: '#/components/schemas/resourceRepresentation-Type'
435     jsonPatch-RequestType:
436       type: array
437       items:
438         type: object
439     3gppJsonPatch-RequestType:
440       type: array
441       items:
442         type: object
443
444     error-ResponseType:
445       type: object
446       properties:
447         error:
448           type: object
449           properties:
450             errorInfo:
451               type: string
452     resourceRetrieval-ResponseType:
453       $ref: '#/components/schemas/resourceRepresentation-Type'
454     resourceCreation-ResponseType:
455       $ref: '#/components/schemas/resourceRepresentation-Type'
456     resourceUpdate-ResponseType:
457       $ref: '#/components/schemas/resourceRepresentation-Type'
458     resourceDeletion-ResponseType:
459       type: array
460       items:
461         $ref: '#/components/schemas/uri-Type'
462
463     resourceRepresentation-Type:
464       oneOf:
465         - type: object
466           properties:
467             id:
468               type: string
469             attributes:
470               type: object
471           additionalProperties:
472             type: array
473             items:
474               type: object
475         - anyOf:
476             - $ref: 'genericNrm.yaml#/components/schemas/resources-genericNrm'
477             - $ref: 'nrNrm.yaml#/components/schemas/resources-nrNrm'
478             - $ref: '5gcNrm.yaml#/components/schemas/resources-5gcNrm'
479             - $ref: 'sliceNrm.yaml#/components/schemas/resources-sliceNrm'
480
481     mOIChange-Type:
482       type: object
483       properties:
484         notificationId:
485           $ref: '#/components/schemas/notificationId-Type'
486         correlatedNotifications:
487           type: array
488           items:
489             $ref: '#/components/schemas/correlatedNotification-Type'
490         additionalText:
491           $ref: '#/components/schemas/additionalText-Type'
492         sourceIndicator:
493           $ref: '#/components/schemas/sourceIndicator-Type'
494         path:
495           $ref: '#/components/schemas/uri-Type'
496         operation:
497           type: string
498           enum:
499             - CREATE
500             - DELETE
501             - REPLACE
502         value:
503           oneOf:
504             - type: object
505               additionalProperties:
506                 nullable: true
507             - type: array
508               items:
509                 type: object
510               minItems: 1
511               maxItems: 2
512
513     notifyMOICreation-NotifType:
514       allOf:
515         - $ref: '#/components/schemas/header-Type'
516         - type: object
517           properties:
518             correlatedNotifications:
519               type: array
520               items:
521                 $ref: '#/components/schemas/correlatedNotification-Type'
522             additionalText:
523               $ref: '#/components/schemas/additionalText-Type'
524             sourceIndicator:
525               $ref: '#/components/schemas/sourceIndicator-Type'
526             attributeList:
527               type: object
528               additionalProperties:
529                 nullable: true
530     notifyMOIDeletion-NotifType:
531       allOf:
532         - $ref: '#/components/schemas/header-Type'
533         - type: object
534           properties:
535             correlatedNotifications:
536               type: array
537               items:
538                 $ref: '#/components/schemas/correlatedNotification-Type'
539             additionalText:
540               $ref: '#/components/schemas/additionalText-Type'
541             sourceIndicator:
542               $ref: '#/components/schemas/sourceIndicator-Type'
543             attributeList:
544               type: object
545               additionalProperties: true
546     notifyMOIAttributeValueChange-NotifType:
547       allOf:
548         - $ref: '#/components/schemas/header-Type'
549         - type: object
550           properties:
551             correlatedNotifications:
552               type: array
553               items:
554                 $ref: '#/components/schemas/correlatedNotification-Type'
555             additionalText:
556               $ref: '#/components/schemas/additionalText-Type'
557             sourceIndicator:
558               $ref: '#/components/schemas/sourceIndicator-Type'
559             attributeValueChange:
560               type: object
561               additionalProperties:
562                 type: array
563                 minItems: 1
564                 maxItems: 2
565                 items:
566                   nullable: true
567           required:
568             - attributeValueChange
569     notifyMOIChanges-NotifType:
570       allOf:
571         - $ref: '#/components/schemas/header-Type'
572         - type: object
573           properties:
574             mOIChanges:
575               type: array
576               items:
577                 $ref: '#/components/schemas/mOIChange-Type'
578           required:
579             - mOIChanges