+++ /dev/null
-openapi: 3.0.2
-
-info:
- title: OSM VNFM NB API featuring ETSI NFV SOL003
- description: >
- This is Open Source MANO Northbound API featuring ETSI GS NFV-SOL 003 V3.3.1
- version: "1.0.0"
- contact:
- email: OSM_TECH@list.etsi.org
- license:
- name: Apache 2.0
- url: 'http://www.apache.org/licenses/LICENSE-2.0.html'
+++ /dev/null
-openapi: 3.0.2
-
-info:
- title: SOL003 - VNF Lifecycle Management interface
- description: |
- SOL003 - VNF Lifecycle Management interface
- version: "1.0.0"
- contact:
- email: OSM_TECH@list.etsi.org
- license:
- name: Apache 2.0
- url: 'http://www.apache.org/licenses/LICENSE-2.0.html'
-
-tags:
- - name: VNF Instances
- description: Operations related to VNF instances
-
-servers:
- - url: http://127.0.0.1/vnflcm/v1
- - url: https://127.0.0.1/vnflcm/v1
-
-paths:
- /vnf_instances:
- parameters:
- - $ref: ../components/SOL003_params.yaml#/components/parameters/Accept
- - $ref: ../components/SOL003_params.yaml#/components/parameters/Authorization
- - $ref: ../components/SOL003_params.yaml#/components/parameters/Version
- get:
- tags:
- - VNF Instances
- summary: Query information about multiple VNF instances
- description: The GET method queries information about multiple VNF instances.
- responses:
- 200:
- $ref: '#/components/responses/VNFInstances.Get.200'
- 400:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/400'
- 401:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/401'
- 403:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/403'
- 404:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/404'
- 405:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/405'
- 406:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/406'
- 409:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/409'
- 422:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/422'
- 500:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/500'
- 503:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/503'
- 5XX:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/UnexpectedError'
- default:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/UnexpectedError'
- post:
- tags:
- - VNF Instances
- summary: Create a new VNF instance resource
- description: |
- The POST method creates a new VNF instance resource based on a VNF package that is onboarded
- and in "ENABLED" state.
- requestBody:
- $ref: './definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/CreateVnfRequest'
- responses:
- 201:
- $ref: '#/components/responses/VNFInstances.Post.201'
- 400:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/400'
- 401:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/401'
- 403:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/403'
- 404:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/404'
- 405:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/405'
- 406:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/406'
- 409:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/409'
- 422:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/422'
- 500:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/500'
- 503:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/503'
- 5XX:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/UnexpectedError'
- default:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/UnexpectedError'
-
- /vnf_instances/{vnfInstanceId}:
- parameters:
- - $ref: '#/components/parameters/VnfInstanceId'
- - $ref: ../components/SOL003_params.yaml#/components/parameters/Authorization
- - $ref: ../components/SOL003_params.yaml#/components/parameters/Version
- get:
- tags:
- - VNF Instances
- summary: Read an individual VNF instance resource
- description: |
- The GET method retrieves information about a VNF instance by reading an "Individual VNF instance" resource.
- responses:
- 200:
- $ref: '#/components/responses/IndividualVnfInstance.Get.200'
- 400:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/400'
- 401:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/401'
- 403:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/403'
- 404:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/404'
- 405:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/405'
- 406:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/406'
- 409:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/409'
- 422:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/422'
- 500:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/500'
- 503:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/503'
- 5XX:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/UnexpectedError'
- default:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/UnexpectedError'
- delete:
- tags:
- - VNF Instances
- summary: Delete an individual VNF instance resource
- description: This method deletes an "Individual VNF instance" resource.
- responses:
- 204:
- description: No Content
- 400:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/400'
- 401:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/401'
- 403:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/403'
- 404:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/404'
- 405:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/405'
- 406:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/406'
- 409:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/409'
- 422:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/422'
- 500:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/500'
- 503:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/503'
- 5XX:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/UnexpectedError'
- default:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/UnexpectedError'
-
- /vnf_instances/{vnfInstanceId}/instantiate:
- parameters:
- - $ref: '#/components/parameters/VnfInstanceId'
- post:
- tags:
- - VNF Instances
- summary: Instantiate a VNF
- description: |
- The POST method instantiates a VNF instance. The precondition is that the VNF instance
- must have been created and must be in NOT_INSTANTIATED state.
- parameters:
- - $ref: ../components/SOL003_params.yaml#/components/parameters/Accept
- - $ref: ../components/SOL003_params.yaml#/components/parameters/Authorization
- - $ref: ../components/SOL003_params.yaml#/components/parameters/Version
- requestBody:
- $ref: './definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/InstantiateVnfRequest'
- responses:
- 202:
- $ref: '#/components/responses/InstantiateVnfInstance.Post.202'
- 400:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/400'
- 401:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/401'
- 403:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/403'
- 404:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/404'
- 405:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/405'
- 406:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/406'
- 409:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/409'
- 422:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/422'
- 500:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/500'
- 503:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/503'
- 5XX:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/UnexpectedError'
- default:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/UnexpectedError'
-
- /vnf_instances/{vnfInstanceId}/scale:
- parameters:
- - $ref: '#/components/parameters/VnfInstanceId'
- post:
- tags:
- - VNF Instances
- summary: Scale a VNF instance
- description: |
- The POST method requests to scale a VNF instance resource. The precondition is that the VNF instance
- must have been created and must be in INSTANTIATED state.
- parameters:
- - $ref: ../components/SOL003_params.yaml#/components/parameters/Accept
- - $ref: ../components/SOL003_params.yaml#/components/parameters/Authorization
- - $ref: ../components/SOL003_params.yaml#/components/parameters/Version
- requestBody:
- $ref: './definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/ScaleVnfRequest'
- responses:
- 202:
- $ref: '#/components/responses/ScaleVnfInstance.Post.202'
- 400:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/400'
- 401:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/401'
- 403:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/403'
- 404:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/404'
- 405:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/405'
- 406:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/406'
- 409:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/409'
- 422:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/422'
- 500:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/500'
- 503:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/503'
- 5XX:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/UnexpectedError'
- default:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/UnexpectedError'
-
- /vnf_instances/{vnfInstanceId}/terminate:
- parameters:
- - $ref: '#/components/parameters/VnfInstanceId'
- post:
- tags:
- - VNF Instances
- summary: Terminate a VNF instance
- description: |
- The POST method requests to terminate a VNF instance. The precondition is that the VNF
- instance must have been created and must be in INSTANTIATED state.
- parameters:
- - $ref: ../components/SOL003_params.yaml#/components/parameters/Accept
- - $ref: ../components/SOL003_params.yaml#/components/parameters/Authorization
- - $ref: ../components/SOL003_params.yaml#/components/parameters/Version
- requestBody:
- $ref: './definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/TerminateVnfRequest'
- responses:
- 202:
- $ref: '#/components/responses/TerminateVnfInstance.Post.202'
- 400:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/400'
- 401:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/401'
- 403:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/403'
- 404:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/404'
- 405:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/405'
- 406:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/406'
- 409:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/409'
- 422:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/422'
- 500:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/500'
- 503:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/503'
- 5XX:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/UnexpectedError'
- default:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/UnexpectedError'
-
- /vnf_lcm_op_occs:
- get:
- tags:
- - VNF Instances
- summary: Query information about multiple VNF LCM Operation Occurrences
- description: Query information about multiple VNF LCM Operation Occurrences
- responses:
- 200:
- $ref: '#/components/responses/VnfLcmOpOccs.Get.200'
- 400:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/400'
- 401:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/401'
- 403:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/403'
- 404:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/404'
- 405:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/405'
- 406:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/406'
- 409:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/409'
- 422:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/422'
- 500:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/500'
- 503:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/503'
- 5XX:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/UnexpectedError'
- default:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/UnexpectedError'
-
- /vnf_lcm_op_occs/{vnfLcmOpOccId}:
- parameters:
- - $ref: '#/components/parameters/VnfLcmOpOccId'
- get:
- tags:
- - VNF Instances
- summary: Query information about an individual VNF LCM Operation Occurrence
- description: Query information about an individual VNF LCM Operation Occurrence
- responses:
- 200:
- $ref: '#/components/responses/IndividualVnfLcmOpOcc.Get.200'
- 400:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/400'
- 401:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/401'
- 403:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/403'
- 404:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/404'
- 405:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/405'
- 406:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/406'
- 409:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/409'
- 422:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/422'
- 500:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/500'
- 503:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/503'
- 5XX:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/UnexpectedError'
- default:
- $ref: '../responses/SOL003_resp.yaml#/components/responses/UnexpectedError'
-
-components:
- parameters:
- VnfInstanceId:
- name: vnfInstanceId
- in: path
- required: true
- description: Identifier of the VNF instance
- schema:
- type: string
- VnfLcmOpOccId:
- name: vnfLcmOpOccId
- in: path
- required: true
- description: |
- Identifier of the VNF lifecycle management operation occurrence
- schema:
- type: string
-
- responses:
- VNFInstances.Get.200:
- description: OK
- content:
- application/json:
- schema:
- $ref: './definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/ArrayOfVnfInstance'
- application/yaml:
- schema:
- $ref: './definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/ArrayOfVnfInstance'
- VNFInstances.Post.201:
- description: Created
- headers:
- Location:
- schema:
- type: string
- format: uri
- content:
- application/json:
- schema:
- $ref: './definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/ObjectId'
- application/yaml:
- schema:
- $ref: './definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/ObjectId'
- IndividualVnfInstance.Get.200:
- description: OK
- content:
- application/json:
- schema:
- $ref: './definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfInstance'
- application/yaml:
- schema:
- $ref: './definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfInstance'
- InstantiateVnfInstance.Post.202:
- description: Accepted
- headers:
- Location:
- schema:
- type: string
- format: uri
- content:
- application/json:
- schema:
- $ref: './definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/ObjectId'
- application/yaml:
- schema:
- $ref: './definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/ObjectId'
- ScaleVnfInstance.Post.202:
- description: Accepted
- headers:
- Location:
- schema:
- type: string
- format: uri
- content:
- application/json:
- schema:
- $ref: './definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/ObjectId'
- application/yaml:
- schema:
- $ref: './definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/ObjectId'
- TerminateVnfInstance.Post.202:
- description: Accepted
- headers:
- Location:
- schema:
- type: string
- format: uri
- content:
- application/json:
- schema:
- $ref: './definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/ObjectId'
- application/yaml:
- schema:
- $ref: './definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/ObjectId'
- VnfLcmOpOccs.Get.200:
- description: OK
- content:
- application/json:
- schema:
- $ref: './definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/ArrayOfVnfLcmOpOcc'
- application/yaml:
- schema:
- $ref: './definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/ArrayOfVnfLcmOpOcc'
- IndividualVnfLcmOpOcc.Get.200:
- description: OK
- content:
- application/json:
- schema:
- $ref: './definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfLcmOpOcc'
- application/yaml:
- schema:
- $ref: './definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfLcmOpOcc'
+++ /dev/null
-definitions:
- ObjectId:
- type: object
- properties:
- id:
- type: string
- format: uuid
- VnfInstance:
- description: VNF Instance Information
- type: object
- properties:
- id:
- description: Identifier of the VNF instance.
- type: string
- format: uuid
- name:
- description: Human readable name of the VNF instance.
- type: string
- description:
- description: Human readable description of the VNF instance.
- type: string
- required:
- - id
- - name
- ArrayOfVnfInstance:
- type: array
- items:
- $ref: '#/definitions/VnfInstance'
- CreateVnfRequest:
- type: object
- properties:
- vnfdId:
- description: Identifier of the VNFD that defines the VNF instance to be created.
- type: string
- vnfInstanceName:
- description: Human-readable name of the VNF instance to be created.
- type: string
- vnfInstanceDescription:
- type: string
- nullable: true
- vimAccountId:
- description: >-
- Identifier of the VIM Account where the VNF instance shall be
- created.
- type: string
- format: uuid
- additionalParams:
- type: object
- properties:
- virtual-link-desc:
- type: array
- items:
- type: object
- properties:
- id:
- type: string
- mgmt-network:
- type: boolean
- constituent-cpd-id:
- type: string
- virtual-link-profile-id:
- type: string
- required:
- - vnfdId
- - vnfInstanceName
- - vimAccountId
- additionalProperties: false
- InstantiateVnfRequest:
- type: object
- properties:
- vnfId:
- description: Identifier of the VNFD
- type: string
- vnfName:
- description: Human-readable name of the VNF instance
- type: string
- vnfDescription:
- type: string
- nullable: true
- vimAccountId:
- description: >-
- Identifier of the VIM Account where the VNF instance shall be
- created.
- type: string
- format: uuid
- required:
- - vnfId
- - vnfName
- - vimAccountId
- additionalProperties: false
- ScaleVnfRequest:
- type: object
- properties:
- type:
- description: >
- Indicates the type of the scale operation requested.
- Permitted values:
- * SCALE_OUT: adding additional VNFC instances to the VNF to increase
- capacity
- * SCALE_IN: removing VNFC instances from the VNF in order to release
- unused capacity.
- type: string
- enum:
- - SCALE_OUT
- - SCALE_IN
- aspectId:
- description: >
- Identifier of the scaling aspect.
- type: string
- numberOfSteps:
- description: >
- Number of scaling steps to be executed as part of this Scale VNF
- operation. It shall be a positive number and the default value
- shall be 1.
- type: integer
- default: 1
- additionalParams:
- type: object
- properties:
- member-vnf-index:
- type: string
- required:
- - member-vnf-index
- required:
- - type
- - aspectId
- - numberOfSteps
- additionalProperties: false
- TerminateVnfRequest:
- type: object
- properties:
- terminationType:
- type: string
- enum:
- - GRACEFUL
- - FORCEFUL
- gracefulTerminationTimeout:
- type: integer
- additionalProperties: false
- VnfLcmOpOcc:
- type: object
- properties:
- _id:
- type: string
- format: uuid
- id:
- type: string
- format: uuid
- lcmOperationType:
- type: string
- vnfInstanceId:
- type: string
- format: uuid
- isAutomaticInvocation:
- type: boolean
- isCancelPending:
- type: boolean
- startTime:
- type: number
- format: float
- statusEnteredTime:
- type: number
- format: float
- operationState:
- type: string
- detailed-status:
- type: string
- _links:
- type: object
- properties:
- self:
- type: string
- format: path
- vnfInstance:
- type: string
- format: path
- ArrayOfVnfLcmOpOcc:
- type: array
- items:
- $ref: '#/definitions/VnfLcmOpOcc'
\ No newline at end of file
+++ /dev/null
-components:
- parameters:
- Version:
- name: Version
- description: >
- Version of the API requested to use when responding to this request.
- in: header
- required: true
- schema:
- type: string
-
- Accept:
- name: Accept
- description: >
- Content-Types that are acceptable for the response. Reference: IETF RFC 7231.
- in: header
- required: true
- schema:
- type: string
-
- Authorization:
- name: Authorization
- description: >
- The authorization token for the request. Reference: IETF RFC 7235.
- in: header
- required: false
- schema:
- type: string
-
- ContentType:
- name: Content-Type
- description: |
- The MIME type of the body of the request. Reference: IETF RFC 7231
- in: header
- required: true
- schema:
- type: string
-
- filter:
- name: filter
- description: >
- Attribute-based filtering expression according to clause 5.2 of ETSI
- GS NFV-SOL 013. The VNFM shall support
- receiving this parameter as part of the URI query string. The API
- consumer may supply this parameter. All attribute names that appear
- in the FmSubscription and in data types referenced from it shall be
- supported by the NFV-MANO functional entity in the filter
- expression.
- in: query
- required: false
- schema:
- type: string
-
- all_fields:
- name: all_fields
- description: >
- Include all complex attributes in the response. See clause
- 5.3 of ETSI GS NFV-SOL 013. The NFV-MANO functional entity
- shall support this parameter.
- in: query
- required: false
- schema:
- type: string
-
- fields:
- name: fields
- description: >
- Complex attributes to be included into the response. See clause
- 5.3 of ETSI GS NFV-SOL 013 for details. The NFV-MANO functional
- entity should support this parameter.
- in: query
- required: false
- schema:
- type: string
-
- exclude_fields:
- name: exclude_fields
- description: >
- Complex attributes to be excluded from the response. See clause
- 5.3 of ETSI GS NFV-SOL 013 for details. The NFV-MANO functional
- entity should support this parameter.
- in: query
- required: false
- schema:
- type: string
-
- exclude_default:
- name: exclude_default
- in: query
- description: >-
- Indicates to exclude the following complex attributes from the response. See clause 5.3 of ETSI GS NFV-SOL 013
- for details. The VNFM shall support this parameter.
- The following attributes shall be excluded from the VnfLcmOpOcc structure in the response
- body if this parameter is provided, or none of the parameters "all_fields," "fields",
- "exclude_fields", "exclude_default" are provided:
- - operationParams
- - error
- - resourceChanges
- - changedInfo
- - changedExtConnectivity
- - lcmCoordinations
- - modificationsTriggeredByVnfPkgChange
- - warnings
- required: false
- schema:
- type: string
-
- nextpage_opaque_marker:
- name: nextpage_opaque_marker
- description: >
- Marker to obtain the next page of a paged response. Shall be supported by
- the VNFM if the entity supports alternative 2 (paging)
- according to clause 5.4.2.1 of ETSI GS NFV-SOL 013 for this resource.
- in: query
- required: false
- schema:
- type: string
+++ /dev/null
-definitions:\r
- ProblemDetails:\r
- type: object\r
- properties:\r
- type:\r
- type: string\r
- format: uri\r
- title:\r
- type: string\r
- status:\r
- type: integer\r
- detail:\r
- type: string\r
- instance:\r
- type: string\r
- format: uri\r
- additionalProperties: true\r
- required:\r
- - status\r
- - detail
\ No newline at end of file
+++ /dev/null
-components:
- responses:
- 204:
- description: >
- 204 No Content
- headers:
- Content-Type:
- description: >
- The MIME type of the body of the response.
- schema:
- type: string
- maximum: 1
- minimum: 1
- Content-Range:
- description: >
- The Content-Range response HTTP header indicates where in a full body message a partial message belongs.
- schema:
- type: string
- maximum: 1
- minimum: 1
-
- 206:
- description: >
- 206 PARTIAL CONTENT
- headers:
- Content-Type:
- description: >
- The MIME type of the body of the response.
- schema:
- type: string
- maximum: 1
- minimum: 1
- Content-Range:
- description: >
- The Content-Range response HTTP header indicates where in a full body message a partial message belongs.
- schema:
- type: string
- maximum: 1
- minimum: 1
- content:
- application/json:
- schema:
- $ref: "../definitions/SOL003_def.yaml#/definitions/ProblemDetails"
-
- 303:
- description: >
- 303 See Other
- headers:
- Content-Type:
- description: The MIME type of the body of the response.
- schema:
- type: string
- maximum: 1
- minimum: 1
-
- 400:
- description: >
- 400 BAD REQUEST
-
- 400 code can be returned in the following specified cases, the specific cause has to be proper specified in the
- "ProblemDetails" structure to be returned.
-
- If the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect
- query parameters or the payload body contains a syntactically incorrect data structure),
- the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided,
- and should include in the "detail" attribute more information about the source of the problem.
-
- If the response to a GET request which queries a container resource would be so big that the performance
- of the API producer is adversely affected, and the API producer does not support paging for the affected resource,
- it shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include
- in the "detail" attribute more information about the source of the problem.
-
- If there is an application error related to the client's input that cannot be easily mapped to any other
- HTTP response code ("catch all error"), the API producer shall respond with this response code.
- The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information
- about the source of the problem.
-
- If the request contains a malformed access token, the API producer should respond with this response.
- The details of the error shall be returned in the WWW Authenticate HTTP header, as defined in IETF RFC 6750
- and IETF RFC 7235. The ProblemDetails structure may be provided.
-
- The use of this HTTP error response code described above is applicable to the use of the OAuth 2.0
- for the authorization of API requests and notifications, as defined in clauses 4.5.3.3 and 4.5.3.4.
- headers:
- Content-Type:
- description: The MIME type of the body of the response.
- schema:
- type: string
- maximum: 1
- minimum: 1
- content:
- application/json:
- schema:
- $ref: "../definitions/SOL003_def.yaml#/definitions/ProblemDetails"
-
- 401:
- description: >
- 401 UNAUTHORIZED
-
- If the request contains no access token even though one is required, or if the request contains an authorization
- token that is invalid (e.g. expired or revoked), the API producer should respond with this response.
- The details of the error shall be returned in the WWW-Authenticate HTTP header, as defined in IETF RFC 6750
- and IETF RFC 7235. The ProblemDetails structure may be provided.
- headers:
- Content-Type:
- description: The MIME type of the body of the response.
- schema:
- type: string
- maximum: 1
- minimum: 1
- content:
- application/json:
- schema:
- $ref: "../definitions/SOL003_def.yaml#/definitions/ProblemDetails"
-
- 403:
- description: >
- 403 FORBIDDEN
-
- If the API consumer is not allowed to perform a particular request to a particular resource,
- the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided.
- It should include in the "detail" attribute information about the source of the problem,
- and may indicate how to solve it.
- headers:
- Content-Type:
- description: The MIME type of the body of the response.
- schema:
- type: string
- maximum: 1
- minimum: 1
- content:
- application/json:
- schema:
- $ref: "../definitions/SOL003_def.yaml#/definitions/ProblemDetails"
-
- 404:
- description: >
- 404 NOT FOUND
-
- If the API producer did not find a current representation for the resource addressed by the URI passed
- in the request or is not willing to disclose that one exists, it shall respond with this response code.
- The "ProblemDetails" structure may be provided, including in the "detail" attribute information about
- the source of the problem, e.g. a wrong resource URI variable.
-
- This response code is not appropriate in case the resource addressed by the URI is a container resource
- which is designed to contain child resources, but does not contain any child resource at the time
- the request is received. For a GET request to an existing empty container resource, a typical response
- contains a 200 OK response code and a payload body with an empty array.
- headers:
- Content-Type:
- description: The MIME type of the body of the response.
- schema:
- type: string
- maximum: 1
- minimum: 1
- content:
- application/json:
- schema:
- $ref: "../definitions/SOL003_def.yaml#/definitions/ProblemDetails"
-
- 405:
- description: >
- 405 METHOD NOT ALLOWED
-
- If a particular HTTP method is not supported for a particular resource, the API producer shall respond
- with this response code. The "ProblemDetails" structure may be omitted.
- headers:
- Content-Type:
- description: The MIME type of the body of the response.
- schema:
- type: string
- maximum: 1
- minimum: 1
- content:
- application/json:
- schema:
- $ref: "../definitions/SOL003_def.yaml#/definitions/ProblemDetails"
-
- 406:
- description: >
- 406 NOT ACCEPTABLE
-
- If the "Accept" HTTP header does not contain at least one name of a content type
- that is acceptable to the API producer, the API producer shall respond with this
- response code. The "ProblemDetails" structure may be omitted.
- headers:
- Content-Type:
- description: The MIME type of the body of the response.
- schema:
- type: string
- maximum: 1
- minimum: 1
- content:
- application/json:
- schema:
- $ref: "../definitions/SOL003_def.yaml#/definitions/ProblemDetails"
-
- 409:
- description: >
- 409 CONFLICT
- headers:
- Content-Type:
- description: The MIME type of the body of the response.
- schema:
- type: string
- maximum: 1
- minimum: 1
- content:
- application/json:
- schema:
- $ref: "../definitions/SOL003_def.yaml#/definitions/ProblemDetails"
-
- 412:
- description: >
- 412 PRECONDITION FAILED
-
- Error: A precondition given in an HTTP request header is not fulfilled.
- Typically, this is due to an ETag mismatch, indicating that the resource was modified by another entity.
- The response body should contain a ProblemDetails structure, in which the "detail" attribute should convey
- more information about the error.
- headers:
- Content-Type:
- description: The MIME type of the body of the response.
- schema:
- type: string
- maximum: 1
- minimum: 1
- content:
- application/json:
- schema:
- $ref: "../definitions/SOL003_def.yaml#/definitions/ProblemDetails"
-
- 413:
- description: >
- 413 PAYLOAD TOO LARGE
-
- If the payload body of a request is larger than the amount of data the API producer is willing or able to process,
- it shall respond with this response code, following the provisions in IETF RFC 7231 for the use
- of the "Retry-After" HTTP header and for closing the connection. The "ProblemDetails" structure may be omitted.
- headers:
- Content-Type:
- description: The MIME type of the body of the response.
- schema:
- type: string
- maximum: 1
- minimum: 1
- content:
- application/json:
- schema:
- $ref: "../definitions/SOL003_def.yaml#/definitions/ProblemDetails"
-
- 414:
- description: >
- 414 URI TOO LONG
-
- If the request URI of a request is longer than the API producer is willing or able to process,
- it shall respond with this response code. This condition can e.g. be caused by passing long queries
- in the request URI of a GET request. The "ProblemDetails" structure may be omitted.
- headers:
- Content-Type:
- description: The MIME type of the body of the response.
- schema:
- type: string
- maximum: 1
- minimum: 1
- content:
- application/json:
- schema:
- $ref: "../definitions/SOL003_def.yaml#/definitions/ProblemDetails"
-
- 416:
- description: >
- 416 Range Not Satisfiable
- headers:
- Content-Type:
- description: The MIME type of the body of the response.
- schema:
- type: string
- maximum: 1
- minimum: 1
- content:
- application/json:
- schema:
- $ref: "../definitions/SOL003_def.yaml#/definitions/ProblemDetails"
-
- 422:
- description: >
- 422 UNPROCESSABLE ENTITY
-
- If the payload body of a request contains syntactically correct data (e.g. well-formed JSON) but the data
- cannot be processed (e.g. because it fails validation against a schema), the API producer shall respond
- with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail"
- attribute more information about the source of the problem.
-
- This error response code is only applicable for methods that have a request body.
- headers:
- Content-Type:
- description: The MIME type of the body of the response.
- schema:
- type: string
- maximum: 1
- minimum: 1
- content:
- application/json:
- schema:
- $ref: "../definitions/SOL003_def.yaml#/definitions/ProblemDetails"
-
- 429:
- description: >
- 429 TOO MANY REQUESTS
-
- If the API consumer has sent too many requests in a defined period of time and the API producer is able
- to detect that condition ("rate limiting"), the API producer shall respond with this response code,
- following the provisions in IETF RFC 6585 [17] for the use of the "Retry-After" HTTP header.
- The "ProblemDetails" structure shall be provided and shall include in the "detail" attribute more information
- about the source of the problem.
-
- The period of time and allowed number of requests are configured within the API producer by means
- outside the scope of the present document.
- headers:
- Content-Type:
- description: The MIME type of the body of the response.
- schema:
- type: string
- maximum: 1
- minimum: 1
- content:
- application/json:
- schema:
- $ref: "../definitions/SOL003_def.yaml#/definitions/ProblemDetails"
-
- 500:
- description: >
- 500 INTERNAL SERVER ERROR
-
- If there is an application error not related to the client's input that cannot be easily mapped to any other
- HTTP response code ("catch all error"), the API producer shall respond with this response code.
- The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information
- about the source of the problem.
- headers:
- Content-Type:
- description: The MIME type of the body of the response.
- schema:
- type: string
- maximum: 1
- minimum: 1
- content:
- application/json:
- schema:
- $ref: "../definitions/SOL003_def.yaml#/definitions/ProblemDetails"
-
- 503:
- description: >
- 503 SERVICE UNAVAILABLE
-
- If the API producer encounters an internal overload situation of itself or of a system it relies on,
- it should respond with this response code, following the provisions in IETF RFC 7231 for the use of
- the "Retry-After" HTTP header and for the alternative to refuse the connection. The "ProblemDetails"
- structure may be omitted.
- headers:
- Content-Type:
- description: The MIME type of the body of the response.
- schema:
- type: string
- maximum: 1
- minimum: 1
- content:
- application/json:
- schema:
- $ref: "../definitions/SOL003_def.yaml#/definitions/ProblemDetails"
-
- 504:
- description: >
- 504 GATEWAY TIMEOUT
-
- If the API producer encounters a timeout while waiting for a response from an upstream server
- (i.e. a server that the API producer communicates with when fulfilling a request), it should respond
- with this response code.
- headers:
- Content-Type:
- description: The MIME type of the body of the response.
- schema:
- type: string
- maximum: 1
- minimum: 1
- content:
- application/json:
- schema:
- $ref: "../definitions/SOL003_def.yaml#/definitions/ProblemDetails"
-
- UnexpectedError:
- description: Unexpected error.
- content:
- application/json:
- schema:
- $ref: "../definitions/SOL003_def.yaml#/definitions/ProblemDetails"