NSLifecycleManagement.yaml 67.3 KB
Newer Older
1
2
3
swagger: "2.0"

info:
4
  version: "1.2.0"
5
  title: "SOL005 - NS Lifecycle Management Interface"
6
  description: >
rameshnaraya's avatar
rameshnaraya committed
7
    SOL005 - NS Lifecycle Management Interface
8
9
10
11
12
13
14
15
    IMPORTANT: Please note that this file might be not aligned to the current
    version of the ETSI Group Specification it refers to and has not been
    approved by the ETSI NFV ISG. In case of discrepancies the published ETSI
    Group Specification takes precedence.
    Please report bugs to https://forge.etsi.org/bugzilla/buglist.cgi?component=Nfv-Openapis
  license:
    name: "ETSI Forge copyright notice"
    url: https://forge.etsi.org/etsi-forge-copyright-notice.txt
16
  contact:
17
18
    name: "NFV-SOL WG"
externalDocs:
19
20
  description: ETSI GS NFV-SOL 005 V2.5.1
  url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/02.05.01_60/gs_NFV-SOL005v020501p.pdf
21
basePath: /nslcm/v1
22
schemes:
23
  - http
24
25
  - https
consumes:
26
  - application/json
27
produces:
28
  - application/json
29
paths:
30
  ###############################################################################
31
32
33
  # API Versions                                                                #
  ###############################################################################
  '/api-versions':
34
35
    $ref: '../endpoints/SOL005_endpoints.yaml#/endpoints/api-versions'

36
  ###############################################################################
37
38
  # NSInstances                                                                 #
  ###############################################################################
39
40
41
  '/ns_instances':
    #ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.2
    post:
42
      summary: Create a NS instance resource.
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
      description: >
        The POST method creates a new NS instance resource.
      parameters:
        - name: Accept
          description: >
            Content-Types that are acceptable for the response.
            Reference: IETF RFC 7231
          in: header
          required: true
          type: string
        - name: Authorization
          description: >
            The authorization token for the request.
            Reference: IETF RFC 7235
          in: header
          required: false
          type: string
        - name: Content-Type
          description: >
            The MIME type of the body of the request.
            Reference: IETF RFC 7231
          in: header
          required: true
66
          type: string
67
68
69
70
71
72
        - name: Version
          description: >
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          type: string
73
74
        - name: body
          in: body
rameshnaraya's avatar
rameshnaraya committed
75
76
          required: true
          schema:
77
78
79
            $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/CreateNsRequest"
          description: >
            The NS creation parameters, as defined in clause 6.5.2.7.
80
      responses:
81
        201:
82
83
          description: >
            201 Created
84

85
86
87
88
89
90
            A NS Instance identifier was created successfully.
            The response body shall contain a representation of
            the created NS instance, as defined in clause 6.5.2.8.
            The HTTP response shall include a "Location" HTTP
            header that contains the resource URI of the created
            NS instance.
rameshnaraya's avatar
rameshnaraya committed
91
          schema:
92
            $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsInstance"
93
          headers:
rameshnaraya's avatar
rameshnaraya committed
94
            Content-Type:
95
              type: string
rameshnaraya's avatar
rameshnaraya committed
96
97
98
99
              description: >
                The MIME type of the body of the response.This header
                field shall be present if the response has a non-empty message
                body.
100
            WWW-Authenticate:
101
              type: string
102
103
              description: >
                Challenge if the corresponding HTTP request has not provided
rameshnaraya's avatar
rameshnaraya committed
104
105
                authorization, or error details if the corresponding HTTP request
                has provided an invalid authorization token.
106
107
              maximum: 1
              minimum: 0
108
109
110
111
112
            Version:
              description: >
                Version of the API used in the response.
              type: string
              maximum: 1
113
              minimum: 1
114
        400:
115
          $ref: "../responses/SOL005_resp.yaml#/responses/400"
116
        401:
117
          $ref: "../responses/SOL005_resp.yaml#/responses/401"
118
        403:
119
          $ref: "../responses/SOL005_resp.yaml#/responses/403"
120
        404:
121
          $ref: "../responses/SOL005_resp.yaml#/responses/404"
122
        405:
123
          $ref: "../responses/SOL005_resp.yaml#/responses/405"
124
        406:
125
          $ref: "../responses/SOL005_resp.yaml#/responses/406"
126
        409:
127
          $ref: "../responses/SOL005_resp.yaml#/responses/409"
