openapi: 3.0.0
+
servers:
- description: OSM NB API
url: https://osm.etsi.org/nbapi/v1.0.0
+
info:
description: |
This is Open Source MANO Northbound API featuring ETSI NFV SOL005.
- For more information on OSM, you can visit
- [http://osm.etsi.org](http://osm.etsi.org) or connect to IRCs
- [Freenode, #etsi-osm](http://webchat.freenode.net?channels=etsi-osm) or on
- [OSM IRC, #tech](https://osm.etsi.org:8080/kiwi)
+ For more information on OSM, you can visit [http://osm.etsi.org](http://osm.etsi.org).
+ You can send us your comments and questions to OSM_TECH@list.etsi.org
+ or join the [OpenSourceMANO Slack Workplace](https://join.slack.com/t/opensourcemano/shared_invite/enQtMzQ3MzYzNTQ0NDIyLWVkNTE4ZjZjNWI0ZTQyN2VhOTI1MjViMzU1NWYwMWM3ODI4NTQyY2VlODA2ZjczMWIyYTFkZWNiZmFkM2M2ZDk)
version: "1.0.0"
title: OSM NB API featuring ETSI NFV SOL005
contact:
license:
name: Apache 2.0
url: 'http://www.apache.org/licenses/LICENSE-2.0.html'
+
tags:
- name: 'VNF packages'
description: Management operations of VNF descriptors and packages
description: Management operations of NS descriptors and packages
- name: 'NS instances'
description: Management operations of NS instances
+ - name: 'NetSlice templates'
+ description: Management operations of NetSlice Templates
+ - name: 'NetSlice instances'
+ description: Management operations of NetSlice Instances
+# - name: 'NSPM'
+# description: Management operations of NSPMs
+# - name: 'PDU'
+# description: Management operations of PDUs
+# - name: 'Admin'
+# description: Management operations of Administration items
+
+security:
+ - bearerAuth: []
+
paths:
- /nsd/v1/ns_descriptors:
+
+# BEGIN NS Packages
+ '/nsd/v1/ns_descriptors':
get:
tags:
- "NS packages"
summary: Query information about multiple NS descriptor resources
description: Query information about multiple NS descriptor resources
operationId: getNSDs
- security:
- - bearerAuth: []
responses:
'200':
description: OK
summary: Create a new NS descriptor resource
description: Create a new NS descriptor resource
operationId: addNSD
- security:
- - bearerAuth: []
requestBody:
$ref: '#/components/requestBodies/CreateNsdInfoRequest'
responses:
content:
application/json:
schema:
- $ref: '#/components/schemas/NsdInfo'
+ $ref: '#/components/schemas/ObjectId'
application/yaml:
schema:
- $ref: '#/components/schemas/NsdInfo'
+ $ref: '#/components/schemas/ObjectId'
'400':
$ref: '#/components/responses/BadRequest'
'401':
default:
$ref: '#/components/responses/UnexpectedError'
'/nsd/v1/ns_descriptors/{nsdInfoId}':
+ parameters:
+ - name: nsdInfoId
+ in: path
+ required: true
+ description: NSD Info ID
+ schema:
+ type : string
get:
tags:
- "NS packages"
summary: Read information about an individual NS descriptor resource
description: Read information about an individual NS descriptor resource
operationId: getNSD
- security:
- - bearerAuth: []
responses:
'200':
description: OK
summary: Delete an individual NS descriptor resource
description: Delete an individual NS descriptor resource
operationId: deleteNSD
- security:
- - bearerAuth: []
responses:
'204':
description: No Content
patch:
tags:
- "NS packages"
- summary: Modify the operational state and/or the user defined data of an individual NS descriptor resource
- description: Modify the operational state and/or the user defined data of an individual NS descriptor resource
+ summary: Modify the data of an individual NS descriptor resource
+ description: Modify the data of an individual NS descriptor resource
operationId: updateNSD
- security:
- - bearerAuth: []
requestBody:
$ref: '#/components/requestBodies/NsdInfoModifications'
responses:
- '200':
- description: OK
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/NsdInfoModifications'
- application/yaml:
- schema:
- $ref: '#/components/schemas/NsdInfoModifications'
+ '204':
+ description: No Content
'400':
$ref: '#/components/responses/BadRequest'
'401':
default:
$ref: '#/components/responses/UnexpectedError'
'/nsd/v1/ns_descriptors/{nsdInfoId}/nsd_content':
+ parameters:
+ - name: nsdInfoId
+ in: path
+ required: true
+ description: NSD Info ID
+ schema:
+ type : string
get:
tags:
- "NS packages"
summary: Fetch the content of a NSD
description: Fetch the content of a NSD
operationId: getNSDcontent
- security:
- - bearerAuth: []
responses:
'200':
description: OK
- $ref: '#/components/requestBodies/NsdContent'
+ content:
+ application/zip:
+ schema:
+ $ref: '#/components/schemas/NsPackage'
'206':
description: Partial Content
headers:
Content-Range:
schema:
type: string
- $ref: '#/components/requestBodies/NsdContent'
+ content:
+ application/zip:
+ schema:
+ $ref: '#/components/schemas/NsPackage'
'400':
$ref: '#/components/responses/BadRequest'
'401':
summary: Upload the content of a NSD
description: Upload the content of a NSD
operationId: updateNSDcontent
- security:
- - bearerAuth: []
requestBody:
- $ref: '#/components/requestBodies/NsdContent'
+ $ref: '#/components/requestBodies/NsPackage'
responses:
'202':
description: Accepted
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- /vnfpkgm/v1/vnf_packages:
+ '/nsd/v1/ns_descriptors/{nsdInfoId}/artifacts/{artifactPath}':
+ parameters:
+ - name: nsdInfoId
+ in: path
+ required: true
+ description: NS Package ID
+ schema:
+ type : string
+ - name: artifactPath
+ in: path
+ required: true
+ description: Artifact Path
+ schema:
+ type : string
get:
tags:
- - "VNF packages"
- summary: Query information about multiple VNF package resources
- description: Query information about multiple VNF package resoureces
- operationId: getVnfPkgs
- security:
- - bearerAuth: []
+ - "NS packages"
+ summary: Fetch individual NS package artifact
+ description: Fetch individual NS package artifact
+ operationId: getNsPkgArtifact
responses:
'200':
description: OK
content:
- application/json:
+ application/octet-stream:
schema:
- $ref: '#/components/schemas/ArrayOfVnfPkgInfo'
- application/yaml:
+ type: string
+ format: binary
+ '206':
+ description: Partial Content
+ headers:
+ Content-Range:
schema:
- $ref: '#/components/schemas/ArrayOfVnfPkgInfo'
+ type: string
+ content:
+ application/octet-stream:
+ schema:
+ type: string
+ format: binary
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/nsd/v1/ns_descriptors/{nsdInfoId}/nsd':
+ parameters:
+ - name: nsdInfoId
+ in: path
+ required: true
+ description: NS Package ID
+ schema:
+ type : string
+ get:
+ tags:
+ - "NS packages"
+ summary: Read NSD of an on-boarded NS package
+ description: Read NSD of an on-boarded NS package
+ operationId: getNsPkgNsd
+ responses:
+ '200':
+ description: OK
+ content:
+ text/plain:
+ schema:
+ $ref: '#/components/schemas/NsDescriptor'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
+ '/nsd/v1/ns_descriptors_content':
post:
tags:
- - "VNF packages"
- summary: Create a new VNF package resource
- description: Create a new VNF package resource
- operationId: addVnfPkg
- security:
- - bearerAuth: []
+ - "NS packages"
+ summary: Upload a NS package by providing the content of the NS package
+ description: Upload a NS package by providing the content of the NS package
+ operationId: uploadNsPkgsContent
requestBody:
- $ref: '#/components/requestBodies/CreateVnfPkgInfoRequest'
+ content:
+ application/zip:
+ schema:
+ $ref: '#/components/schemas/NsPackage'
responses:
'201':
description: Created
content:
application/json:
schema:
- $ref: '#/components/schemas/VnfPkgInfo'
+ $ref: '#/components/schemas/ObjectId'
application/yaml:
schema:
- $ref: '#/components/schemas/VnfPkgInfo'
+ $ref: '#/components/schemas/ObjectId'
+ '202':
+ description: Accepted
+ '204':
+ description: No Content
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- '/vnfpkgm/v1/vnf_packages/{vnfPkgId}':
get:
tags:
- - "VNF packages"
- summary: Read information about an individual VNF package resource
- description: Read information about an individual VNF package resource
- operationId: getVnfPkg
- security:
- - bearerAuth: []
+ - "NS packages"
+ summary: Query information about multiple NS package resources
+ description: Query information about multiple NS package resources
+ operationId: getNsPkgsContent
responses:
'200':
description: OK
content:
application/json:
schema:
- $ref: '#/components/schemas/VnfPkgInfo'
+ $ref: '#/components/schemas/ArrayOfNsdInfo'
application/yaml:
schema:
- $ref: '#/components/schemas/VnfPkgInfo'
+ $ref: '#/components/schemas/ArrayOfNsdInfo'
+ '206':
+ description: Partial Content
+ headers:
+ Content-Range:
+ schema:
+ type: string
+ content:
+ application/octet-stream:
+ schema:
+ type: string
+ format: binary
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- delete:
+ '/nsd/v1/ns_descriptors_content/{nsdInfoId}':
+ parameters:
+ - name: nsdInfoId
+ in: path
+ required: true
+ description: NS Package ID
+ schema:
+ type : string
+ get:
tags:
- - "VNF packages"
- summary: Delete an individual VNF package resource
- description: Delete an individual VNF package resource
- operationId: deleteVnfPkg
- security:
- - bearerAuth: []
+ - "NS packages"
+ summary: Read information about an individual NS package resource
+ description: Read information about an individual NS package resource
+ operationId: getNsPkgsIdContent
responses:
- '204':
- description: No Content
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/NsdInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/NsdInfo'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- patch:
+ put:
tags:
- - "VNF packages"
- summary: Modify the operational state and/or the user defined data of an individual VNF package resource
- description: Modify the operational state and/or the user defined data of an individual VNF package resource
- operationId: updateVnfPkg
- security:
- - bearerAuth: []
+ - "NS packages"
+ summary: Modify an individual NS package resource
+ description: Modify an individual NS package resource
+ operationId: updateNsPkgsIdContent
requestBody:
- $ref: '#/components/requestBodies/VnfPkgInfoModifications'
+ $ref: '#/components/requestBodies/NsdInfoModifications'
responses:
- '200':
- description: OK
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/VnfPkgInfoModifications'
- application/yaml:
- schema:
- $ref: '#/components/schemas/VnfPkgInfoModifications'
+ '204':
+ description: No Content
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- '/vnfpkgm/v1/vnf_packages/{vnfPkgId}/vnfd':
- get:
+ delete:
tags:
- - "VNF packages"
- summary: Read VNFD of an on-boarded VNF package
- description: Read VNFD of an on-boarded VNF package
- operationId: getVnfPkgVNFD
- security:
- - bearerAuth: []
+ - "NS packages"
+ summary: Delete an individual NS package resource
+ description: Delete an individual NS package resource
+ operationId: deleteNSPkgsIdContent
responses:
- '200':
- description: OK
- content:
- text/plain:
- schema:
- $ref: '#/components/schemas/VnfDescriptor'
+ '204':
+ description: No Content
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- '/vnfpkgm/v1/vnf_packages/{vnfPkgId}/package_content':
+# END NS Packages
+
+# BEGIN VNF Packages
+ '/vnfpkgm/v1/vnf_packages':
get:
tags:
- "VNF packages"
- summary: Fetch an on-boarded VNF package
- description: Fetch an on-boarded VNF package
- operationId: getVnfPkgContent
- security:
- - bearerAuth: []
+ summary: Query information about multiple VNF package resources
+ description: Query information about multiple VNF package resources
+ operationId: getVnfPkgs
responses:
'200':
description: OK
content:
- application/zip:
- schema:
- $ref: '#/components/schemas/VnfPackage'
- '206':
- description: Partial Content
- headers:
- Content-Range:
+ application/json:
schema:
- type: string
- content:
- application/zip:
+ $ref: '#/components/schemas/ArrayOfVnfPkgInfo'
+ application/yaml:
schema:
- $ref: '#/components/schemas/VnfPackage'
+ $ref: '#/components/schemas/ArrayOfVnfPkgInfo'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- put:
+ post:
tags:
- "VNF packages"
- summary: Upload a VNF package by providing the content of the VNF package
- description: Upload a VNF package by providing the content of the VNF package
- operationId: uploadVnfPkgContent
- security:
- - bearerAuth: []
+ summary: Create a new VNF package resource
+ description: Create a new VNF package resource
+ operationId: addVnfPkg
requestBody:
- $ref: '#/components/requestBodies/VnfPackage'
+ $ref: '#/components/requestBodies/CreateVnfPkgInfoRequest'
responses:
- '202':
- description: Accepted
- #'204':
- # description: No Content
+ '201':
+ description: Created
+ headers:
+ Location:
+ schema:
+ type: string
+ format: uri
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- '/vnfpkgm/v1/vnf_packages/{vnfPkgId}/package_content/upload_from_uri':
- post:
+ '/vnfpkgm/v1/vnf_packages/{vnfPkgId}':
+ parameters:
+ - name: vnfPkgId
+ in: path
+ required: true
+ description: VNF Package ID
+ schema:
+ type : string
+ get:
tags:
- "VNF packages"
- summary: Upload a VNF package by providing the URI of the VNF package
- description: Upload a VNF package by providing the URI of the VNF package
- operationId: uploadVnfPkgContentFromURI
- security:
- - bearerAuth: []
- requestBody:
- $ref: '#/components/requestBodies/UploadVnfPackageFromUriRequest'
+ summary: Read information about an individual VNF package resource
+ description: Read information about an individual VNF package resource
+ operationId: getVnfPkg
responses:
- '202':
- description: Accepted
- #'204':
- # description: No Content
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/VnfPkgInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/VnfPkgInfo'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- '/vnfpkgm/v1/vnf_packages/{vnfPkgId}/artifacts/{artifactPath}':
- get:
+ delete:
tags:
- "VNF packages"
- summary: Fetch individual VNF package artifact
- description: Fetch individual VNF package artifact
- operationId: getVnfPkgArtifact
- security:
- - bearerAuth: []
+ summary: Delete an individual VNF package resource
+ description: Delete an individual VNF package resource
+ operationId: deleteVnfPkg
responses:
- '200':
- description: OK
- content:
- application/octet-stream:
- schema:
- type: string
- format: binary
- '206':
- description: Partial Content
- headers:
- Content-Range:
- schema:
- type: string
- content:
- application/octet-stream:
- schema:
- type: string
- format: binary
+ '204':
+ description: No Content
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
-externalDocs:
- description: Find out more OSM
- url: 'http://osm.etsi.org/wikipub'
-components:
- responses:
+ patch:
+ tags:
+ - "VNF packages"
+ summary: Modify an individual VNF package resource
+ description: Modify an individual VNF package resource
+ operationId: updateVnfPkg
+ requestBody:
+ $ref: '#/components/requestBodies/VnfPkgInfoModifications'
+ responses:
+ '204':
+ description: No Content
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/vnfpkgm/v1/vnf_packages/{vnfPkgId}/vnfd':
+ parameters:
+ - name: vnfPkgId
+ in: path
+ required: true
+ description: VNF Package ID
+ schema:
+ type : string
+ get:
+ tags:
+ - "VNF packages"
+ summary: Read VNFD of an on-boarded VNF package
+ description: Read VNFD of an on-boarded VNF package
+ operationId: getVnfPkgVnfd
+ responses:
+ '200':
+ description: OK
+ content:
+ text/plain:
+ schema:
+ $ref: '#/components/schemas/VnfDescriptor'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/vnfpkgm/v1/vnf_packages/{vnfPkgId}/package_content':
+ parameters:
+ - name: vnfPkgId
+ in: path
+ required: true
+ description: VNF Package ID
+ schema:
+ type : string
+ get:
+ tags:
+ - "VNF packages"
+ summary: Fetch an on-boarded VNF package
+ description: Fetch an on-boarded VNF package
+ operationId: getVnfPkgContent
+ responses:
+ '200':
+ description: OK
+ content:
+ application/zip:
+ schema:
+ $ref: '#/components/schemas/VnfPackage'
+ '206':
+ description: Partial Content
+ headers:
+ Content-Range:
+ schema:
+ type: string
+ content:
+ application/zip:
+ schema:
+ $ref: '#/components/schemas/VnfPackage'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ put:
+ tags:
+ - "VNF packages"
+ summary: Upload a VNF package by providing the content of the VNF package
+ description: Upload a VNF package by providing the content of the VNF package
+ operationId: uploadVnfPkgContent
+ requestBody:
+ content:
+ application/zip:
+ schema:
+ $ref: '#/components/schemas/VnfPackage'
+ responses:
+ '202':
+ description: Accepted
+ '204':
+ description: No Content
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/vnfpkgm/v1/vnf_packages/{vnfPkgId}/artifacts/{artifactPath}':
+ parameters:
+ - name: vnfPkgId
+ in: path
+ required: true
+ description: VNF Package ID
+ schema:
+ type : string
+ - name: artifactPath
+ in: path
+ required: true
+ description: Artifact Path
+ schema:
+ type : string
+ get:
+ tags:
+ - "VNF packages"
+ summary: Fetch individual VNF package artifact
+ description: Fetch individual VNF package artifact
+ operationId: getVnfPkgArtifact
+ responses:
+ '200':
+ description: OK
+ content:
+ application/octet-stream:
+ schema:
+ type: string
+ format: binary
+ '206':
+ description: Partial Content
+ headers:
+ Content-Range:
+ schema:
+ type: string
+ content:
+ application/octet-stream:
+ schema:
+ type: string
+ format: binary
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/vnfpkgm/v1/vnf_packages_content':
+ post:
+ tags:
+ - "VNF packages"
+ summary: Upload a VNF package by providing the content of the VNF package
+ description: Upload a VNF package by providing the content of the VNF package
+ operationId: uploadVnfPkgsContent
+ requestBody:
+ content:
+ application/zip:
+ schema:
+ $ref: '#/components/schemas/VnfPackage'
+ responses:
+ '201':
+ description: Created
+ headers:
+ Location:
+ schema:
+ type: string
+ format: uri
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ '202':
+ description: Accepted
+ '204':
+ description: No Content
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ get:
+ tags:
+ - "VNF packages"
+ summary: Query information about multiple VNF package resources
+ description: Query information about multiple VNF package resources
+ operationId: getVnfPkgsContent
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ArrayOfVnfPkgInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ArrayOfVnfPkgInfo'
+ '206':
+ description: Partial Content
+ headers:
+ Content-Range:
+ schema:
+ type: string
+ content:
+ application/octet-stream:
+ schema:
+ type: string
+ format: binary
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/vnfpkgm/v1/vnf_packages_content/{packageContentId}':
+ parameters:
+ - name: packageContentId
+ in: path
+ required: true
+ description: VNF Package Content ID
+ schema:
+ type : string
+ get:
+ tags:
+ - "VNF packages"
+ summary: Read information about an individual VNF package resource
+ description: Read information about an individual VNF package resource
+ operationId: getVnfPkgsIdContent
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/VnfPkgInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/VnfPkgInfo'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ put:
+ tags:
+ - "VNF packages"
+ summary: Modify an individual VNF package resource
+ description: Modify an individual VNF package resource
+ operationId: updateVnfPkgsIdContent
+ requestBody:
+ $ref: '#/components/requestBodies/VnfPkgInfoModifications'
+ responses:
+ '204':
+ description: No Content
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ delete:
+ tags:
+ - "VNF packages"
+ summary: Delete an individual VNF package resource
+ description: Delete an individual VNF package resource
+ operationId: deleteVnfPkgsIdContent
+ responses:
+ '204':
+ description: No Content
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+# END VNF Packages
+
+# BEGIN NS Instances
+ '/nslcm/v1/ns_instances':
+ get:
+ tags:
+ - "NS instances"
+ summary: Query information about multiple NS instances
+ description: Query information about multiple NS isntances
+ operationId: getNSinstances
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ArrayOfNsInstance'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ArrayOfNsInstance'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ post:
+ tags:
+ - "NS instances"
+ summary: Create a new NS instance resource
+ description: Create a new NS instance resource
+ operationId: addNSinstance
+ requestBody:
+ $ref: '#/components/requestBodies/CreateNsRequest'
+ responses:
+ '201':
+ description: Created
+ headers:
+ Location:
+ schema:
+ type: string
+ format: uri
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/nslcm/v1/ns_instances/{nsInstanceId}':
+ parameters:
+ - name: nsInstanceId
+ in: path
+ required: true
+ description: NS Instance ID
+ schema:
+ type : string
+ get:
+ tags:
+ - "NS instances"
+ summary: Read an individual NS instance resource
+ description: Read an individual NS instance resource
+ operationId: getNSinstance
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/NsInstance'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/NsInstance'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ delete:
+ tags:
+ - "NS instances"
+ summary: Delete an individual NS instance resource
+ description: Delete an individual NS instance resource
+ operationId: deleteNSinstance
+ responses:
+ '204':
+ description: No Content
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/nslcm/v1/ns_instances/{nsInstanceId}/instantiate':
+ parameters:
+ - name: nsInstanceId
+ in: path
+ required: true
+ description: NS Instance ID
+ schema:
+ type : string
+ post:
+ tags:
+ - "NS instances"
+ summary: Instantiate a NS
+ description: |
+ Instantiate a NS. The precondition is that the NS instance must have
+ been created and must be in NOT_INSTANTIATED state. As a result of the
+ success of this operation, the NFVO creates a "NS Lifecycle Operation
+ Occurrence" resource for the request, and the NS instance state becomes
+ INSTANTIATED.
+ operationId: instantiateNSinstance
+ requestBody:
+ $ref: '#/components/requestBodies/InstantiateNsRequest'
+ responses:
+ '202':
+ description: Accepted
+ headers:
+ Location:
+ description: |
+ It must point to the new "NS Lifecycle Operation Occurrence"
+ resource, i.e. an URI like ".../ns_lcm_op_occs/{nsLcmOpOccId}"
+ schema:
+ type: string
+ format: uri
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/nslcm/v1/ns_instances/{nsInstanceId}/scale':
+ parameters:
+ - name: nsInstanceId
+ in: path
+ required: true
+ description: NS Instance ID
+ schema:
+ type : string
+ post:
+ tags:
+ - "NS instances"
+ summary: Scale a NS instance
+ description: |
+ Scale a NS instance. The precondition is that the NS instance must have
+ been created and must be in INSTANTIATED state. As a result of the
+ success of this operation, the NFVO creates a "NS Lifecycle Operation
+ Occurrence" resource for the request, and the NS instance state remains
+ INSTANTIATED.
+ operationId: scaleNSinstance
+ requestBody:
+ $ref: '#/components/requestBodies/ScaleNsRequest'
+ responses:
+ '202':
+ description: Accepted
+ headers:
+ Location:
+ description: |
+ It must point to the new "NS Lifecycle Operation Occurrence"
+ resource, i.e. an URI like ".../ns_lcm_op_occs/{nsLcmOpOccId}"
+ schema:
+ type: string
+ format: uri
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/nslcm/v1/ns_instances/{nsInstanceId}/terminate':
+ parameters:
+ - name: nsInstanceId
+ in: path
+ required: true
+ description: NS Instance ID
+ schema:
+ type : string
+ post:
+ tags:
+ - "NS instances"
+ summary: Terminate a NS instance
+ description: |
+ Terminate a NS instance. The precondition is that the NS instance must have
+ been created and must be in INSTANTIATED state. As a result of the
+ success of this operation, the NFVO creates a "NS Lifecycle Operation
+ Occurrence" resource for the request, and the NS instance state becomes
+ NOT_INSTANTIATED.
+ operationId: terminateNSinstance
+ requestBody:
+ # Request data is not required
+ $ref: '#/components/requestBodies/TerminateNsRequest'
+ responses:
+ '202':
+ description: Accepted
+ headers:
+ Location:
+ description: |
+ It must point to the new "NS Lifecycle Operation Occurrence"
+ resource, i.e. an URI like ".../ns_lcm_op_occs/{nsLcmOpOccId}"
+ schema:
+ type: string
+ format: uri
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/nslcm/v1/ns_instances/{nsInstanceId}/action':
+ parameters:
+ - name: nsInstanceId
+ in: path
+ required: true
+ description: NS Instance ID
+ schema:
+ type : string
+ post:
+ tags:
+ - "NS instances"
+ summary: Execute an action on a NS instance
+ description: |
+ Execute an action on a NS instance.
+ The NS instance must have been created and must be in INSTANTIATED state.
+ operationId: actionOnNSinstance
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/NSinstanceActionRequest'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/NSinstanceActionRequest'
+ responses:
+ '202':
+ description: Accepted
+ headers:
+ Location:
+ description: |
+ It must point to the new "NS Lifecycle Operation Occurrence"
+ resource, i.e. an URI like ".../ns_lcm_op_occs/{nsLcmOpOccId}"
+ schema:
+ type: string
+ format: uri
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/nslcm/v1/ns_instances_content':
+ get:
+ tags:
+ - "NS instances"
+ summary: Query information about multiple NS instances
+ description: Query information about multiple NS isntances
+ operationId: getNSinstancesContent
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ArrayOfNsInstance'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ArrayOfNsInstance'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ post:
+ tags:
+ - "NS instances"
+ summary: Create a new NS instance
+ description: Create a new NS instance
+ operationId: createNSinstanceContent
+ requestBody:
+ $ref: '#/components/requestBodies/CreateNSinstanceContentRequest'
+ responses:
+ '201':
+ description: Created
+ headers:
+ Location:
+ schema:
+ type: string
+ format: uri
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/CreateNSinstanceContentResponse'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/CreateNSinstanceContentResponse'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/nslcm/v1/ns_instances_content/{nsInstanceContentId}':
+ parameters:
+ - name: nsInstanceContentId
+ in: path
+ required: true
+ description: NS Instance Content ID
+ schema:
+ type : string
+ get:
+ tags:
+ - "NS instances"
+ summary: Read an individual NS instance resource
+ description: Read an individual NS instance resource
+ operationId: getNSinstanceContent
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/NsInstance'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/NsInstance'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ delete:
+ tags:
+ - "NS instances"
+ summary: Delete an individual NS instance resource
+ description: Delete an individual NS instance resource
+ operationId: deleteNSinstanceContent
+ responses:
+ '202':
+ description: Accepted
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ '204':
+ description: No Content
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/nslcm/v1/ns_lcm_op_occs':
+ get:
+ tags:
+ - "NS instances"
+ summary: Query information about multiple NS LCM Operation Occurrences
+ description: Query information about multiple NS LCM Operation Occurrences
+ operationId: getNSLCMOpOccs
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ArrayOfNsLcmOpOcc'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ArrayOfNsLcmOpOcc'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/nslcm/v1/ns_lcm_op_occs/{nsLcmOpOccId}':
+ parameters:
+ - name: nsLcmOpOccId
+ in: path
+ required: true
+ description: NS LCM Operation Occurrence ID
+ schema:
+ type : string
+ get:
+ tags:
+ - "NS instances"
+ summary: Query information about an individual NS LCM Operation Occurrence
+ description: Query information about an individual NS LCM Operation Occurrence
+ operationId: getNSLCMOpOcc
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/NsLcmOpOcc'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/NsLcmOpOcc'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/nslcm/v1/vnf_instances':
+ get:
+ tags:
+ - "NS instances"
+ summary: Query information about multiple VNF Instances
+ description: Query information about multiple VNF Instances
+ operationId: getVnfInstances
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ArrayOfVnfInstanceInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ArrayOfVnfInstanceInfo'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/nslcm/v1/vnf_instances/{vnfInstanceId}':
+ parameters:
+ - name: vnfInstanceId
+ in: path
+ required: true
+ description: VNF Instance ID
+ schema:
+ type : string
+ get:
+ tags:
+ - "NS instances"
+ summary: Query information about an individual VNF Instance
+ description: Query information about an individual VNF Instance
+ operationId: getVnfInstance
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/VnfInstanceInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/VnfInstanceInfo'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+# END NS Instances
+
+# BEGIN NetSlice Templates
+ '/nst/v1/netslice_templates':
+ get:
+ tags:
+ - "NetSlice templates"
+ summary: Query information about multiple NetSlice template resources
+ description: Query information about multiple NetSlice template resources
+ operationId: getNSTs
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ArrayOfNstInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ArrayOfNstInfo'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ post:
+ tags:
+ - "NetSlice templates"
+ summary: Create a new NetSlice template resource
+ description: Create a new NetSlice template resource
+ operationId: addNST
+ requestBody:
+ $ref: '#/components/requestBodies/CreateNstInfoRequest'
+ responses:
+ '201':
+ description: Created
+ headers:
+ Location:
+ schema:
+ type: string
+ format: uri
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/nst/v1/netslice_templates/{netsliceTemplateId}':
+ parameters:
+ - name: netsliceTemplateId
+ in: path
+ required: true
+ description: NetSlice Template ID
+ schema:
+ type : string
+ get:
+ tags:
+ - "NetSlice templates"
+ summary: Read information about an individual NetSlice template resource
+ description: Read information about an individual NetSlice template resource
+ operationId: getNST
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/NstInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/NstInfo'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ delete:
+ tags:
+ - "NetSlice templates"
+ summary: Delete an individual NetSlice template resource
+ description: Delete an individual NetSlice template resource
+ operationId: deleteNST
+ responses:
+ '204':
+ description: No Content
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/nst/v1/netslice_templates/{netsliceTemplateId}/artifacts/{artifactPath}':
+ parameters:
+ - name: netsliceTemplateId
+ in: path
+ required: true
+ description: NetSlice Template ID
+ schema:
+ type : string
+ - name: artifactPath
+ in: path
+ required: true
+ description: Artifact Path
+ schema:
+ type : string
+ get:
+ tags:
+ - "NetSlice templates"
+ summary: Fetch individual NetSlice Template artifact
+ description: Fetch individual NetSlice Template artifact
+ operationId: getNstArtifact
+ responses:
+ '200':
+ description: OK
+ content:
+ application/octet-stream:
+ schema:
+ type: string
+ format: binary
+ '206':
+ description: Partial Content
+ headers:
+ Content-Range:
+ schema:
+ type: string
+ content:
+ application/octet-stream:
+ schema:
+ type: string
+ format: binary
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/nst/v1/netslice_templates/{netsliceTemplateId}/nst':
+ parameters:
+ - name: netsliceTemplateId
+ in: path
+ required: true
+ description: NetSlice Template ID
+ schema:
+ type : string
+ get:
+ tags:
+ - "NetSlice templates"
+ summary: Read NST of an on-boarded NetSlice Template
+ description: Read NST of an on-boarded NetSlice Template
+ operationId: getNstNst
+ responses:
+ '200':
+ description: OK
+ content:
+ text/plain:
+ schema:
+ $ref: '#/components/schemas/NetSliceTemplate'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/nst/v1/netslice_templates/{netsliceTemplateId}/nst_content':
+ parameters:
+ - name: netsliceTemplateId
+ in: path
+ required: true
+ description: NetSlice Template ID
+ schema:
+ type : string
+ get:
+ tags:
+ - "NetSlice templates"
+ summary: Fetch the content of a NST
+ description: Fetch the content of a NST
+ operationId: getNSTcontent
+ responses:
+ '200':
+ description: OK
+ content:
+ application/zip:
+ schema:
+ $ref: '#/components/schemas/NetSlicePackage'
+ '206':
+ description: Partial Content
+ headers:
+ Content-Range:
+ schema:
+ type: string
+ content:
+ application/zip:
+ schema:
+ $ref: '#/components/schemas/NetSlicePackage'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ put:
+ tags:
+ - "NetSlice templates"
+ summary: Upload the content of a NST
+ description: Upload the content of a NST
+ operationId: updateNSTcontent
+ requestBody:
+ $ref: '#/components/requestBodies/NetSlicePackage'
+ responses:
+ '202':
+ description: Accepted
+ '204':
+ description: No Content
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/nst/v1/netslice_templates_content':
+ post:
+ tags:
+ - "NetSlice templates"
+ summary: Upload a NetSlice package by providing the content of the NetSlice package
+ description: Upload a NetSlice package by providing the content of the NetSlice package
+ operationId: uploadNstContent
+ requestBody:
+ content:
+ application/zip:
+ schema:
+ $ref: '#/components/schemas/NetSlicePackage'
+ responses:
+ '201':
+ description: Created
+ headers:
+ Location:
+ schema:
+ type: string
+ format: uri
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ '202':
+ description: Accepted
+ '204':
+ description: No Content
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ get:
+ tags:
+ - "NetSlice templates"
+ summary: Query information about multiple NetSlice Template resources
+ description: Query information about multiple NetSlice Template resources
+ operationId: getNstContent
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ArrayOfNstInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ArrayOfNstInfo'
+ '206':
+ description: Partial Content
+ headers:
+ Content-Range:
+ schema:
+ type: string
+ content:
+ application/octet-stream:
+ schema:
+ type: string
+ format: binary
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/nst/v1/netslice_templates_content/{netsliceTemplateContentId}':
+ parameters:
+ - name: netsliceTemplateContentId
+ in: path
+ required: true
+ description: NetSlice Template ID
+ schema:
+ type : string
+ get:
+ tags:
+ - "NetSlice templates"
+ summary: Read information about an individual NetSlice Template resource
+ description: Read information about an individual NetSlice Template resource
+ operationId: getNstIdContent
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/NstInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/NstInfo'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ put:
+ tags:
+ - "NetSlice templates"
+ summary: Modify an individual NetSlice Template resource
+ description: Modify an individual NetSlice Template resource
+ operationId: updateNstIdContent
+ requestBody:
+ $ref: '#/components/requestBodies/NstInfoModifications'
+ responses:
+ '204':
+ description: No Content
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ delete:
+ tags:
+ - "NetSlice templates"
+ summary: Delete an individual NetSlice Template resource
+ description: Delete an individual NetSlice Template resource
+ operationId: deleteNstIdContent
+ responses:
+ '204':
+ description: No Content
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+# END NetSlice Templates
+
+# BEGIN NetSlice Instances
+ '/nsilcm/v1/netslice_instances':
+ get:
+ tags:
+ - "NetSlice instances"
+ summary: Query information about multiple NetSlice instances
+ description: Query information about multiple NetSlice isntances
+ operationId: getNSIs
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ArrayOfNetSliceInstance'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ArrayOfNetSliceInstance'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ post:
+ tags:
+ - "NetSlice instances"
+ summary: Create a new NetSlice instance resource
+ description: Create a new NetSlice instance resource
+ operationId: addNSI
+ requestBody:
+ $ref: '#/components/requestBodies/CreateNsiRequest'
+ responses:
+ '201':
+ description: Created
+ headers:
+ Location:
+ schema:
+ type: string
+ format: uri
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/nsilcm/v1/netslice_instances/{netsliceInstanceId}':
+ parameters:
+ - name: netsliceInstanceId
+ in: path
+ required: true
+ description: NetSlice Instance ID
+ schema:
+ type : string
+ get:
+ tags:
+ - "NetSlice instances"
+ summary: Read an individual NetSlice instance resource
+ description: Read an individual NetSlice instance resource
+ operationId: getNSI
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/NetSliceInstance'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/NetSliceInstance'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ delete:
+ tags:
+ - "NetSlice instances"
+ summary: Delete an individual NetSlice instance resource
+ description: Delete an individual NetSlice instance resource
+ operationId: deleteNSI
+ responses:
+ '204':
+ description: No Content
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/nsilcm/v1/netslice_instances/{netsliceInstanceId}/instantiate':
+ parameters:
+ - name: netsliceInstanceId
+ in: path
+ required: true
+ description: NetSlice Instance ID
+ schema:
+ type : string
+ post:
+ tags:
+ - "NetSlice instances"
+ summary: Instantiate a NetSlice
+ description: |
+ Instantiate a NetSlice. The precondition is that the NetSlice instance
+ must have been created and must be in NOT_INSTANTIATED state. As a result
+ of the success of this operation, the NFVO creates a "NetSlice Lifecycle
+ Operation Occurrence" resource for the request, and the NS instance state
+ becomes INSTANTIATED.
+ operationId: instantiateNSI
+ requestBody:
+ $ref: '#/components/requestBodies/InstantiateNsiRequest'
+ responses:
+ '202':
+ description: Accepted
+ headers:
+ Location:
+ description: |
+ It must point to the new "NetSlice Lifecycle Operation Occurrence"
+ resource, i.e. an URI like ".../nsi_lcm_op_occs/{nsiLcmOpOccId}"
+ schema:
+ type: string
+ format: uri
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/nsilcm/v1/netslice_instances/{netsliceInstanceId}/terminate':
+ parameters:
+ - name: netsliceInstanceId
+ in: path
+ required: true
+ description: NetSlice Instance ID
+ schema:
+ type : string
+ post:
+ tags:
+ - "NetSlice instances"
+ summary: Terminate a NetSlice instance
+ description: |
+ Terminate a NetSlice instance. The precondition is that the NetSlice instance
+ must have been created and must be in INSTANTIATED state. As a result of the
+ success of this operation, the NFVO creates a "NetSlice Lifecycle Operation
+ Occurrence" resource for the request, and the NetSlice instance state becomes
+ NOT_INSTANTIATED.
+ operationId: terminateNSI
+ requestBody:
+ # Request data is not required
+ $ref: '#/components/requestBodies/TerminateNsiRequest'
+ responses:
+ '202':
+ description: Accepted
+ headers:
+ Location:
+ description: |
+ It must point to the new "NetSlice Lifecycle Operation Occurrence"
+ resource, i.e. an URI like ".../nsi_lcm_op_occs/{nsiLcmOpOccId}"
+ schema:
+ type: string
+ format: uri
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/nsilcm/v1/netslice_instances/{netsliceInstanceId}/action':
+ parameters:
+ - name: netsliceInstanceId
+ in: path
+ required: true
+ description: NetSlice Instance ID
+ schema:
+ type : string
+ post:
+ tags:
+ - "NetSlice instances"
+ summary: Execute an action on a NetSlice instance
+ description: |
+ Execute an action on a NetSlice instance.
+ The NetSlice instance must have been created and must be in INSTANTIATED state.
+ operationId: actionOnNSI
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/NsiActionRequest'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/NsiActionRequest'
+ responses:
+ '202':
+ description: Accepted
+ headers:
+ Location:
+ description: |
+ It must point to the new "NS Lifecycle Operation Occurrence"
+ resource, i.e. an URI like ".../ns_lcm_op_occs/{nsLcmOpOccId}"
+ schema:
+ type: string
+ format: uri
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/nsilcm/v1/netslice_instances_content':
+ get:
+ tags:
+ - "NetSlice instances"
+ summary: Query information about multiple NetSlice instances
+ description: Query information about multiple NetSlice isntances
+ operationId: getNSIsContent
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ArrayOfNetSliceInstance'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ArrayOfNetSliceInstance'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ post:
+ tags:
+ - "NetSlice instances"
+ summary: Create a new NetSlice instance
+ description: Create a new NetSlice instance
+ operationId: createNSIContent
+ requestBody:
+ $ref: '#/components/requestBodies/CreateNsiContentRequest'
+ responses:
+ '201':
+ description: Created
+ headers:
+ Location:
+ schema:
+ type: string
+ format: uri
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/CreateNsiContentResponse'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/CreateNsiContentResponse'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/nsilcm/v1/netslice_instances_content/{netsliceInstanceContentId}':
+ parameters:
+ - name: netsliceInstanceContentId
+ in: path
+ required: true
+ description: NetSlice Instance Content ID
+ schema:
+ type : string
+ get:
+ tags:
+ - "NetSlice instances"
+ summary: Read an individual NetSlice instance resource
+ description: Read an individual NetSlice instance resource
+ operationId: getNSIContent
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/NetSliceInstance'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/NetSliceInstance'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ delete:
+ tags:
+ - "NetSlice instances"
+ summary: Delete an individual NS instance resource
+ description: Delete an individual NS instance resource
+ operationId: deleteNSIContent
+ responses:
+ '202':
+ description: Accepted
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ '204':
+ description: No Content
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/nsilcm/v1/nsi_lcm_op_occs':
+ get:
+ tags:
+ - "NetSlice instances"
+ summary: Query information about multiple NetSlice LCM Operation Occurrences
+ description: Query information about multiple NetSlice LCM Operation Occurrences
+ operationId: getNsiLcmOpOccs
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ArrayOfNsiLcmOpOcc'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ArrayOfNsiLcmOpOcc'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/nsilcm/v1/nsi_lcm_op_occs/{nsiLcmOpOccId}':
+ parameters:
+ - name: nsiLcmOpOccId
+ in: path
+ required: true
+ description: NetSlice LCM Operation Occurrence ID
+ schema:
+ type : string
+ get:
+ tags:
+ - "NetSlice instances"
+ summary: Query information about an individual NetSlice LCM Operation Occurrence
+ description: Query information about an individual NetSlice LCM Operation Occurrence
+ operationId: getNsiLcmOpOcc
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/NsiLcmOpOcc'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/NsiLcmOpOcc'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+# END NetSlice Instances
+
+# BEGIN NSPM
+ # /nspm/v1/pm_jobs/{pmJobId}/reports/{reportId}
+# END NSPM
+
+# BEGIN PDU
+ # /pdu/v1/pdu_descriptors
+ # /pdu/v1/pdu_descriptors/{pduDescriptorId}
+# END PDU
+
+# BEGIN Admin
+ # /admin/v1/tokens
+ # /admin/v1/tokens/{tokenId}
+ # /admin/v1/users
+ # /admin/v1/users/{userId}
+ # /admin/v1/projects
+ # /admin/v1/projects/{projectId}
+ # /admin/v1/roles
+ # /admin/v1/roles/{roleId}
+ # /admin/v1/vims
+ # /admin/v1/vims/{vimId}
+ # /admin/v1/vim_accounts
+ # /admin/v1/vim_accounts/{vimAccountId}
+ # /admin/v1/wim_accounts
+ # /admin/v1/wim_accounts/{wimAccountId}
+ # /admin/v1/sdns
+ # /admin/v1/sdns/{sdnId}
+# END Admin
+
+externalDocs:
+ description: Find out more OSM
+ url: 'http://osm.etsi.org/wikipub'
+
+components:
+ responses:
BadRequest:
description: Bad request. The server cannot process the request due to a client error.
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
+ VnfDescriptor:
+ description: VNF Descriptor (plaintext)
+ content:
+ text/plain:
+ schema:
+ $ref: '#/components/schemas/VnfDescriptor'
+ VnfPackage:
+ description: VNF Package (compressed)
+ content:
+ application/zip:
+ schema:
+ $ref: '#/components/schemas/VnfPackage'
+ NsDescriptor:
+ description: NS Descriptor (plaintext)
+ content:
+ text/plain:
+ schema:
+ $ref: '#/components/schemas/NsDescriptor'
+ NsPackage:
+ description: NS Package (compressed)
+ content:
+ application/zip:
+ schema:
+ $ref: '#/components/schemas/NsPackage'
+ NetSliceTemplate:
+ description: NetSlice Template (plaintext)
+ content:
+ text/plain:
+ schema:
+ $ref: '#/components/schemas/NetSliceTemplate'
+ NetSlicePackage:
+ description: NetSlice Package (compressed)
+ content:
+ application/zip:
+ schema:
+ $ref: '#/components/schemas/NetSlicePackage'
+ # END RESPONSES
+
schemas:
+ ObjectId:
+ type: object
+ properties:
+ id:
+ type: string
+ format: uuid
+ KeyValuePairs:
+ # A free list of key:value pairs
+ type: object
+ additionalProperties: true
NsDescriptor:
type: string
+ format: yaml|json
NsPackage:
type: string
format: binary
- KeyValuePairs:
- type: object
- additionalProperties:
- type: string
CreateNsdInfoRequest:
+ # A free list of key:value pairs
+ type: object
+ additionalProperties: true
+ NsdInfoModifications:
+ description: |
+ NS Descriptor Information
+ Only generic fields (id, name, description) are described
+ For a full specification of the NS Descriptor see:
+ http://osm-download.etsi.org/ftp/osm-doc/nsd.html
type: object
properties:
- userDefinedData:
- $ref: '#/components/schemas/KeyValuePairs'
- NsdOnboardingStateType:
- type: string
- enum: [CREATED, UPLAODING, PROCESSING, ONBOARDED]
+ id:
+ description: NSD Identifier
+ type: string
+ name:
+ description: NSD Name
+ type: string
+ description:
+ description: NSD Description
+ type: string
+ nsd:
+ $ref: 'http://osm-download.etsi.org/ftp/osm-doc/nsd.html'
+ NsdInfo:
description: |
- NSD onboarding state:
- * `CREATED` - The NSD information object is created.
- * `UPLOADING` - The associated NSD content is being uploaded.
- * `PROCESSING` - The associated NSD content is being processed, e.g. validation.
- * `ONBOARDED` - The associated NSD content is on-boarded.
- NsdOperationalStateType:
+ NS Descriptor Information
+ Only generic fields (_id, id, name, description) are described
+ For a full specification of the NS Descriptor see:
+ http://osm-download.etsi.org/ftp/osm-doc/nsd.html
+ type: object
+ properties:
+ _id:
+ description: |
+ Identifier of the onboarded individual NS descriptor
+ resource. This identifier is allocated by the NFVO.
+ type: string
+ format: uuid
+ id:
+ description: |
+ This identifier, which is allocated by the NSD
+ designer, identifies the NSD in a globally unique
+ way. It is copied from the NSD content and shall be
+ present after the NSD content is on-boarded.
+ type: string
+ name:
+ description: |
+ Name of the onboarded NSD. This information is
+ copied from the NSD content and shall be present
+ after the NSD content is on-boarded.
+ type: string
+ description:
+ description: |
+ Description of the onboarded NSD.
+ This information is copied from the NSD content.
+ type: string
+ nsd:
+ $ref: 'http://osm-download.etsi.org/ftp/osm-doc/nsd.html'
+ required:
+ - _id
+ - id
+ ArrayOfNsdInfo:
+ type: array
+ items:
+ $ref: '#/components/schemas/NsdInfo'
+ ProblemDetails:
+ type: object
+ properties:
+ type:
+ type: string
+ format: uri
+ title:
+ type: string
+ status:
+ type: integer
+ detail:
+ type: string
+ instance:
+ type: string
+ format: uri
+ additionalProperties: true
+ required:
+ - status
+ - detail
+ VnfDescriptor:
type: string
- enum: [ENABLED, DISABLED]
- description: |
- NSD operational state:
- * `ENABLED` - The NSD is enabled.
- * `DISABLED` - The NSD is disabled.
- NsdUsageStateType:
+ format: yaml|json
+ VnfPackage:
type: string
- enum: [IN_USE, NOT_IN_USE]
+ format: binary
+ CreateVnfPkgInfoRequest:
+ # A free list of key:value pairs
+ type: object
+ additionalProperties: true
+ VnfPkgInfoModifications:
description: |
- NSD usage state:
- * `IN_USE` - The NSD is in use.
- * `NOT_IN_USE` - The NSD is not in use.
- NsdInfoModifications:
+ VNF Package Information
+ Only generic fields (id, name, description) are described
+ For a full specification of the VNF Descriptor see:
+ http://osm-download.etsi.org/ftp/osm-doc/vnfd.html
+ type: object
+ properties:
+ id:
+ description: VNF Package Identifier
+ type: string
+ name:
+ description: VNF Package Name
+ type: string
+ description:
+ description: VNF Package description
+ type: string
+ vnfd:
+ $ref: 'http://osm-download.etsi.org/ftp/osm-doc/vnfd.html'
+ VnfPkgInfo:
+ description: |
+ VNF Package Information
+ Only generic fields (_id, id, name, description) are described
+ For a full specification of the VNF Descriptor see:
+ http://osm-download.etsi.org/ftp/osm-doc/vnfd.html
+ type: object
+ properties:
+ _id:
+ description: |
+ Identifier of the VNF package. This identifier is allocated by the NFVO.
+ type: string
+ format: uuid
+ id:
+ description: VNF Package Identifier
+ type: string
+ name:
+ description: VNF Package Name
+ type: string
+ description:
+ description: VNF Package description
+ type: string
+ vnfd:
+ $ref: 'http://osm-download.etsi.org/ftp/osm-doc/vnfd.html'
+ required:
+ - _id
+ - id
+ ArrayOfVnfPkgInfo:
+ type: array
+ items:
+ $ref: '#/components/schemas/VnfPkgInfo'
+ CreateNsRequest:
+ type: object
+ properties:
+ nsdId:
+ description: |
+ Identifier of the NSD that defines the NS instance to be created.
+ type: string
+ format: uuid
+ nsName:
+ description: |
+ Human-readable name of the NS instance to be created.
+ type: string
+ nsDescription:
+ description: |
+ Human-readable description of the NS instance to be created.
+ type: string
+ vimAccountId:
+ description: |
+ Identifier of the VIM Account where the NS instance shall be created.
+ type: string
+ format: uuid
+ required:
+ - nsdId
+ - nsName
+ - vimAccountId
+ NsInstance:
+ description: |
+ NS Instance Information
+ Only generic fields (_id, id, name, description) are described
+ For a full specification of the NS Instance see:
+ http://osm-download.etsi.org/ftp/osm-doc/nsr.html
+ type: object
+ properties:
+ _id:
+ description: Identifier of the NS instance.
+ type: string
+ format: uuid
+ id:
+ description: Identifier of the NS instance.
+ type: string
+ format: uuid
+ name:
+ description: Human readable name of the NS instance.
+ type: string
+ description:
+ description: Human readable description of the NS instance.
+ type: string
+ nsr:
+ $ref: 'http://osm-download.etsi.org/ftp/osm-doc/nsr.html'
+ required:
+ - _id
+ - id
+ - name
+ InstantiateNsRequest:
+ type: object
+ properties:
+ nsName:
+ description: |
+ Human-readable name of the NS instance to be created.
+ type: string
+ nsdId:
+ description: |
+ Identifier of the NSD that defines the NS instance to be created.
+ type: string
+ format: uuid
+ vimAccountId:
+ description: |
+ Identifier of the VIM Account where the NS instance shall be created.
+ type: string
+ format: uuid
+ required:
+ - nsName
+ - nsdId
+ - vimAccountId
+ ScaleNsRequest:
type: object
properties:
- nsdOperationalState:
- $ref: '#/components/schemas/NsdOperationalStateType'
- userDefinedData:
- $ref: '#/components/schemas/KeyValuePairs'
- NsdInfo:
+ scaleType:
+ type: string
+ enum:
+ - SCALE_VNF
+ scaleVnfData:
+ type: object
+ properties:
+ scaleVnfType:
+ type: string
+ enum:
+ - SCALE_IN
+ - SCALE_OUT
+ scaleByStepData:
+ type: object
+ properties:
+ scaling-group-descriptor:
+ type: string
+ member-vnf-index:
+ type: string
+ additionalProperties: true
+ additionalProperties: true
+ additionalProperties: true
+ TerminateNsRequest:
type: object
properties:
- id:
+ terminationTime:
description: |
- Identifier of the onboarded individual NS descriptor
- resource. This identifier is allocated by the NFVO.
+ Timestamp indicating the end time of the NS, i.e. the NS will be terminated
+ automatically at this timestamp. Cardinality "0" indicates the NS termination
+ takes place immediately.
+ type: string
+ format: date-time
+ ArrayOfNsInstance:
+ type: array
+ items:
+ $ref: '#/components/schemas/NsInstance'
+ NSinstanceActionRequest:
+ type: object
+ properties:
+ primitive:
+ type: string
+ primitive_params:
+ $ref: '#/components/schemas/KeyValuePairs'
+ lcmOperationType:
+ type: string
+ nsInstanceId:
type: string
format: uuid
+ member_vnf_index:
+ type: string
+ vdu_id:
+ type: string
+ vdu_count_index:
+ type: integer
+ required:
+ - primitive
+ - primitive_params
+ additionalProperties: false
+ CreateNSinstanceContentRequest:
+ type: object
+ properties:
nsdId:
description: |
- This identifier, which is allocated by the NSD
- designer, identifies the NSD in a globally unique
- way. It is copied from the NSD content and shall be
- present after the NSD content is on-boarded.
+ Identifier of the NSD that defines the NS instance to be created.
type: string
format: uuid
- nsdName:
+ nsName:
description: |
- Name of the onboarded NSD. This information is
- copied from the NSD content and shall be present
- after the NSD content is on-boarded.
+ Human-readable name of the NS instance to be created.
type: string
- nsdVersion:
+ vimAccountId:
description: |
- Version of the on-boarded NSD. This information is
- copied from the NSD content and shall be present
- after the NSD content is on-boarded.
+ Identifier of the VIM Account where the NS instance shall be created.
type: string
- nsdDesigner:
- description: |
- Designer of the on-boarded NSD. This information is
- copied from the NSD content and shall be present
- after the NSD content is on-boarded.
+ format: uuid
+ required:
+ - nsdId
+ - nsName
+ - vimAccountId
+ CreateNSinstanceContentResponse:
+ type: object
+ properties:
+ id:
type: string
- nsdInvariantId:
- description: |
- This identifier, which is allocated by the NSD designer,
- identifies an NSD in a version independent manner. This
- information is copied from the NSD content and shall be
- present after the NSD content is on-boarded.
+ format: uuid
+ nslcmop_id:
type: string
format: uuid
- vnfPkgIds:
- description: |
- List of VNF package identifiers referenced by the on-boarded
- NS descriptor resource.
- type: array
- items:
- type: string
- format: uuid
- pnfdInfoIds:
- description: |
- List of PNFD identifiers referenced by the on-boarded NS
- descriptor resource.
- type: array
- items:
- type: string
- format: uuid
- nestedNsdInfoIds:
- description: |
- List of NSD identifiers referenced by the on-boarded NS
- descriptor resource.
- type: array
- items:
- type: string
- format: uuid
- nsdOnboardingState:
- description: |
- Onboarding state of the individual NS descriptor resource.
- $ref: '#components/schemas/NsdOnboardingStateType'
- onboardingFailureDetails:
- description: |
- Failure details of current onboarding procedure. It follows
- the "ProblemDetails" structure. It shall be present when the
- "nsdOnboardingState" attribute is CREATED and the uploading or
- processing fails in NFVO.
- $ref: '#/components/schemas/ProblemDetails'
- nsdOperationalState:
- description: |
- Operational state of the individual NS descriptor resource. This
- attribute can be modified with the PATCH method. If the value of
- the nsdOnboardingState attribute is not equal to "ONBOARDED", the
- value of the nsdOperationalState attribute shall be equal to
- "DISABLED".
- $ref: '#components/schemas/NsdOperationalStateType'
- nsdUsagestate:
- description: |
- Usage state of the individual NS descriptor resource. If the value
- of the nsdOnboardingState attribute is not equal to "ONBOARDED",
- the value of the nsdUsageState attribute shall be equal to
- "NOT_IN_USE".
- $ref: '#components/schemas/NsdUsageStateType'
- userDefinedData:
- $ref: '#/components/schemas/KeyValuePairs'
- _links:
- description: |
- Links to resources related to this resource
+ NsLcmOpOcc:
+ type: object
+ properties:
+ _id:
type: string
- self:
- description: |
- URI of this resource
+ format: uuid
+ id:
type: string
- format: uri
- nsd_content:
- description: |
- Link to the NSD content resource.
+ format: uuid
+ lcmOperationType:
type: string
- format: uri
- required:
- - id
- - nsdOnboardingState
- - nsdOperationalState
- - nsdUsageState
- - _links
- - self
- - nsd_content
- ArrayOfNsdInfo:
+ nsInstanceId:
+ type: string
+ format: uuid
+ isAutomaticInvocation:
+ type: boolean
+ isCancelPending:
+ type: boolean
+ startTime:
+ type: number
+ format: float
+ statusEnteredTime:
+ type: number
+ format: float
+ operationParams:
+ type: object
+ properties:
+ nsName:
+ type: string
+ nsdId:
+ type: string
+ format: uuid
+ vimAccountId:
+ type: string
+ format: uuid
+ nsInstanceId:
+ type: string
+ format: uuid
+ lcmOperationType:
+ type: string
+ operationState:
+ type: string
+ detailed-status:
+ type: string
+ links:
+ type: object
+ properties:
+ self:
+ type: string
+ format: path # uri?
+ nsInstance:
+ type: string
+ format: path # uri?
+ ArrayOfNsLcmOpOcc:
type: array
items:
- $ref: '#/components/schemas/NsdInfo'
- ProblemDetails:
+ $ref: '#/components/schemas/NsLcmOpOcc'
+ VnfInstanceInfo:
+ description: |
+ VNF Instance Information
+ Only generic fields (_id, id) are described
+ For a full specification of the VNF Instance see:
+ http://osm-download.etsi.org/ftp/osm-doc/vnfr.html
type: object
properties:
- type:
+ _id:
type: string
- format: uri
- title:
+ format: uuid
+ id:
type: string
- status:
- type: integer
- detail:
+ format: uuid
+ vnfr:
+ $ref: 'http://osm-download.etsi.org/ftp/osm-doc/vnfr.html'
+ ArrayOfVnfInstanceInfo:
+ type: array
+ items:
+ $ref: '#/components/schemas/VnfInstanceInfo'
+ NstInfo:
+ description: |
+ NetSlice Template Information
+ Only generic fields (_id, id, name) are described
+ For a full specification of the NetSlice Template see:
+ http://osm-download.etsi.org/ftp/osm-doc/nst.html
+ type: object
+ properties:
+ _id:
+ description: NetSlice Template Identifier
type: string
- instance:
+ format: uuid
+ id:
+ description: Human readable NetSlice Template Identifier
type: string
- format: uri
+ name:
+ description: Human readable name of the NetSlice Template
+ type: string
+ nst:
+ $ref: 'http://osm-download.etsi.org/ftp/osm-doc/nst.html'
+ ArrayOfNstInfo:
+ type: array
+ items:
+ $ref: '#/components/schemas/NstInfo'
+ CreateNstInfoRequest:
+ # A free list of key:value pairs
+ type: object
additionalProperties: true
- required:
- - status
- - detail
- VnfDescriptor:
+ NetSliceTemplate:
type: string
- VnfPackage:
+ format: yaml|json
+ NetSlicePackage:
type: string
format: binary
- CreateVnfPkgInfoRequest:
- type: object
- properties:
- userDefinedData:
- $ref: '#/components/schemas/KeyValuePairs'
- VnfPackageOnboardingStateType:
- type: string
- enum: [CREATED, UPLAODING, PROCESSING, ONBOARDED]
- description: |
- VNF Package onboarding state:
- * `CREATED` - The VNF Package information object is created.
- * `UPLOADING` - The VNF Package is being uploaded.
- * `PROCESSING` - The VNF Package is being processed, e.g. validation.
- * `ONBOARDED` - The VNF Package is successfully on-boarded.
- VnfPackageOperationalStateType:
- type: string
- enum: [ENABLED, DISABLED]
+ NstInfoModifications:
description: |
- VNF Package operational state:
- * `ENABLED` - The VNF Package is enabled.
- * `DISABLED` - The VNF Package is disabled.
- VnfPackageUsageStateType:
- type: string
- enum: [IN_USE, NOT_IN_USE]
- description: |
- VNF Package usage state:
- * `IN_USE` - The VNF Package is in use.
- * `NOT_IN_USE` - The VNF Package is not in use.
- #SoftwareImageFormatType:
- # type: string
- # enum: [AKI, AMI, ARI, BARE, DOCKER, OVA, OVF]
- # description: |
- # Software image format. Permitted values:
- # * `AKI`: a kernel image format
- # * `AMI`: a machine image format
- # * `ARI`: a ramdisk image format
- # * `BARE`: the image does not have a container or metadata envelope
- # * `DOCKER`: docker container format
- # * `OVA`: OVF package in a tarfile
- # * `OVF`: OVF container format
- VnfPackageSoftwareImageInfo:
- type: object
- additionalProperties: true
- #properties:
- #id:
- # description: |
- # Identifier of the software image, unique in the scope of a VNFD.
- # type: string
- #name:
- # description: |
- # Name of the software image.
- # type: string
- #provider:
- # description: |
- # Provider of the software image.
- # type: string
- #version:
- # description: |
- # Version of the software image.
- # type: string
- #checksum:
- # description: |
- # Checksum of the software image file.
- # type: string
- #containerFormat:
- # description: |
- # Container format indicates whether the software image is in a
- # file format that also contains metadata about the actual
- # software.
- # $ref: '#/components/schemas/SoftwareImageFormatType'
- #diskFormat:
- # description: |
- # Disk format of a software image is the format of the underlying
- # disk image.
- # $ref: '#/components/schemas/DiskFormatType'
- # ...
- VnfPackageArtifactInfo:
- type: object
- additionalProperties: true
- VnfPkgInfoModifications:
+ NetSlice Template Information
+ Only generic fields (id, name) are described
+ For a full specification of the NetSlice Template see:
+ http://osm-download.etsi.org/ftp/osm-doc/nst.html
type: object
properties:
- operationalState:
- $ref: '#/components/schemas/VnfPackageOperationalStateType'
- userDefinedData:
- $ref: '#/components/schemas/KeyValuePairs'
- VnfPkgInfo:
+ id:
+ description: NST Identifier
+ type: string
+ name:
+ description: NST Name
+ type: string
+ nsd:
+ $ref: 'http://osm-download.etsi.org/ftp/osm-doc/nst.html'
+ NetSliceInstance:
+ description: |
+ NetSlice Instance Information
+ Only generic fields (_id, id, name, description) are described
+ For a full specification of the NetSlice Instance see:
+ http://osm-download.etsi.org/ftp/osm-doc/nsi.html
type: object
properties:
+ _id:
+ description: Identifier of the NetSlice instance.
+ type: string
+ format: uuid
id:
- description: |
- Identifier of the VNF package. This identifier is allocated by the NFVO.
+ description: Identifier of the NetSlice instance.
type: string
format: uuid
- vnfdId:
+ name:
+ description: Human readable name of the NetSlice instance.
+ type: string
+ description:
+ description: Human readable description of the NetSlice instance.
+ type: string
+ nsi:
+ $ref: 'http://osm-download.etsi.org/ftp/osm-doc/nsi.html'
+ required:
+ - _id
+ - id
+ - name
+ ArrayOfNetSliceInstance:
+ type: array
+ items:
+ $ref: '#/components/schemas/NetSliceInstance'
+ CreateNsiRequest:
+ type: object
+ properties:
+ nstId:
description: |
- This identifier, which is managed by the VNF provider, identifies
- the VNF package and the VNFD in a globally unique way. It's
- copied from the VNFD of the on-boarded VNF package. It shall be
- present after the VNF package content has been on-boarded and
- absent otherwise.
+ Identifier of the NST that defines the NetSlice instance to be created.
type: string
format: uuid
- vnfProvider:
+ nsiName:
description: |
- Deovider of the VNF pacakge and the VNFD. This information is
- copied from the VNFD. It shall be present after the VNF package
- content has been on-boarded and absent otherwise.
+ Human-readable name of the NetSlice instance to be created.
type: string
- vnfProductName:
+ nsiDescription:
description: |
- Name to identify the VNF product. Invariant for the VNF product
- ligetime. This information is copied from the VNFD. It shall be
- present after the VNF package content has been on-boarded and
- absent otherwise.
+ Human-readable description of the NetSlice instance to be created.
type: string
- vnfSoftwareVersion:
+ vimAccountId:
description: |
- Software version of the VNF. This is changed when there is any
- change to the software included in the VNF package. This
- information is copied from the VNFD. It shall be present after the
- VNF package content has been on-boarded and absent otherwise.
+ Identifier of the VIM Account where the NetSlice instance shall be created.
type: string
- vnfdVersion:
+ format: uuid
+ required:
+ - nstId
+ - nsiName
+ - vimAccountId
+ InstantiateNsiRequest:
+ type: object
+ properties:
+ nsiName:
description: |
- The version of the VNFD. TSof information is copied from the VNFD.
- It shall be present after the VNF package content has been
- on-boarded and absent otherwise.
+ Human-readable name of the NetSlice instance to be created.
type: string
- checksum:
+ nstId:
description: |
- Checksum of the on-boarded VNF package. It shall be present after
- the VNF package content has been on-boarded and absent otherwise.
+ Identifier of the NST that defines the NetSlice instance to be created.
type: string
- softwareImages:
- description: |
- Information about VNF package artifacts that are software images.
- This attribute shall not be present before the VNF package content
- is on-boarded. Otherwise, this attribute shall be present unless
- it has been requested to be excluded per attribute selector.
- type: array
- items:
- $ref: '#/components/schemas/VnfPackageSoftwareImageInfo'
- additionalArtifacts:
- description: |
- Information about VNF package artifacts contained in the VNF
- package that are not software images. This attribute shall not be
- present before the VNF package content is on-boarded. Otherwise,
- this attribute shall be present if the VNF package contains
- additional artifacts.
- type: array
- items:
- $ref: '#/components/schemas/VnfPackageArtifactInfo'
- onboardingState:
- description: |
- On-boarding state of the VNF package.
- $ref: '#components/schemas/VnfPackageOnboardingStateType'
- operationalState:
- description: |
- Operational state of the VNF package. If the value of the
- onboardingState attribute is not equal to "ONBOARDED", the value
- of the operationalState attribute shall be equal to "DISABLED".
- $ref: '#components/schemas/VnfPackageOperationalStateType'
- usageState:
- description: |
- Usage state of the VNF package. If the value of the
- onboardingState attribute is not equal to "ONBOARDED", the value
- of the usageState attribute shall be equal to "NOT_IN_USE".
- $ref: '#components/schemas/VnfPackageUsageStateType'
- userDefinedData:
- description: |
- User defined data for the VNF package
- $ref: '#/components/schemas/KeyValuePairs'
- _links:
+ format: uuid
+ vimAccountId:
description: |
- Links to resources related to this resource
+ Identifier of the VIM Account where the NetSlice instance shall be created.
type: string
- self:
+ format: uuid
+ required:
+ - nsiName
+ - nstId
+ - vimAccountId
+ TerminateNsiRequest:
+ type: object
+ properties:
+ terminationTime:
description: |
- URI of this resource
+ Timestamp indicating the end time of the NSI, i.e. the NSI will be terminated
+ automatically at this timestamp. Cardinality "0" indicates the NSI termination
+ takes place immediately.
type: string
- format: uri
- vnfd:
- description: |
- Link to the VNFD resource. This link shall be present after the VNF
- package content is on-boarded.
+ format: date-time
+ NsiActionRequest:
+ type: object
+ properties:
+ primitive:
type: string
- format: uri
- package_content:
- description: |
- Link to the "VNF package content" resource.
+ primitive_params:
+ $ref: '#/components/schemas/KeyValuePairs'
+ lcmOperationType:
type: string
- format: uri
+ netsliceInstanceId:
+ type: string
+ format: uuid
required:
- - id
- - onboardingState
- - operationalState
- - usageState
- - _links
- - self
- - package_content
- ArrayOfVnfPkgInfo:
- type: array
- items:
- $ref: '#/components/schemas/VnfPkgInfo'
- UploadVnfPackageFromUriRequest:
+ - primitive
+ - primitive_params
+ CreateNsiContentRequest:
type: object
properties:
- addressInformation:
+ nstId:
description: |
- Address information of the VNF package content. The NFVO can use
- this address to obtain the VNF package.
+ Identifier of the NST that defines the NetSlice instance to be created.
type: string
- format: uri
- userName:
+ format: uuid
+ nsiName:
description: |
- User name to be used for authentication. Shall be present if user
- name is needed but has not been provisioned out of band.
+ Human-readable name of the NetSlice instance to be created.
type: string
- password:
+ vimAccountId:
description: |
- Password to be used for authentication. Shall be present if password
- is needed but has not been provisioned out of band.
+ Identifier of the VIM Account where the NetSlice instance shall be created.
type: string
+ format: uuid
required:
- - addressInformation
+ - nsdId
+ - nsName
+ - vimAccountId
+ CreateNsiContentResponse:
+ type: object
+ properties:
+ id:
+ type: string
+ format: uuid
+ nsilcmop_id:
+ type: string
+ format: uuid
+ NsiLcmOpOcc:
+ type: object
+ properties:
+ _id:
+ type: string
+ format: uuid
+ id:
+ type: string
+ format: uuid
+ lcmOperationType:
+ type: string
+ netsliceInstanceId:
+ type: string
+ format: uuid
+ isAutomaticInvocation:
+ type: boolean
+ isCancelPending:
+ type: boolean
+ startTime:
+ type: number
+ format: float
+ statusEnteredTime:
+ type: number
+ format: float
+ operationParams:
+ type: object
+ properties:
+ nsiName:
+ type: string
+ nstId:
+ type: string
+ format: uuid
+ vimAccountId:
+ type: string
+ format: uuid
+ netsliceInstanceId:
+ type: string
+ format: uuid
+ lcmOperationType:
+ type: string
+ nslcmops_ids:
+ type: array
+ items:
+ type: string
+ format: uuid
+ operationState:
+ type: string
+ detailed-status:
+ type: string
+ links:
+ type: object
+ properties:
+ self:
+ type: string
+ format: path # uri?
+ netsliceInstanceId:
+ type: string
+ format: path # uri?
+ ArrayOfNsiLcmOpOcc:
+ type: array
+ items:
+ $ref: '#/components/schemas/NsiLcmOpOcc'
+ # END SCHEMAS
+
requestBodies:
CreateNsdInfoRequest:
content:
application/yaml:
schema:
$ref: '#/components/schemas/NsdInfoModifications'
- NsdContent:
+ NsDescriptor:
content:
text/plain:
schema:
$ref: '#/components/schemas/NsDescriptor'
+ NsPackage:
+ content:
application/zip:
schema:
$ref: '#/components/schemas/NsPackage'
application/zip:
schema:
$ref: '#/components/schemas/VnfPackage'
- UploadVnfPackageFromUriRequest:
+ VnfDescriptor:
+ content:
+ text/plain:
+ schema:
+ $ref: '#/components/schemas/VnfDescriptor'
+ CreateNsRequest:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/CreateNsRequest'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/CreateNsRequest'
+ InstantiateNsRequest:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/InstantiateNsRequest'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/InstantiateNsRequest'
+ ScaleNsRequest:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ScaleNsRequest'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ScaleNsRequest'
+ TerminateNsRequest:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/TerminateNsRequest'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/TerminateNsRequest'
+ CreateNSinstanceContentRequest:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/CreateNSinstanceContentRequest'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/CreateNSinstanceContentRequest'
+ CreateNstInfoRequest:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/CreateNstInfoRequest'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/CreateNstInfoRequest'
+ NetSliceTemplate:
+ content:
+ text/plain:
+ schema:
+ $ref: '#/components/schemas/NetSliceTemplate'
+ NetSlicePackage:
+ content:
+ application/zip:
+ schema:
+ $ref: '#/components/schemas/NetSlicePackage'
+ NstInfoModifications:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/NstInfoModifications'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/NstInfoModifications'
+ CreateNsiRequest:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/CreateNsiRequest'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/CreateNsiRequest'
+ InstantiateNsiRequest:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/InstantiateNsiRequest'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/InstantiateNsiRequest'
+ TerminateNsiRequest:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/TerminateNsiRequest'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/TerminateNsiRequest'
+ NsiActionRequest:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/NsiActionRequest'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/NsiActionRequest'
+ CreateNsiContentRequest:
content:
application/json:
schema:
- $ref: '#/components/schemas/UploadVnfPackageFromUriRequest'
+ $ref: '#/components/schemas/CreateNsiContentRequest'
application/yaml:
schema:
- $ref: '#/components/schemas/UploadVnfPackageFromUriRequest'
+ $ref: '#/components/schemas/CreateNsiContentRequest'
+ # END REQUEST BODIES
+
securitySchemes:
bearerAuth:
type: http
scheme: bearer
-