NSDManagement.yaml 92.7 KB
Newer Older
1
openapi: 3.0.2
2

3
info:
4
5
  title: SOL005 - NSD Management Interface 
  description: |
6
    SOL005 - NSD Management Interface 
7

8
9
10
11
    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.
12
    Please report bugs to https://forge.etsi.org/rep/nfv/SOL005/issues
13
14
  contact:
    name: NFV-SOL WG
15
  license:
16
    name: ETSI Forge copyright notice
17
    url: https://forge.etsi.org/etsi-forge-copyright-notice.txt
18
  version: 2.1.0-impl:etsi.org:ETSI_NFV_OpenAPI:1
19

20
externalDocs:
21
  description: ETSI GS NFV-SOL 005 V3.5.1
22
  url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.05.01_60/gs_nfv-sol005v030501p.pdf
23

24
25
26
servers:
  - url: http://127.0.0.1/nsd/v2
  - url: https://127.0.0.1/nsd/v2
27

28
paths:
29
30
31
  ###############################################################################
  # API Versions                                                                #
  ###############################################################################
32
  /api_versions:
33
    $ref: '../endpoints/SOL005_endpoints.yaml#/endpoints/api-versions'
34

35
36
37
  ###############################################################################
  # NS Descriptors                                                              #
  ###############################################################################
38
  /ns_descriptors:
39
    #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.2
40
    parameters:
41
42
43
      - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization
      - $ref: ../components/SOL005_params.yaml#/components/parameters/Version
      - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept
44
45

    post:
46
      description: |
47
        The POST method is used to create a new NS descriptor resource. See clause 5.4.2.3.1.
48
      parameters:
49
50
51
        - $ref: ../components/SOL005_params.yaml#/components/parameters/ContentType
      requestBody:
        $ref: '#/components/requestBodies/CreateNsdInfoRequest'
52
53
      responses:
        201:
54
          $ref: '#/components/responses/NSDescriptors.Post.201'
55
        400:
56
          $ref: "../responses/SOL005_resp.yaml#/components/responses/400"
57
        401:
58
          $ref: "../responses/SOL005_resp.yaml#/components/responses/401"
59
        403:
60
          $ref: "../responses/SOL005_resp.yaml#/components/responses/403"
61
        404:
62
          $ref: "../responses/SOL005_resp.yaml#/components/responses/404"
63
        405:
64
          $ref: "../responses/SOL005_resp.yaml#/components/responses/405"
65
        406:
66
          $ref: "../responses/SOL005_resp.yaml#/components/responses/406"
67
        500:
68
          $ref: "../responses/SOL005_resp.yaml#/components/responses/500"
69
        503:
70
          $ref: "../responses/SOL005_resp.yaml#/components/responses/503"
71
        504:
72
          $ref: "../responses/SOL005_resp.yaml#/components/responses/504"
73

74
    get:
75
      description: |
76
        The GET method queries information about multiple NS descriptor resources. See clause 5.4.2.3.2.
77
78
79
80
81
82
83
      parameters:      
        - $ref: ../components/SOL005_params.yaml#/components/parameters/filter
        - $ref: ../components/SOL005_params.yaml#/components/parameters/all_fields
        - $ref: ../components/SOL005_params.yaml#/components/parameters/fields
        - $ref: ../components/SOL005_params.yaml#/components/parameters/exclude_fields
        - $ref: ../components/SOL005_params.yaml#/components/parameters/exclude_default
        - $ref: ../components/SOL005_params.yaml#/components/parameters/nextpage_opaque_marker
84
85
      responses:
        200:
86
          $ref: '#/components/responses/NSDescriptors.Get.200'
87
        400:
88
          $ref: "../responses/SOL005_resp.yaml#/components/responses/400"
89
        401:
90
          $ref: "../responses/SOL005_resp.yaml#/components/responses/401"
91
        403:
92
          $ref: "../responses/SOL005_resp.yaml#/components/responses/403"
93
        404:
94
          $ref: "../responses/SOL005_resp.yaml#/components/responses/404"
95
        405:
96
          $ref: "../responses/SOL005_resp.yaml#/components/responses/405"
97
        406:
98
          $ref: "../responses/SOL005_resp.yaml#/components/responses/406"
99
        500:
100
          $ref: "../responses/SOL005_resp.yaml#/components/responses/500"
101
        503:
102
          $ref: "../responses/SOL005_resp.yaml#/components/responses/503"