128
        416:
129
          $ref: "../responses/SOL005_resp.yaml#/responses/416"
130
        500:
131
          $ref: "../responses/SOL005_resp.yaml#/responses/500"
132
        503:
133
          $ref: "../responses/SOL005_resp.yaml#/responses/503"
134
    get:
135
      summary: Query multiple NS instances.
136
      description: >
137
        Query NS Instances.
138

139
140
141
142
        The GET method queries information about multiple NS instances.
        This method shall support the URI query parameters, request and response data structures, and response codes, as
        specified in the Tables 6.4.2.3.2-1 and 6.4.2.3.2-2.
      parameters:
143
144
        - name: filter
          in: query
145
          required: false
146
          type: string
147
          description: >
148
            Attribute-based filtering expression according to clause 4.3.2.
149
150
            The NFVO shall support receiving this parameter as part of the URI
            query string. The OSS/BSS may supply this parameter.
151
            All attribute names that appear in the NsInstance and in data types
152
153
154
            referenced from it shall be supported by the NFVO in the filter expression.
        - name: all_fields
          in: query
155
          required: false
156
          type: string
157
          description: >
158
159
160
161
            Include all complex attributes in the response. See clause 4.3.3 for details.
            The NFVO shall support this parameter.
        - name: fields
          in: query
162
          required: false
163
          type: string
164
          description: >
165
166
            "Complex attributes to be included into the response. See clause 4.3.3 for
            details. The NFVO should support this parameter."          
167
168
        - name: exclude_fields
          in: query
169
          required: false
170
          type: string
171
          description: >
172
173
            "Complex attributes to be excluded from the response. See clause 4.3.3 for
            details. The NFVO should support this parameter."
174
175
        - name: exclude_default
          in: query
176
          required: false
177
          type: string
178
          description: >
179
180
181
182
183
184
185
186
187
188
189
190
            "Indicates to exclude the following complex attributes from the response.
            See clause 4.3.3 for details. The NFVO shall support this parameter.
            The following attributes shall be excluded from the NsInstance structure in
            the response body if this parameter is provided, or none of the parameters
            "all_fields," "fields", "exclude_fields", "exclude_default" are provided:
            - vnfInstances
            - pnfInfo
            - virtualLinkInfo
            - vnffgInfo
            - sapInfo
            - nsScaleStatus
            - additionalAffinityOrAntiAffinityRules"
191
192
193
194
195
196
197
        - name: nextpage_opaque_marker
          in: query
          description: >
            Marker to obtain the next page of a paged response. Shall be supported by the NFVO
            if the NFVO supports alternative 2 (paging) according to clause 4.7.2.1 for this resource.
          required: false
          type: string
198
199
200
201
202
203
204
205
206
207
208
209
210
        - name: Accept
          description: >
            Content-Types that are acceptable for the response.
            Reference: IETF RFC 7231
          in: header
          required: true
          type: string
        - name: Authorization
          description: >
            The authorization token for the request.
            Reference: IETF RFC 7235
          in: header
          required: false
211
          type: string
212
213
214
215
216
217
        - name: Version
          description: >
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          type: string
218
219
220
      responses:
        200:
          description: >
221
            200 OK
222

223
224
225
226
227
228
            Information about zero or more NS instances was queried successfully.
            The response body shall contain in an array the representations of
            zero or more NS instances, as defined in clause 6.5.2.8.
            If the NFVO supports alternative 2 (paging) according to 
            clause 4.7.2.1 for this resource, inclusion of the Link HTTP header 
            in this response shall follow the provisions in clause 4.7.2.3.
229
230
231
232
233
234
235
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              type: string
              maximum: 1
              minimum: 1
            WWW-Authenticate:
236
              type: string
237
238
              description: >
                Challenge if the corresponding HTTP request has not provided
239
240
241
                authorization, or error details if the corresponding HTTP request
                has provided an invalid authorization token.
              maximum: 1
242
              minimum: 0
243
244
245
246
247
            Version:
              description: >
                Version of the API used in the response.
              type: string
              maximum: 1
248
              minimum: 1
249
250
251
252
253
254
            Link:
              description: >
                Reference to other resources. Used for paging in the present document, see clause 4.7.2.1.
              type: string
              maximum: 1
              minimum: 0
255
256
257
          schema:
            type: array
            items:
rameshnaraya's avatar
rameshnaraya committed
258
259
              properties:
                NsInstance:
260
                  $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsInstance"
261
        400:
262
          $ref: "../responses/SOL005_resp.yaml#/responses/400"
263
        401:
264
          $ref: "../responses/SOL005_resp.yaml#/responses/401"
265
        403:
266
          $ref: "../responses/SOL005_resp.yaml#/responses/403"
267
        404:
268
          $ref: "../responses/SOL005_resp.yaml#/responses/404"
269
        405:
270
          $ref: "../responses/SOL005_resp.yaml#/responses/405"
271
        406:
272
          $ref: "../responses/SOL005_resp.yaml#/responses/406"
273
        409:
274
          $ref: "../responses/SOL005_resp.yaml#/responses/409"
275
        416:
276
          $ref: "../responses/SOL005_resp.yaml#/responses/416"
277
        500:
278
          $ref: "../responses/SOL005_resp.yaml#/responses/500"
279
        503:
280
          $ref: "../responses/SOL005_resp.yaml#/responses/503"
281
282
283
284

  ###############################################################################
  # Individual NS instance                                                      #
  ###############################################################################
285
286
287
288
289
290
291
292
293
294
  '/ns_instances/{nsInstanceId}':
    #ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.3
    parameters:
      - name: nsInstanceId
        description: >
          Identifier of the NS instance.
        in: path
        type: string
        required: true
    get:
rameshnaraya's avatar
rameshnaraya committed
295
      summary: Read an individual NS instance resource.
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
      description: >
        The GET method retrieves information about a NS instance by 
        reading an individual NS instance resource.   
      parameters:
        - name: Accept
          description: >
            Content-Types that are acceptable for the response.
            Reference: IETF RFC 7231
          in: header
          required: true
          type: string
        - name: Authorization
          description: >
            The authorization token for the request.
            Reference: IETF RFC 7235
          in: header
          required: false
          type: string
        - name: Content-Type
          description: >
            The MIME type of the body of the request.
            Reference: IETF RFC 7231
          in: header
          required: true
          type: string
321
322
323
324
325
326
        - name: Version
          description: >
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          type: string
327
328
      responses:
        200:
329
330
          description: >
            200 OK
331

332
333
            Information about an individual NS instance was queried successfully.
            The response body shall contain a representation of the NS instance.
rameshnaraya's avatar
rameshnaraya committed
334
          schema:
335
            $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsInstance"
336
337
          headers:
            Content-Type:
338
              type: string
rameshnaraya's avatar
rameshnaraya committed
339
340
341
              description: >
                The MIME type of the body of the response.This header
                field shall be present if the response has a non-empty message body.
342
              maximum: 1
343
              minimum: 1
344
            WWW-Authenticate:
345
              type: string
346
347
              description: >
                Challenge if the corresponding HTTP request has not provided
rameshnaraya's avatar
rameshnaraya committed
348
                authorization, or error details if the corresponding HTTP request
349
                has provided an invalid authorization token.
350
351
              maximum: 1
              minimum: 0
352
353
354
355
356
            Version:
              description: >
                Version of the API used in the response.
              type: string
              maximum: 1
357
              minimum: 1
358
        400:
359
          $ref: "../responses/SOL005_resp.yaml#/responses/400"
360
        401:
361
          $ref: "../responses/SOL005_resp.yaml#/responses/401"
362
        403:
363
          $ref: "../responses/SOL005_resp.yaml#/responses/403"
364
        404:
365
          $ref: "../responses/SOL005_resp.yaml#/responses/404"
366
        405:
367
          $ref: "../responses/SOL005_resp.yaml#/responses/405"
368
        406:
369
          $ref: "../responses/SOL005_resp.yaml#/responses/406"
370
        409:
371
          $ref: "../responses/SOL005_resp.yaml#/responses/409"
372
        416:
373
          $ref: "../responses/SOL005_resp.yaml#/responses/416"
374
        500:
375
          $ref: "../responses/SOL005_resp.yaml#/responses/500"
376
        503:
377
          $ref: "../responses/SOL005_resp.yaml#/responses/503"
378

379
    delete:
rameshnaraya's avatar
rameshnaraya committed
380
      summary: Delete NS instance resource.
381
382
      description: >
        Delete NS Identifier
383

384
385
386
387
388
389
390
391
392
        This method deletes an individual NS instance resource.
      parameters:
        - name: Authorization
          description: >
            The authorization token for the request.
            Reference: IETF RFC 7235
          in: header
          required: false
          type: string