103
        504:
104
          $ref: "../responses/SOL005_resp.yaml#/components/responses/504"
105
106
107
108

  ###############################################################################
  # Individual NS Descriptor                                                    #
  ###############################################################################
109
  /ns_descriptors/{nsdInfoId}:
110
111
    #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.3
    parameters:
112
113
114
      - $ref: '#/components/parameters/NsdInfoId'
      - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization
      - $ref: ../components/SOL005_params.yaml#/components/parameters/Version
115

116
    get:
117
      description: |
118
        The GET method reads information about an individual NS descriptor. See clause 5.4.3.3.2.
119
      parameters:
120
        - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept
121
122
      responses:
        200:
123
          $ref: '#/components/responses/IndividualNSDescriptor.Get.200'
124
        400:
125
          $ref: "../responses/SOL005_resp.yaml#/components/responses/400"
126
        401:
127
          $ref: "../responses/SOL005_resp.yaml#/components/responses/401"
128
        403:
129
          $ref: "../responses/SOL005_resp.yaml#/components/responses/403"
130
        404:
131
          $ref: "../responses/SOL005_resp.yaml#/components/responses/404"
132
        405:
133
          $ref: "../responses/SOL005_resp.yaml#/components/responses/405"
134
        406:
135
          $ref: "../responses/SOL005_resp.yaml#/components/responses/406"
136
        500:
137
          $ref: "../responses/SOL005_resp.yaml#/components/responses/500"
138
        503:
139
          $ref: "../responses/SOL005_resp.yaml#/components/responses/503"
140
        504:
141
          $ref: "../responses/SOL005_resp.yaml#/components/responses/504"
142

143
    patch:
144
      description: |
145
        The PATCH method modifies the operational state and/or user defined data of an individual NS descriptor resource.
146
        See clause 5.4.3.3.4.
147
148
      requestBody:
        $ref: '#/components/requestBodies/NsdInfoModifications'
149
      responses:
150
        200:
151
          $ref: '#/components/responses/IndividualNSDescriptor.Patch.200'
152
        400:
153
          $ref: "../responses/SOL005_resp.yaml#/components/responses/400"
154
        401:
155
          $ref: "../responses/SOL005_resp.yaml#/components/responses/401"
156
        403:
157
          $ref: "../responses/SOL005_resp.yaml#/components/responses/403"
158
        404:
159
          $ref: "../responses/SOL005_resp.yaml#/components/responses/404"
160
        405:
161
          $ref: "../responses/SOL005_resp.yaml#/components/responses/405"
162
        406:
163
          $ref: "../responses/SOL005_resp.yaml#/components/responses/406"
164
        409:
165
          #  description: |
166
167
168
          #    409 CONFLICT

          #    Error: The operation cannot be executed currently,
169
          #    due to a conflict with the state of the "individual NS descriptor" resource.
170
171
172
173
174
175
176
177
          #    Typically, this is due to an operational state
          #    mismatch, i.e. enable an already enabled or
          #    disable an already disabled individual NS
          #    descriptor resource, or the "nsdOnboardingState"
          #    is not ONBOARDED.
          #    The response body shall contain a ProblemDetails
          #    structure, in which the "detail" attribute shall convey
          #    more information about the error.
178
          $ref: "../responses/SOL005_resp.yaml#/components/responses/409"
179
        412:
180
          $ref: "../responses/SOL005_resp.yaml#/components/responses/412"
181
        500:
182
          $ref: "../responses/SOL005_resp.yaml#/components/responses/500"
183
        503:
184
          $ref: "../responses/SOL005_resp.yaml#/components/responses/503"
185
        504:
186
          $ref: "../responses/SOL005_resp.yaml#/components/responses/504"
187

188
    delete:
189
      description: |
190
        The DELETE method deletes an individual NS descriptor resource. See clause 5.4.3.3.5.
191
192
      responses:
        204:
193
          $ref: '#/components/responses/IndividualNSDescriptor.Delete.204'
194
        400:
195
          $ref: "../responses/SOL005_resp.yaml#/components/responses/400"
196
        401:
197
          $ref: "../responses/SOL005_resp.yaml#/components/responses/401"
198
        403:
199
          $ref: "../responses/SOL005_resp.yaml#/components/responses/403"
200
        404:
201
          $ref: "../responses/SOL005_resp.yaml#/components/responses/404"
202
        405:
203
          $ref: "../responses/SOL005_resp.yaml#/components/responses/405"
204
        406:
205
          $ref: "../responses/SOL005_resp.yaml#/components/responses/406"
206
        409:
207
          #  description: |
208
209
210
211
212
213
          #    409 CONFLICT

          #    Error: The operation cannot be executed currently,
          #    due to a conflict with the state of the resource.
          #    Typically, this is due to the fact the NS descriptor
          #    resource is in the enabled operational state (i.e.
214
          #    nsdOperationalState = ENABLED) or there are running
215
          #    NS instances using the concerned individual NS
216
          #    descriptor resource (i.e. nsdUsageState = IN_USE).
217
218
219
          #    The response body shall contain a ProblemDetails
          #    structure, in which the "detail" attribute shall convey
          #    more information about the error.
220
          $ref: "../responses/SOL005_resp.yaml#/components/responses/409"
221
        500:
222
          $ref: "../responses/SOL005_resp.yaml#/components/responses/500"
223
        503:
224
          $ref: "../responses/SOL005_resp.yaml#/components/responses/503"
225
        504:
226
          $ref: "../responses/SOL005_resp.yaml#/components/responses/504"
227
228

  ###############################################################################
229
  # NSD Archive Content                                                         #
230
  ###############################################################################
231
  /ns_descriptors/{nsdInfoId}/nsd_content:
232
233
    #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.4
    parameters:
234
235
236
      - $ref: '#/components/parameters/NsdInfoId'
      - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization
      - $ref: ../components/SOL005_params.yaml#/components/parameters/Version
237

238
    get:
239
      description: |
240
        The GET method fetches the content of the NSD archive. See clause 5.4.4.3.2.
241
      parameters:
242
243
        - $ref: '#/components/parameters/AcceptTextOrZip'
        - $ref: ../components/SOL005_params.yaml#/components/parameters/Range
244
245
      responses:
        200:
246
          $ref: '#/components/responses/NsdArchiveContent.Get.200'
247
        206:
248
          #  description: |
249
250
251
252
253
254
255
256
257
258
259
          #    206 PARTIAL CONTENT

          #    On success, if the NFVO supports range requests,
          #    a single consecutive byte range from the content of
          #    the NSD file is returned.
          #    The response body shall contain the requested part
          #    of the NSD file.
          #    The "Content-Range" HTTP header shall be
          #    provided according to IETF RFC 7233.
          #    The "Content-Type" HTTP header shall be set as
          #    defined above for the "200 OK" response.
260
          $ref: "../responses/SOL005_resp.yaml#/components/responses/206"
261
        400:
262
          $ref: "../responses/SOL005_resp.yaml#/components/responses/400"
263
        401:
264
          $ref: "../responses/SOL005_resp.yaml#/components/responses/401"
265
        403:
266
          $ref: "../responses/SOL005_resp.yaml#/components/responses/403"
267
        404:
268
          $ref: "../responses/SOL005_resp.yaml#/components/responses/404"
269
        405:
270
          $ref: "../responses/SOL005_resp.yaml#/components/responses/405"
271
        406:
272
          #  description: |
273
274
275
276
277
278
279
280
281
          #    406 NOT ACCEPTABLE

          #    If the "Accept" header does not contain at least one
          #    name of a content type for which the NFVO can
          #    provide a representation of the NSD, the NFVO
          #    shall respond with this response code.
          #    The "ProblemDetails" structure may be included
          #    with the "detail" attribute providing more information
          #    about the error.
282
          $ref: "../responses/SOL005_resp.yaml#/components/responses/406"
283
        409:
284
          #  description: |
285
286
287
288
289
290
291
292
293
294
295
          #    409 CONFLICT

          #    Shall be returned upon the following error: The
          #    operation cannot be executed currently, due to a
          #    conflict with the state of the resource.
          #    Typically, this is due to the fact
          #    "nsdOnboardingState" has a value different from
          #    ONBOARDED.
          #    The response body shall contain a ProblemDetails
          #    structure, in which the "detail" attribute shall convey
          #    more information about the error.
296
          $ref: "../responses/SOL005_resp.yaml#/components/responses/409"
297
        416:
298
          #  description: |
299
300
301
302
303
304
305
          #    416 RANGE NOT SATISFIABLE

          #    The byte range passed in the "Range" header did
          #    not match any available byte range in the NSD file
          #    (e.g. "access after end of file").
          #    The response body may contain a ProblemDetails
          #    structure.
306
          $ref: "../responses/SOL005_resp.yaml#/components/responses/416"
307
        500:
308
          $ref: "../responses/SOL005_resp.yaml#/components/responses/500"
309
        503:
310
          $ref: "../responses/SOL005_resp.yaml#/components/responses/503"
311
        504:
312
          $ref: "../responses/SOL005_resp.yaml#/components/responses/504"
313

314
    put:
315
      description: |
316
        The PUT method is used to upload the content of an NSD archive. See clause 5.4.4.3.3.
317
      parameters:
318
        - $ref: '#/components/parameters/ContentTypeZip'
319
320
      responses:
        202:
321
          $ref: '#/components/responses/NsdArchiveContent.Put.202'
322
        204:
323
          $ref: '#/components/responses/NsdArchiveContent.Put.204'
324
        400:
325
          $ref: "../responses/SOL005_resp.yaml#/components/responses/400"
326
        401:
327
          $ref: "../responses/SOL005_resp.yaml#/components/responses/401"
328
        403:
329
          $ref: "../responses/SOL005_resp.yaml#/components/responses/403"
330
        404:
331
          $ref: "../responses/SOL005_resp.yaml#/components/responses/404"
332
        405:
333
          $ref: "../responses/SOL005_resp.yaml#/components/responses/405"
334
        406:
335
          $ref: "../responses/SOL005_resp.yaml#/components/responses/406"
336
        409:
337
          #          description: |
338
339
340
341
342
343
344
345
346
347
          #            409 CONFLICT
          #
          #            Error: The operation cannot be executed currently,
          #            due to a conflict with the state of the resource.
          #            Typically, this is due to the fact that the
          #            NsdOnboardingState has a value other than
          #            CREATED.
          #            The response body shall contain a ProblemDetails
          #            structure, in which the "detail" attribute shall convey
          #            more information about the error.
348
          $ref: "../responses/SOL005_resp.yaml#/components/responses/409"
349
        500:
350
          $ref: "../responses/SOL005_resp.yaml#/components/responses/500"
351
        503:
352
          $ref: "../responses/SOL005_resp.yaml#/components/responses/503"
353
        504:
354
          $ref: "../responses/SOL005_resp.yaml#/components/responses/504"
355
356
357
358

  ###############################################################################
  # NSD                                                                         #
  ###############################################################################
359
  /ns_descriptors/{nsdInfoId}/nsd:
360
361
    #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.4a
    parameters:
362
363
364
      - $ref: '#/components/parameters/NsdInfoId'
      - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization
      - $ref: ../components/SOL005_params.yaml#/components/parameters/Version
365
366

    get:
367
      description: |
368
        The GET method reads the content of the NSD within an NSD archive. See clause 5.4.4a.3.2.
369
      parameters:
370
371
        - $ref: ../components/SOL005_params.yaml#/components/parameters/include_signatures
        - $ref: '#/components/parameters/AcceptTextOrZip'
372
373
      responses:
        200:
374
          $ref: '#/components/responses/NSD.Get.200'
375
        400:
376
          $ref: "../responses/SOL005_resp.yaml#/components/responses/400"
377
        401:
378
          $ref: "../responses/SOL005_resp.yaml#/components/responses/401"
379
        403:
380
          $ref: "../responses/SOL005_resp.yaml#/components/responses/403"
381
        404:
382
          $ref: "../responses/SOL005_resp.yaml#/components/responses/404"
383
        405:
384
          $ref: "../responses/SOL005_resp.yaml#/components/responses/405"
385
        406:
386
          $ref: "../responses/SOL005_resp.yaml#/components/responses/406"
387
        409:
388
          $ref: "../responses/SOL005_resp.yaml#/components/responses/409"
389
        500:
390
          $ref: "../responses/SOL005_resp.yaml#/components/responses/500"
391
        503:
392
          $ref: "../responses/SOL005_resp.yaml#/components/responses/503"
393
        504:
394
          $ref: "../responses/SOL005_resp.yaml#/components/responses/504"
395
396
397
398

  ###############################################################################
  # NSD Archive Manifest                                                        #
  ###############################################################################
399
  /ns_descriptors/{nsdInfoId}/manifest:
400
401
    #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.4b
    parameters:
402
403
404
      - $ref: '#/components/parameters/NsdInfoId'
      - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization
      - $ref: ../components/SOL005_params.yaml#/components/parameters/Version