393
394
395
396
397
398
        - name: Version
          description: >
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          type: string
399
400
401
402
      responses:
        204:
          description: >
            204 No Content
403

404
405
406
407
408
            The NS instance resource and the associated NS
            identifier were deleted successfully.
            The response body shall be empty.
          headers:
            WWW-Authenticate:
409
              type: string
410
411
              description: >
                Challenge if the corresponding HTTP request has not provided
412
413
                authorization, or error details if the corresponding HTTP request
                has provided an invalid authorization token.
414
415
              maximum: 1
              minimum: 0
416
417
418
419
420
            Version:
              description: >
                Version of the API used in the response.
              type: string
              maximum: 1
421
              minimum: 1
422
        400:
423
          $ref: "../responses/SOL005_resp.yaml#/responses/400"
424
        401:
425
          $ref: "../responses/SOL005_resp.yaml#/responses/401"
426
        403:
427
          $ref: "../responses/SOL005_resp.yaml#/responses/403"
428
        404:
429
          $ref: "../responses/SOL005_resp.yaml#/responses/404"
430
        405:
431
          $ref: "../responses/SOL005_resp.yaml#/responses/405"
432
        406:
433
          $ref: "../responses/SOL005_resp.yaml#/responses/406"
434
        409:
435
          $ref: "../responses/SOL005_resp.yaml#/responses/409"
436
        412:
437
          $ref: "../responses/SOL005_resp.yaml#/responses/412"
438
        500:
439
          $ref: "../responses/SOL005_resp.yaml#/responses/500"
440
        503:
441
          $ref: "../responses/SOL005_resp.yaml#/responses/503"
442

443
444
445
  ###############################################################################
  # Instantiate NS task                                                         #
  ###############################################################################
446
447
448
449
450
451
452
453
454
  '/ns_instances/{nsInstanceId}/instantiate':
    #ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.4
    parameters:
      - name: nsInstanceId
        description: >
          Identifier of the NS instance to be instantiated.
        in: path
        type: string
        required: true
455
    post:
rameshnaraya's avatar
rameshnaraya committed
456
      summary: Instantiate a NS.
457
458
459
      description: >
        The POST method requests to instantiate a NS instance resource.
      parameters:
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
        - name: Accept
          description: >
            Content-Types that are acceptable for the response.
            Reference: IETF RFC 7231
          in: header
          required: true
          type: string
        - name: Authorization
          description: >
            The authorization token for the request.
            Reference: IETF RFC 7235
          in: header
          required: false
          type: string
        - name: Content-Type
          description: >
            The MIME type of the body of the request.
            Reference: IETF RFC 7231
          in: header
          required: true
          type: string
481
482
483
484
485
486
        - name: Version
          description: >
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          type: string
487
488
        - name: body
          in: body
489
490
          required: true
          schema:
491
492
493
            $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/InstantiateNsRequest"
          description: >
            Parameters for the instantiate NS operation, as defined in clause 6.5.2.10.
494
495
      responses:
        202:
496
          $ref: "responses/SOL005NSLifecycleManagement_resp.yaml#/responses/202-with-Location"
497
        400:
498
          $ref: "../responses/SOL005_resp.yaml#/responses/400"
499
        401:
500
          $ref: "../responses/SOL005_resp.yaml#/responses/401"
501
        403:
502
          $ref: "../responses/SOL005_resp.yaml#/responses/403"
503
        404:
504
          $ref: "../responses/SOL005_resp.yaml#/responses/404"
505
        405:
506
          $ref: "../responses/SOL005_resp.yaml#/responses/405"
507
        406:
508
          $ref: "../responses/SOL005_resp.yaml#/responses/406"
509
        409:
510
          $ref: "../responses/SOL005_resp.yaml#/responses/409"
511
        416:
512
          $ref: "../responses/SOL005_resp.yaml#/responses/416"
513
        500:
514
          $ref: "../responses/SOL005_resp.yaml#/responses/500"
515
        503:
516
          $ref: "../responses/SOL005_resp.yaml#/responses/503"
517
518
519
520

  ###############################################################################
  # Scale NS task                                                               #
  ###############################################################################
521
522
523
524
525
526
527
528
529
  '/ns_instances/{nsInstanceId}/scale':
    #ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.5
    parameters:
      - name: nsInstanceId
        description: >
          Identifier of the NS instance to be scaled.
        in: path
        type: string
        required: true