405
406

    get:
407
      description: |
408
        The GET method reads the content of the manifest file within an NSD archive. See clasue 5.4.4b.3.2.
409
      parameters:
410
411
        - $ref: '#/components/parameters/AcceptTextOrZip'
        - $ref: ../components/SOL005_params.yaml#/components/parameters/include_signatures
412
413
      responses:
        200:
414
          $ref: '#/components/responses/NsdArchiveManifest.Get.200'
415
        400:
416
          $ref: "../responses/SOL005_resp.yaml#/components/responses/400"
417
        401:
418
          $ref: "../responses/SOL005_resp.yaml#/components/responses/401"
419
        403:
420
          $ref: "../responses/SOL005_resp.yaml#/components/responses/403"
421
        404:
422
          $ref: "../responses/SOL005_resp.yaml#/components/responses/404"
423
        405:
424
          $ref: "../responses/SOL005_resp.yaml#/components/responses/405"
425
        409:
426
          #  description: |
427
428
429
430
431
432
433
434
435
436
437
          #    409 CONFLICT

          #    Shall be returned upon the following error: The
          #    operation cannot be executed currently, due to a
          #    conflict with the state of the resource.
          #    Typically, this is due to the fact
          #    "nsdOnboardingState" has a value different from
          #    ONBOARDED.
          #    The response body shall contain a ProblemDetails
          #    structure, in which the "detail" attribute shall convey
          #    more information about the error.
438
          $ref: "../responses/SOL005_resp.yaml#/components/responses/409"
439
        500:
440
          $ref: "../responses/SOL005_resp.yaml#/components/responses/500"
441
        503:
442
          $ref: "../responses/SOL005_resp.yaml#/components/responses/503"
443
        504:
444
          $ref: "../responses/SOL005_resp.yaml#/components/responses/504"
445

446
447
448
  ###############################################################################
  # Individual NSD Archive Artifact                                             #
  ###############################################################################
449
  /ns_descriptors/{nsdInfoId}/artifacts/{artifactPath}:
450
    #ETSI GS NFV-SOL 005 V3.5.1 location: 5.4.4c
451
    parameters:
452
453
454
455
      - $ref: '#/components/parameters/NsdInfoId'
      - $ref: '#/components/parameters/ArtifactPathInNSD'
      - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization
      - $ref: ../components/SOL005_params.yaml#/components/parameters/Version
456
    get:
457
      description: |
458
        The GET method fetches the content of an individual artifact within an NSD archive. See clause 5.4.4c.3.2.
459
      parameters:
460
461
        - $ref: ../components/SOL005_params.yaml#/components/parameters/Range
        - $ref: ../components/SOL005_params.yaml#/components/parameters/include_signatures
462
463
      responses:
        200:
464
          $ref: '#/components/responses/IndividualNsdArchiveArtifact.Get.200'
465
        206:
466
          $ref: '#/components/responses/IndividualNsdArchiveArtifact.Get.206'
467
468
469
470
471
472
473
474
475
        400:
          $ref: "../responses/SOL005_resp.yaml#/components/responses/400"
        401:
          $ref: "../responses/SOL005_resp.yaml#/components/responses/401"
        403:
          $ref: "../responses/SOL005_resp.yaml#/components/responses/403"
        404:
          $ref: "../responses/SOL005_resp.yaml#/components/responses/404"
        406:
476
          # description: |
477
478
479
480
481
482
483
484
485
486
          #   If the related request contained an "Accept" header not compatible with the Content type
          #   "application/zip" but the "include_signatures" flag was provided, the NFVO shall respond 
          #   with this response code.

          #   The "ProblemDetails" structure may be included with the "detail" attribute providing more 
          #   information about the error.
          $ref: "../responses/SOL005_resp.yaml#/components/responses/405"
        405:
          $ref: "../responses/SOL005_resp.yaml#/components/responses/406"
        409:
487
          # description: |
488
489
490
491
492
493
494
495
496
497
          #   Shall be returned upon the following error: The operation cannot be executed currently, 
          #   due to a conflict with the state of the resource. 

          #   Typically, this is due to the fact that "nsdOnboardingState" has a value different from
          #   "ONBOARDED".

          #   The response body shall contain a ProblemDetails structure, in which the "detail" attribute 
          #   shall convey more information about the error.
          $ref: "../responses/SOL005_resp.yaml#/components/responses/409"
        416:
498
          # description: |
499
500
501
502
503
504
505
506
507
508
509
510
          #   The byte range passed in the "Range" header did not match any available byte range in the 
          #   artifact file (e.g. "access after end of file").

          #   The response body may contain a ProblemDetails structure.
          $ref: "../responses/SOL005_resp.yaml#/components/responses/416"
        500:
          $ref: "../responses/SOL005_resp.yaml#/components/responses/500"
        503:
          $ref: "../responses/SOL005_resp.yaml#/components/responses/503"
        504:
          $ref: "../responses/SOL005_resp.yaml#/components/responses/504"
  
511
512
513
  ###############################################################################
  # PNF Descriptors                                                             #
  ###############################################################################
514
  /pnf_descriptors:
515
    #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.5
516
    parameters:
517
518
      - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization
      - $ref: ../components/SOL005_params.yaml#/components/parameters/Version
519
520

    post:
521
      description: |
522
        The POST method is used to create a new PNF descriptor resource. See clause 5.4.5.3.1.
523
      parameters:
524
525
526
527
        - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept
        - $ref: ../components/SOL005_params.yaml#/components/parameters/ContentType
      requestBody:
        $ref: '#/components/requestBodies/CreatePnfdInfoRequest'
528
529
      responses:
        201:
530
          $ref: '#/components/responses/PNFDescriptors.Post.201'
531
        400:
532
          $ref: "../responses/SOL005_resp.yaml#/components/responses/400"
533
        401:
534
          $ref: "../responses/SOL005_resp.yaml#/components/responses/401"
535
        403:
536
          $ref: "../responses/SOL005_resp.yaml#/components/responses/403"
537
        404:
538
          $ref: "../responses/SOL005_resp.yaml#/components/responses/404"
539
        405:
540
          $ref: "../responses/SOL005_resp.yaml#/components/responses/405"
541
        406:
542
          $ref: "../responses/SOL005_resp.yaml#/components/responses/406"
543
        500:
544
          $ref: "../responses/SOL005_resp.yaml#/components/responses/500"
545
        503:
546
          $ref: "../responses/SOL005_resp.yaml#/components/responses/503"
547
        504:
548
          $ref: "../responses/SOL005_resp.yaml#/components/responses/504"
549

550
    get:
551
      description: |
552
        The GET method queries information about multiple PNF descriptor resources. See clause 5.4.5.3.2.
553
      parameters:
554
555
556
557
558
559
        - $ref: ../components/SOL005_params.yaml#/components/parameters/filter
        - $ref: ../components/SOL005_params.yaml#/components/parameters/all_fields
        - $ref: ../components/SOL005_params.yaml#/components/parameters/fields
        - $ref: ../components/SOL005_params.yaml#/components/parameters/exclude_fields
        - $ref: ../components/SOL005_params.yaml#/components/parameters/exclude_default
        - $ref: ../components/SOL005_params.yaml#/components/parameters/nextpage_opaque_marker
560
561
      responses:
        200:
562
          $ref: '#/components/responses/PNFDescriptors.Get.200'
563
        400:
564
          $ref: "../responses/SOL005_resp.yaml#/components/responses/400"
565
        401:
566
          $ref: "../responses/SOL005_resp.yaml#/components/responses/401"
567
        403:
568
          $ref: "../responses/SOL005_resp.yaml#/components/responses/403"
569
        404:
570
          $ref: "../responses/SOL005_resp.yaml#/components/responses/404"
571
        405:
572
          $ref: "../responses/SOL005_resp.yaml#/components/responses/405"
573
        406:
574
          $ref: "../responses/SOL005_resp.yaml#/components/responses/406"
575
        500:
576
          $ref: "../responses/SOL005_resp.yaml#/components/responses/500"
577
        503:
578
          $ref: "../responses/SOL005_resp.yaml#/components/responses/503"
579
        504:
580
          $ref: "../responses/SOL005_resp.yaml#/components/responses/504"
581

582
583
584
  ###############################################################################
  # Individual PNF Descriptor                                                   #
  ###############################################################################
585
  /pnf_descriptors/{pnfdInfoId}:
586
587
    #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.6
    parameters:
588
      - $ref: '#/components/parameters/PnfdInfoId'
589

590
    get:
591
      description: |
592
        The GET method reads information about an individual PNF descriptor. See clause 5.4.6.3.2.