530
    post:
rameshnaraya's avatar
rameshnaraya committed
531
      summary: Scale a NS instance.
532
533
      description: >
        The POST method requests to scale a NS instance resource.
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
      parameters:
        - name: Accept
          description: >
            Content-Types that are acceptable for the response.
            Reference: IETF RFC 7231
          in: header
          required: true
          type: string
        - name: Authorization
          description: >
            The authorization token for the request.
            Reference: IETF RFC 7235
          in: header
          required: false
          type: string
        - name: Content-Type
          description: >
            The MIME type of the body of the request.
            Reference: IETF RFC 7231
          in: header
          required: true
          type: string
556
557
558
559
560
561
        - name: Version
          description: >
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          type: string
562
563
        - name: body
          in: body
564
565
          required: true
          schema:
566
567
568
            $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/ScaleNsRequest"
          description: >
            Parameters for the scale NS operation, as defined in clause 6.5.2.13.
569
570
      responses:
        202:
571
          $ref: "responses/SOL005NSLifecycleManagement_resp.yaml#/responses/202-with-Location"
572
        400:
573
          $ref: "../responses/SOL005_resp.yaml#/responses/400"
574
        401:
575
          $ref: "../responses/SOL005_resp.yaml#/responses/401"
576
        403:
577
          $ref: "../responses/SOL005_resp.yaml#/responses/403"
578
        404:
579
          $ref: "../responses/SOL005_resp.yaml#/responses/404"
580
        405:
581
          $ref: "../responses/SOL005_resp.yaml#/responses/405"
582
        406:
583
          $ref: "../responses/SOL005_resp.yaml#/responses/406"
584
        409:
585
          $ref: "../responses/SOL005_resp.yaml#/responses/409"
586
        500:
587
          $ref: "../responses/SOL005_resp.yaml#/responses/500"
588
        503:
589
          $ref: "../responses/SOL005_resp.yaml#/responses/503"
590
591
592
593

  ###############################################################################
  # Update NS task                                                              #
  ###############################################################################
594
595
596
597
598
599
600
601
602
  '/ns_instances/{nsInstanceId}/update':
    #ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.6
    parameters:
      - name: nsInstanceId
        description: >
          Identifier of the NS instance to be updated.
        in: path
        type: string
        required: true
603
    post:
rameshnaraya's avatar
rameshnaraya committed
604
      summary: Updates a NS instance.
605
606
607
      description: >
        Scale NS instance.
        The POST method requests to scale a NS instance resource.
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
      parameters:
        - name: Accept
          description: >
            Content-Types that are acceptable for the response.
            Reference: IETF RFC 7231
          in: header
          required: true
          type: string
        - name: Authorization
          description: >
            The authorization token for the request.
            Reference: IETF RFC 7235
          in: header
          required: false
          type: string
        - name: Content-Type
          description: >
            The MIME type of the body of the request.
            Reference: IETF RFC 7231
          in: header
          required: true
          type: string
630
631
632
633
634
635
        - name: Version
          description: >
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          type: string
636
637
        - name: body
          in: body
638
639
          required: true
          schema:
640
641
642
            $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/UpdateNsRequest"
          description: >
            Parameters for the update NS operation, as defined in clause 6.5.2.11.
643
644
      responses:
        202:
645
          $ref: "responses/SOL005NSLifecycleManagement_resp.yaml#/responses/202-with-Location"
646
        400:
647
          $ref: "../responses/SOL005_resp.yaml#/responses/400"
648
        401:
649
          $ref: "../responses/SOL005_resp.yaml#/responses/401"
650
        403:
651
          $ref: "../responses/SOL005_resp.yaml#/responses/403"
652
        404:
653
          $ref: "../responses/SOL005_resp.yaml#/responses/404"
654
        405:
655
          $ref: "../responses/SOL005_resp.yaml#/responses/405"
656
        406:
657
          $ref: "../responses/SOL005_resp.yaml#/responses/406"
658
        409:
659
          $ref: "../responses/SOL005_resp.yaml#/responses/409"
660
        500:
661
          $ref: "../responses/SOL005_resp.yaml#/responses/500"
662
        503:
663
          $ref: "../responses/SOL005_resp.yaml#/responses/503"
664
665
666
667

  ###############################################################################
  # Heal NS task                                                                #
  ###############################################################################