593
      parameters:
594
595
596
        - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept
        - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization
        - $ref: ../components/SOL005_params.yaml#/components/parameters/Version
597
598
      responses:
        200:
599
          $ref: '#/components/responses/IndividualPnfDescriptor.Get.200'
600
        400:
601
          $ref: "../responses/SOL005_resp.yaml#/components/responses/400"
602
        401:
603
          $ref: "../responses/SOL005_resp.yaml#/components/responses/401"
604
        403:
605
          $ref: "../responses/SOL005_resp.yaml#/components/responses/403"
606
        404:
607
          $ref: "../responses/SOL005_resp.yaml#/components/responses/404"
608
        405:
609
          $ref: "../responses/SOL005_resp.yaml#/components/responses/405"
610
        406:
611
          $ref: "../responses/SOL005_resp.yaml#/components/responses/406"
612
        500:
613
          $ref: "../responses/SOL005_resp.yaml#/components/responses/500"
614
        503:
615
          $ref: "../responses/SOL005_resp.yaml#/components/responses/503"
616
        504:
617
          $ref: "../responses/SOL005_resp.yaml#/components/responses/504"
618
619

    patch:
620
      description: |
621
        The PATCH method modifies the user defined data of an individual PNF descriptor resource. See clause 5.4.6.3.4.
622
      parameters:
623
624
625
626
        - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept
        - $ref: ../components/SOL005_params.yaml#/components/parameters/ContentType
      requestBody:
        $ref: '#/components/requestBodies/PnfdInfoModifications'
627
628
      responses:
        200:
629
          $ref: '#/components/responses/IndividualPnfDescriptor.Patch.200'
630
        400:
631
          $ref: "../responses/SOL005_resp.yaml#/components/responses/400"
632
        401:
633
          $ref: "../responses/SOL005_resp.yaml#/components/responses/401"
634
        403:
635
          $ref: "../responses/SOL005_resp.yaml#/components/responses/403"
636
        404:
637
          $ref: "../responses/SOL005_resp.yaml#/components/responses/404"
638
        405:
639
          $ref: "../responses/SOL005_resp.yaml#/components/responses/405"
640
        406:
641
          $ref: "../responses/SOL005_resp.yaml#/components/responses/406"
642
        412:
643
          $ref: "../responses/SOL005_resp.yaml#/components/responses/412"
644
        500:
645
          $ref: "../responses/SOL005_resp.yaml#/components/responses/500"
646
        503:
647
          $ref: "../responses/SOL005_resp.yaml#/components/responses/503"
648
        504:
649
          $ref: "../responses/SOL005_resp.yaml#/components/responses/504"
650

651
    delete:
652
      description: |
653
        The DELETE method deletes an individual PNF descriptor resource. See clause 5.4.6.3.5.
654
655
      responses:
        204:
656
          $ref: '#/components/responses/IndividualPnfDescriptor.Delete.200'
657
        400:
658
          $ref: "../responses/SOL005_resp.yaml#/components/responses/400"
659
        401:
660
          $ref: "../responses/SOL005_resp.yaml#/components/responses/401"
661
        403:
662
          $ref: "../responses/SOL005_resp.yaml#/components/responses/403"
663
        404:
664
          $ref: "../responses/SOL005_resp.yaml#/components/responses/404"
665
        405:
666
          $ref: "../responses/SOL005_resp.yaml#/components/responses/405"
667
        406:
668
          $ref: "../responses/SOL005_resp.yaml#/components/responses/406"
669
        500:
670
          $ref: "../responses/SOL005_resp.yaml#/components/responses/500"
671
        503:
672
          $ref: "../responses/SOL005_resp.yaml#/components/responses/503"
673
        504:
674
          $ref: "../responses/SOL005_resp.yaml#/components/responses/504"
675

676
  ###############################################################################
677
  # PNFD Archive Content                                                        #
678
  ###############################################################################
679
  /pnf_descriptors/{pnfdInfoId}/pnfd_content:
680
681
    #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.7
    parameters:
682
683
684
      - $ref: '#/components/parameters/PnfdInfoId'
      - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization
      - $ref: ../components/SOL005_params.yaml#/components/parameters/Version
685

686
    get:
687
      description: |
688
        The GET method fetches the content of the PNFD archive. See clause 5.4.7.3.2.
689
      parameters:
690
691
        - $ref: '#/components/parameters/AcceptText'