668
669
  '/ns_instances/{nsInstanceId}/heal':
    #ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.7
670
671
672
    parameters:
      - name: nsInstanceId
        description: >
673
          Identifier of the NS instance to be healed.
674
675
676
677
        in: path
        type: string
        required: true
    post:
678
679
      summary: Heal a NS instance.
      description: >
680
681
682
683
        The POST method requests to heal a NS instance resource.
        This method shall follow the provisions specified in the Tables 6.4.7.3.1-1 and 
        6.4.7.3.1-2 for URI query parameters,
        request and response data structures, and response codes.
684
      parameters:
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
        - name: Accept
          description: >
            Content-Types that are acceptable for the response.
            Reference: IETF RFC 7231
          in: header
          required: true
          type: string
        - name: Authorization
          description: >
            The authorization token for the request.
            Reference: IETF RFC 7235
          in: header
          required: false
          type: string
        - name: Content-Type
          description: >
            The MIME type of the body of the request.
            Reference: IETF RFC 7231
          in: header
          required: true
          type: string
706
707
708
709
710
711
        - name: Version
          description: >
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          type: string
712
713
        - name: body
          in: body
714
715
          required: true
          schema:
716
717
718
            $ref: "definitions/NSLifecycleManagement_def.yaml#/definitions/HealNsRequest"
          description: >
            Parameters for the heal NS operation, as defined in clause 6.5.2.12.
719
720
      responses:
        202:
721
          $ref: "responses/SOL005NSLifecycleManagement_resp.yaml#/responses/202-with-Location"
722
        400:
723
          $ref: "../responses/SOL005_resp.yaml#/responses/400"
724
        401:
725
          $ref: "../responses/SOL005_resp.yaml#/responses/401"
726
        403:
727
          $ref: "../responses/SOL005_resp.yaml#/responses/403"
728
        404:
729
          $ref: "../responses/SOL005_resp.yaml#/responses/404"
730
        405:
731
          $ref: "../responses/SOL005_resp.yaml#/responses/405"
732
        406:
733
          $ref: "../responses/SOL005_resp.yaml#/responses/406"
734
        409:
735
          $ref: "../responses/SOL005_resp.yaml#/responses/409"
736
        500:
737
          $ref: "../responses/SOL005_resp.yaml#/responses/500"
738
        503:
739
          $ref: "../responses/SOL005_resp.yaml#/responses/503"
740

741
742
743
  ###############################################################################
  # Terminate NS task                                                           #
  ###############################################################################
744
745
  '/ns_instances/{nsInstanceId}/terminate':
    #ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.8
746
747
748
    parameters:
      - name: nsInstanceId
        description: >
749
          The identifier of the NS instance to be terminated.
750
751
752
753
        in: path
        type: string
        required: true
    post:
754
755
756
757
758
759
760
761
762
763
      summary: Terminate a NS instance.
      description: >
        Terminate NS task.  
        The POST method terminates a NS instance. This method can only be 
        used with a NS instance in the INSTANTIATED
        state. Terminating a NS instance does not delete the NS instance identifier, 
        but rather transitions the NS into the NOT_INSTANTIATED state.
        This method shall support the URI query parameters, request and 
        response data structures, and response codes, as
        specified in the Tables 6.4.8.3.1-1 and 6.8.8.3.1-2.
764
      parameters:
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
        - name: Accept
          description: >
            Content-Types that are acceptable for the response.
            Reference: IETF RFC 7231
          in: header
          required: true
          type: string
        - name: Authorization
          description: >
            The authorization token for the request.
            Reference: IETF RFC 7235
          in: header
          required: false
          type: string
        - name: Content-Type
          description: >
            The MIME type of the body of the request.
            Reference: IETF RFC 7231
          in: header
          required: true
          type: string
786
787
788
789
790
791
        - name: Version
          description: >
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          type: string
792
793
        - name: body
          in: body
794
795
          required: true
          schema:
796
797
798
            $ref: "definitions/NSLifecycleManagement_def.yaml#/definitions/TerminateNsRequest"
          description: >
            The terminate NS request parameters, as defined in  clause 6.5.2.14.
799
800
      responses:
        202:
801
          $ref: "responses/SOL005NSLifecycleManagement_resp.yaml#/responses/202-with-Location"
802
        400:
803
          $ref: "../responses/SOL005_resp.yaml#/responses/400"
804
        401:
805
          $ref: "../responses/SOL005_resp.yaml#/responses/401"
806
        403:
807
          $ref: "../responses/SOL005_resp.yaml#/responses/403"
808
        404:
809
          $ref: "../responses/SOL005_resp.yaml#/responses/404"
810
        405:
811
          $ref: "../responses/SOL005_resp.yaml#/responses/405"
812
        406:
813
          $ref: "../responses/SOL005_resp.yaml#/responses/406"
814
        409:
815
          $ref: "../responses/SOL005_resp.yaml#/responses/409"
816
        500:
817
          $ref: "../responses/SOL005_resp.yaml#/responses/500"
818
        503:
819
          $ref: "../responses/SOL005_resp.yaml#/responses/503"
820

821
822
823
  ###############################################################################
  # NS LCM operation occurrences                                                #
  ###############################################################################
824
825
826
  '/ns_lcm_op_occs':
    #ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.9
    get:
rameshnaraya's avatar
rameshnaraya committed
827
      summary: Query multiple NS LCM operation occurrences.
828
      description: >
829
        Get Operation Status.
830
831
832
833
834
        The client can use this method to query status information about multiple NS lifecycle management operation
        occurrences.
        This method shall follow the provisions specified in the Tables 6.4.9.3.2-1 and 6.4.9.3.2-2 for URI query parameters,
        request and response data structures, and response codes.
      parameters:
835
836
        - name: filter
          in: query
837
          required: false
838
          type: string
839
          description: >
840
841
842
            Attribute-based filtering expression according to clause 4.3.2.
            The NFVO shall support receiving this parameter as part of the URI query string.
            The OSS/BSS may supply this parameter.
843
            All attribute names that appear in the NsLcmOpOcc and in data types referenced
844
            from it shall be supported by the NFVO in the filter expression.
845
846
        - name: fields
          in: query
847
          required: false
848
          type: string
849
          description: >
850
851
            Complex attributes to be included into the response. See clause 4.3.3 for details. The
            NFVO should support this parameter.
852
853
        - name: exclude_fields
          in: query
854
          required: false
855
          type: string
856
          description: >
857
858
            Complex attributes to be excluded from the response. See clause 4.3.3 for details.
            The NFVO should support this parameter.
859
860
        - name: exclude_default
          in: query
861
          required: false
862
          type: string
863
          description: >
864
865
866
867
868
869
870
871
            Indicates to exclude the following complex attributes from the response. See
            clause 4.3.3 for details. The NFVO shall support this parameter.
            The following attributes shall be excluded from the NsLcmOpOcc structure in the
            response body if this parameter is provided:
            - operationParams
            - changedVnfInfo
            - error
            - resourceChanges
872
873
874
875
876
877
878
        - name: nextpage_opaque_marker
          in: query
          description: >
            Marker to obtain the next page of a paged response. Shall be supported by the NFVO
            if the NFVO supports alternative 2 (paging) according to clause 4.7.2.1 for this resource.
          required: false
          type: string
879
880
881
882
        - name: Accept
          description: >
            Content-Types that are acceptable for the response.
            Reference: IETF RFC 7231
883
884
885
          in: header
          required: true
          type: string
886
887
888
889
890
891
892
        - name: Authorization
          description: >
            The authorization token for the request.
            Reference: IETF RFC 7235
          in: header
          required: false
          type: string
893
894
895
896
897
898
        - name: Version
          description: >
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          type: string
899
900
901
      responses:
        200:
          description: >
902
            200 OK
903

904
905
906
907
908
909
910
            Status information for zero or more NS lifecycle management operation 
            occurrences was queried successfully. 
            The response body shall contain in an array the representations of
            zero or more NS instances, as defined in clause 5.5.2.13.
            If the NFVO supports alternative 2 (paging) according to 
            clause 4.7.2.1 for this resource, inclusion of the Link HTTP header 
            in this response shall follow the provisions in clause 4.7.2.3.
911
912
913
914
915
916
917
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              type: string
              maximum: 1
              minimum: 1
            WWW-Authenticate:
918
              type: string
919
920
              description: >
                Challenge if the corresponding HTTP request has not provided
921
922
923
                authorization, or error details if the corresponding HTTP request
                has provided an invalid authorization token.
              maximum: 1
924
              minimum: 0
925
926
927
928
929
            Version:
              description: >
                Version of the API used in the response.
              type: string
              maximum: 1
930
              minimum: 1